Командная строка 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
nelaaro
источник
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

Если вы хотите сменить прокси-сервер для программ с графическим интерфейсом, вы можете добиться успеха, если они используют «системные» настройки прокси-сервера из 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
Greg
источник
3
export http_proxy=

Вы можете проверить, ушли ли они, запустив

echo $http_proxy

Должен вернуть пустую строку

Андрей М.
источник
1

Если все вышеперечисленное не работает:

  1. Зайдите в настройки системы.
  2. Перейти в сеть.
  3. Перейдите к network-proxy и, даже если выбран вариант «none», перейдите к «manual» и удалите все сохраненные прокси.
  4. Применять в масштабе всей системы.

Это сработало для меня!

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

Чтобы отключить все прокси-переменные в одной строке для текущего сеанса:

unset `env | grep proxy | cut -d= -f1`
aruuu
источник
0

Вы можете удалить все {http_proxy, https_proxy} и т. Д. Из / etc / environment. просто sudo gedit / etc / environment, а затем вручную удалите все прокси и сохраните.

Ранджит Кумар Упадхяй
источник