Hướng dẫn cấu hình Proxy trên Ubuntu & Debian Linux
Cập nhật:
Trên hệ điều hành Ubuntu và Debian Linux, mỗi thành phần đọc cấu hình proxy từ một nơi riêng biệt: cửa sổ dòng lệnh đọc /etc/profile.d/ hoặc ~/.bashrc, trình cài đặt gói APT đọc /etc/apt/apt.conf.d/, còn các dịch vụ chạy nền đọc cấu hình systemd. Bài viết này cung cấp đầy đủ lệnh cấu hình chuẩn cho máy chủ và máy trạm Ubuntu với proxy HTTP(S) VinaProxy.
export http_proxy=http://user:pass@ip:port https_proxy=http://user:pass@ip:port- 1 IP40.000 ₫
- 5+ IP35.000 ₫
- 10+ IP25.000 ₫
- 20+ IP25.000 ₫
- 50+ IP25.000 ₫
- 100+ IP25.000 ₫
- 200+ IP25.000 ₫
- 500+ IP25.000 ₫
- 1000+ IP22.000 ₫
- 2000+ IP20.000 ₫
- 1 IP40.000 ₫
- 5+ IP35.000 ₫
- 10+ IP25.000 ₫
- 20+ IP25.000 ₫
- 50+ IP25.000 ₫
- 100+ IP25.000 ₫
- 200+ IP25.000 ₫
- 500+ IP25.000 ₫
- 1000+ IP22.000 ₫
- 2000+ IP20.000 ₫
Các phạm vi cấu hình Proxy trên Ubuntu Linux
Lệnh sudo mặc định sẽ xóa biến môi trường của user hiện tại, và các dịch vụ systemd không đọc file ~/.bashrc. Hãy tham khảo bảng dưới đây để cấu hình đúng vị trí:
| Thành phần Ubuntu | File cấu hình | Áp dụng cho | Phạm vi hiệu lực |
|---|---|---|---|
| Shell & CLI | /etc/profile.d/proxy.sh hoặc ~/.bashrc | curl, wget, python, git, node | Mọi phiên đăng nhập SSH/Terminal |
| Biến PAM toàn hệ thống | /etc/environment | Toàn bộ phiên người dùng | Giữ nguyên sau khi reboot |
| Trình quản lý gói APT | /etc/apt/apt.conf.d/80proxy | sudo apt update & apt install | Cố định riêng cho APT |
| Dịch vụ nền systemd | /etc/systemd/system/<svc>.service.d/proxy.conf | Docker daemon, ứng dụng chạy ngầm | Sau khi chạy daemon-reload |
Các bước cài đặt Proxy trên Ubuntu
bash
# 1. Cấu hình cho Shell & công cụ dòng lệnh (/etc/profile.d/proxy.sh)
sudo tee /etc/profile.d/proxy.sh > /dev/null << 'EOF'
export http_proxy="http://USER:PASS@IP:PORT"
export https_proxy="http://USER:PASS@IP:PORT"
export HTTP_PROXY="http://USER:PASS@IP:PORT"
export HTTPS_PROXY="http://USER:PASS@IP:PORT"
export no_proxy="localhost,127.0.0.1,::1,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16"
export NO_PROXY="$no_proxy"
EOF
source /etc/profile.d/proxy.sh
# 2. Cấu hình cho APT (/etc/apt/apt.conf.d/80proxy)
sudo tee /etc/apt/apt.conf.d/80proxy > /dev/null << 'EOF'
Acquire::http::Proxy "http://USER:PASS@IP:PORT/";
Acquire::https::Proxy "http://USER:PASS@IP:PORT/";
EOF
Lưu ý về quyền sudo và bảo mật thông tin Proxy
- Khi chạy lệnh kèm
sudo(ví dụsudo pip installhoặcsudo curl), hãy thêm cờsudo -Eđể giữ nguyên biến môi trường proxy của user hiện tại. - Trên VPS dùng chung nhiều người dùng, hãy giới hạn quyền đọc file cấu hình nhạy cảm bằng lệnh
sudo chmod 600 /etc/apt/apt.conf.d/80proxy.
Các bước thực hiện
- 1
Tạo file biến môi trường cho Shell (/etc/profile.d/proxy.sh)
Khai báo đồng thời cả biến chữ thường (http_proxy, https_proxy, no_proxy) và chữ hoa (HTTP_PROXY, HTTPS_PROXY, NO_PROXY) để tương thích với mọi công cụ Linux.
- 2
Cấu hình Proxy riêng cho trình quản lý gói APT
Tạo file /etc/apt/apt.conf.d/80proxy chứa chỉ thị Acquire::http::Proxy và Acquire::https::Proxy để lệnh sudo apt update đi qua proxy.
- 3
Nạp cấu hình và kiểm tra kết nối bằng curl
Chạy
source /etc/profile.d/proxy.shsau đó kiểm tra IP đầu ra bằng lệnhcurl -s https://api.ipify.org.
Câu hỏi thường gặp
Tại sao trên Linux phải khai báo cả chữ thường `http_proxy` lẫn chữ hoa `HTTP_PROXY`?
Một số công cụ (như curl, wget) ưu tiên đọc biến chữ thường http_proxy, trong khi các thư viện khác chỉ đọc biến chữ hoa HTTP_PROXY. Khai báo cả hai giúp mọi phần mềm nhận diện đồng nhất.
Tại sao tôi đã export `http_proxy` nhưng chạy `sudo apt update` vẫn không qua proxy?
Lệnh sudo mặc định xóa các biến môi trường của user vì lý do bảo mật. Tạo file /etc/apt/apt.conf.d/80proxy hoặc dùng sudo -E apt update sẽ giải quyết triệt để vấn đề này.
Làm sao tắt nhanh proxy trong phiên Terminal hiện tại?
Chạy lệnh unset http_proxy https_proxy HTTP_PROXY HTTPS_PROXY để quay về kết nối mạng trực tiếp ngay lập tức.
Mua proxy HTTP(S) tốc độ cao cho Ubuntu
Kích hoạt tự động trong vài giây tại 7 quốc gia, hỗ trợ IPv4 riêng & Static ISP.
Xem Bảng Giá Proxy