Skonfigurowałem serwer proxy na komputerze Mac poprzez System Preferences -> Network -> Advanced -> Proxies
.Jak ustawić proxy za pomocą powłoki bash?
Czy można to zrobić programowo przez powłokę Bash?
Skonfigurowałem serwer proxy na komputerze Mac poprzez System Preferences -> Network -> Advanced -> Proxies
.Jak ustawić proxy za pomocą powłoki bash?
Czy można to zrobić programowo przez powłokę Bash?
Tak, używając polecenie networksetup
. Istnieją osobne opcje ustawiania różnych typów serwerów proxy (np. -setwebproxy
, -setsocksfirewallproxy
, itp.) I musisz znać nazwę głównej usługi sieciowej (np. Ethernet, Airport ... w zasadzie nazwy wymienione na pasku bocznym okienka preferencji sieci). Oto przykład:
sudo networksetup -setwebproxy "Ethernet" myproxy.example.com 8000
Jeśli chcesz dowiedzieć się nazwę usługi, należy networksetup -listnetworkserviceorder
lub networksetup -listallnetworkservices
, a następnie przeanalizować listę, aby uzyskać nazwę usługi, której chcesz.
Można umieścić to w swoim .profile
lub .bash_profile
lub uruchomić ręcznie w wierszu polecenia:
export http_proxy=http://proxy.server.com:@aproxy:portnumber
export https_proxy=https://proxy.server.com:@aproxy:portnumber
To także wspólne Nie używaj proxy dla połączeń lokalnych
export no_proxy=localhost,127.0.0.0/8,*.local
Używam tego skryptu do proxy za pośrednictwem mojego serwera ssh (nie serwera proxy).
#!/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
Zmień 000.000.000.000
IP własnym serwerze i 00000
do własnego portu i powinien być w stanie używać go z własnego serwera ssh. Możesz zapisać ten skrypt w swoim katalogu domowym o nazwie proxy
.
Uruchom go za pomocą ./proxy
(wpisz hasło), użyj CTRL+C
, aby zatrzymać tunelowanie.
Uruchom ponownie i zatrzymaj się pod numerem CTRL+C
, jeśli zapomniałeś przerwać tunelowanie, a następnego dnia zastanawiasz się, dlaczego twoje połączenie internetowe nie działa.
Jeśli pojawi się pęknięta rura, po prostu ponownie uruchom ./proxy
.
Dzięki! Właśnie tego szukałem. –