Командний рядок Linux для відключення проксі


22

Чи можете ви показати мені командний рядок для відключення проксі, коли я використовую термінал командного рядка в Ubuntu?


де вам потрібно його відключити? Наскільки я знаю, налаштування проксі залежить від програми.
Diskilla

Відповіді:


27

Як говорить інша відповідь, є деякі програми, які взагалі не дивляться на систему, можливо, доведеться їх встановлювати окремо. Наприклад, wget має ряд опцій проксі, які можна використовувати для ігнорування або адаптації конфігурації проксі-середовища під час виконання. Ось низка областей, в яких можна встановити проксі-системи.

  • Як виглядає моя система, зауважте, що вам доведеться змінити задану конфігурацію системи для вашого мережного середовища.

Деякі системи Linux використовують / etc / environment

$ cat /etc/environment 
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
http_proxy="http://192.168.1.250:8080/"
ftp_proxy="ftp://192.168.1.250:8080/"
https_proxy="https://192.168.1.250:8080/"  

Не існує єдиного єдиного налаштування env

$ env | grep -i proxy
NO_PROXY=localhost,127.0.0.0/8,127.0.1.1
http_proxy=http://192.168.1.250:8080/
FTP_PROXY=ftp://192.168.1.250:8080/
ftp_proxy=ftp://192.168.1.250:8080/
all_proxy=socks://192.168.1.250:8080/
ALL_PROXY=socks://192.168.1.250:8080/
HTTPS_PROXY=https://192.168.1.250:8080/
https_proxy=https://192.168.1.250:8080/
no_proxy=localhost,127.0.0.0/8,127.0.1.1
HTTP_PROXY=http://192.168.1.250:8080/  

Я б перевірив, що ~ / .bashrc автоматично встановлює налаштування при запуску системи.

$ man env
$ man set
$ # The file section near the end of the bash manual.
$ man bash 

FILES
       /bin/bash
              The bash executable
       /etc/profile
              The systemwide initialization file, executed for login shells
       /etc/bash.bashrc
              The systemwide per-interactive-shell startup file
       /etc/bash.bash.logout
              The systemwide login shell cleanup file, executed when  a  login
              shell exits
       ~/.bash_profile
              The personal initialization file, executed for login shells
       ~/.bashrc
              The individual per-interactive-shell startup file
       ~/.bash_logout
              The  individual  login shell cleanup file, executed when a login
              shell exits
       ~/.inputrc
              Individual readline initialization file

16

Припустимо, що ви говорите про типове програмне забезпечення командного рядка та проксі-сервер HTTP:

Більшість інструментів командного рядка вибирають це із змінної середовища HTTP_PROXY, тому перед запуском команди:

unset HTTP_PROXY

Між програмним забезпеченням / платформами може бути певна різниця, і вам може знадобитися unset http_proxyтакож.

Зауважте, що багато програм зберігають цю інформацію у власних конфігураційних файлах і, ймовірно, ігнорують середовище, тому вам доведеться звертатися до них у кожному конкретному випадку.


Здається, потрібно перезавантажити ...?
Ян Кінг Інь,

5

Ви можете встановити або зняти всі змінні відразу в bash:

$ export {http,https,ftp}_proxy="http://proxy-server:port"
$ unset {http,https,ftp}_proxy

$ export {HTTP,HTTPS,FTP}_PROXY="http://proxy-server:port"
$ unset {HTTP,HTTPS,FTP}_PROXY

Ви також можете додати ярлик ~/.bashrc:

# Set Proxy
function setproxy() {
    export {http,https,ftp}_proxy="http://proxy-server:port"
    export {HTTP,HTTPS,FTP}_PROXY="http://proxy-server:port"
}

# Unset Proxy
function unsetproxy() {
    unset {http,https,ftp}_proxy
    unset {HTTP,HTTPS,FTP}_PROXY
}

Не забудьте перезавантажити .bashrc:

$ . ~/.bashrc

або

$ source ~/.bashrc

Більше деталей у [S] hell Hacks .


Це гарна відповідь, але я боюся, що в системі є більше місць, коли потрібно змінити параметри проксі: askubuntu.com/questions/664777/… .
matandked

Кожне програмне забезпечення може використовувати власні настройки проксі-сервера (наприклад, npm або apt, щоб назвати їх декілька). Отже http_proxy охоплює більшість із них, але вам потрібно перевірити документацію, щоб переконатися, яку саме вона використовує.
Адріано П

3

Якщо ви хочете змінити проксі для програм GUI, ви можете мати певний успіх, якщо вони використовують "системні" параметри проксі від Gnome. Це налаштування проксі, які можна встановити на панелі керування.

Ви можете переглянути, а потім змінити поточні налаштування за допомогою gconftool:

$ gconftool-2 -a /system/http_proxy
  ignore_hosts = [localhost,127.0.0.0/8,*.local]
  authentication_user =
  authentication_password =
  use_authentication = false
  use_http_proxy = true
  port = 8080
  host = http://myproxy.mydomain.org/

Щоб вимкнути проксі, встановіть use_http_proxy на false:

$ gconftool-2 -t bool -s /system/http_proxy/use_http_proxy false

Ви можете перевірити результати, використовуючи -aрядок зверху. Крім того, щоб встановити новий проксі:

$ gconftool-2 -t string -s /system/http_proxy/host "http://newproxy.mydomain.org/"
$ gconftool-2 -t int -s /system/http_proxy/port 8088

3
export http_proxy=

Ви можете перевірити, чи не пішли вони бігом

echo $http_proxy

Він повинен повернути порожній рядок


1

Якщо все, що написано вище, не працює:

  1. Перейдіть у Налаштування системи.
  2. Перейдіть до мережі.
  3. Перейдіть до мережевого проксі, і навіть якщо вибраний вибір "жоден", перейдіть до "вручну" та видаліть усі збережені проксі.
  4. Застосовувати в усьому світі.

Це працювало для мене!


1
ОП запитував спеціально для параметра командного рядка. Вони, можливо, не встановили GUI
Бургі

1

Щоб вимкнути всі змінні проксі в одному рядку для вашого поточного сеансу:

unset `env | grep proxy | cut -d= -f1`

0

Ви можете видалити всі {http_proxy, https_proxy} тощо з / etc / environment. просто sudo gedit / etc / environment, а потім видаліть усі ці проксі-сервери вручну та збережіть.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.