Tôi thiết lập proxy trên máy Mac qua System Preferences -> Network -> Advanced -> Proxies
.Cách thiết lập proxy qua bash shell?
Có thể thực hiện cùng một chương trình thông qua bash shell không?
Tôi thiết lập proxy trên máy Mac qua System Preferences -> Network -> Advanced -> Proxies
.Cách thiết lập proxy qua bash shell?
Có thể thực hiện cùng một chương trình thông qua bash shell không?
Vâng, sử dụng lệnh networksetup
. Có các tùy chọn riêng biệt để đặt các loại proxy khác nhau (ví dụ: -setwebproxy
, -setsocksfirewallproxy
, v.v.) và bạn cần biết tên của mạng chính "dịch vụ" (ví dụ: Ethernet, Airport ... về cơ bản, các tên được liệt kê trong thanh bên của ngăn Tuỳ chọn mạng). Dưới đây là một ví dụ:
sudo networksetup -setwebproxy "Ethernet" myproxy.example.com 8000
Nếu bạn cần phải tìm ra tên dịch vụ, sử dụng networksetup -listnetworkserviceorder
hoặc networksetup -listallnetworkservices
, sau đó phân tích danh sách để có được tên của dịch vụ mà bạn muốn.
Bạn có thể đặt điều này trong .profile
hoặc .bash_profile
của bạn hoặc chạy bằng tay trên một dòng lệnh:
export http_proxy=http://proxy.server.com:@aproxy:portnumber
export https_proxy=https://proxy.server.com:@aproxy:portnumber
Nó cũng phổ biến không sử dụng proxy cho các kết nối địa phương
export no_proxy=localhost,127.0.0.0/8,*.local
Tôi sử dụng tập lệnh này để proxy thông qua máy chủ ssh của mình (không phải proxy web).
#!/bin/bash
disable_proxy(){
sudo networksetup -setsocksfirewallproxystate Wi-Fi off
sudo networksetup -setsocksfirewallproxystate Ethernet off
echo "SOCKS proxy disabled."
}
trap disable_proxy INT
sudo networksetup -setsocksfirewallproxy Wi-Fi 127.0.0.1 9999
sudo networksetup -setsocksfirewallproxy Ethernet 127.0.0.1 9999
sudo networksetup -setsocksfirewallproxystate Wi-Fi on
sudo networksetup -setsocksfirewallproxystate Ethernet on
echo "SOCKS proxy enabled."
echo "Tunneling..."
ssh -ND 9999 000.000.000.000 -p 00000
Thay đổi 000.000.000.000
sang IP máy chủ của riêng bạn và 00000
đến cảng riêng của bạn và bạn sẽ có thể tái sử dụng nó với máy chủ ssh của riêng bạn. Bạn có thể lưu tập lệnh này trong thư mục chính có tên là proxy
.
Bắt đầu bằng ./proxy
(nhập mật khẩu của bạn), sử dụng CTRL+C
để dừng đường hầm.
Bắt đầu lại và dừng lại với CTRL+C
nếu bạn quên dừng đường hầm và ngày hôm sau bạn đang tự hỏi tại sao kết nối internet của bạn bị hỏng.
Nếu bạn nhận được một đường ống bị hỏng, chỉ cần bắt đầu lại ./proxy
.
Cảm ơn! Đó chính xác là những gì tôi đang tìm kiếm. –