Proxy file in linux

Configure proxy for APT?

I need to configure proxy. There wasn’t apt.conf file in /etc/apt/ so I’ve created it using nano . But I don’t understand what I need to write there. I’ve written http_proxy = http://lgn:pwd@192.168.1.254:8080/ there and then restarted networking . But when I try to apt-get update — it doesn’t work. Actually, I don’t understand what port and IP I should write in apt.conf file (there was example with 192.168.1.254 IP and 8080 port, so I decided to use them).

There is a change in proxy settings to get work in corporate proxy in ubuntu visit github.com/navinas33/docker_ubuntu.git it works.

7 Answers 7

To use a proxy, you need a proxy server. The IP and port have to be from this proxy server. Login and pwd must be your user and password on the proxy server (if the proxy requires login).

APT configuration file method

This method uses the apt.conf file which is found in your /etc/apt/ directory. This method is useful if you only want apt-get (and not other applications) to use a http-proxy permanently.

On some installations there will be no apt-conf file set up. Edit apt-conf file (or create a new one if you have no one yet) using the editor of your choice.

Add this line to your /etc/apt/apt.conf file (substitute your details for yourproxyaddress and proxyport).

Acquire::http::Proxy "http://yourproxyaddress:proxyport"; 

If your proxy needs a login/password, substitute:

"http://yourproxyaddress:proxyport"; 
"http://username:password@yourproxyaddress:proxyport"; 

using username and password from the proxy server.

Источник

Настройка proxy в Linux через терминал

linux-logo

В этой статье поговорим о том, как можно настроить прокси в системе Linux через терминал.

Проще всего для использования прокси в командной строке, определить переменные окружения http_proxy, https_proxy, socks_proxy или ftp_proxy.

Практически все утилиты командной строки, такие как curl, ssh, ftp и прочие, используют данные переменные.

Рассмотрим настройку переменных для использования прокси

Используйте следующий синтаксис для настройки таких типов трафика как http, https, socks и ftp из командной строки:

export ftp_proxy="http://proxy-server:port" export http_proxy="http://proxy-server:port" export https_proxy="https://proxy-server:port" export socks_proxy="socks://proxy-server:port"

Используйте следующий синтаксис, если прокси-сервер требует аутентификацию:

export ftp_proxy="ftp://user:password@proxy-server:port" export http_proxy="http://user:password@proxy-server:port" export https_proxy="https://user:password@proxy-server:port" export socks_proxy="socks://user:password@proxy-server:port"

Если Ваш пароль содержит спец. символы, Вы должны заменить их на ASCII коды.

Читайте также:  Linux find file in all folders

Например символ собаки @, должен быть заменен на «%40».

Настроить прокси на системном уровне можно и через конфигурационные файлы (True UNIX-way). Для этого нужно открыть на редактирования с правами root файл /etc/environment

В конец файла добавим строки:

https_proxy="https://user:pass@proxy:port/" http_proxy="http://user:pass@proxy:port/" ftp_proxy="ftp://user:pass@proxy:port/" socks_proxy="socks://user:pass@proxy:port/"

Если прокси без авторизации, то строки должны быть вида:

ftp_proxy="http://proxy-server:port" http_proxy="http://proxy-server:port" https_proxy="https://proxy-server:port" socks_proxy="socks://proxy-server:port"

Для применения настроек придется перезагрузит систему, изменения в файле /etc/environment вступили в силу при запуске процесса init – родителя всех процессов в системе и именно от него все дочерние процессы унаследуют настройки прокси в переменных окружения.

Тестирование работы

Используйте следующую команду для проверки текущих переменных прокси:

Можно проверить работу прокси, узнав ваш внешний IP адрес из командной строки:

Отключение

Используйте следующие команды для отключения прокси:

unset http_proxy unset https_proxy unset ftp_proxy

Упрощенное использование прокси

Если у Вас один и тот же прокси-сервер для http, https и ftp трафика, Вы можете использовать следующие команды для включения и отключения прокси:

export _proxy="http://proxy-server:port"
unset _proxy

Если Вам приходится очень часто пользоваться прокси, Вы можете создать следующие bash функции (добавьте в Ваш ~/.bashrc) :

# Включить прокси function setproxy() < export _proxy="http://proxy-server:port" > # Выключить прокси function unsetproxy() < unset _proxy >

Примените настройки, перезагрузив ~/.bashrc.

Теперь, для включения и отключения прокси можно использовать команды setproxy и unsetproxy.

Как правила глобальной настройки прокси достаточно для того что бы все остальные приложения работали через прокси без необходимости настраивать прокси внутри приложения. Однако некоторые приложения не умеют работать с глобальными настройками или им нужны особенные настройки.

Прокси для команды apt

В новых версиях умеет работать с глобальными настройками, но в более старых мог работать только с персональными настройками. Для внесения нашего прокси открываем файл:

В нем указываем наш прокси и выключаем данную настройку последней строчкой:

Acquire::http::proxy "http://proxy-server:port/"; Acquire::https::proxy "https://proxy-server:port/"; Acquire::ftp::proxy "ftp://proxy-server:port/"; Acquire::socks::proxy "socks://proxy-server:port/"; Acquire. Proxy "true";

Если сервер с авторизацией, то необходимо добавить логин:пароль@ по аналогии с предыдущими примерами.

Прокси для команды wget

И в конце дописываем необходимый прокси:

proxy-user = username proxy-password = password http_proxy = http://xxx.xxx.xxx.xxx:8080/ ftp_proxy = http://xxx.xxx.xxx.xxx:8080/ use_proxy = on

Если прокси без авторизации, то proxy-user и proxy-password нужно убрать

Настройка proxy в Ubuntu

Все настройки среды рабочего стола в Ubuntu хранятся в базе данных DConf, в том числе и настройки прокси сервера. Настройки записываются в виде пар ключ значение. Если изменить какой либо параметр из меню настроек системы все изменения сразу же запишутся в DConf. Из командной строки настройками DConf можно управлять с помощью команд gsettings и dconf. Дальше я покажу как настроить прокси в Ubuntu из терминала с помощью gsettings.

Читайте также:  Mysql installation on linux

Базовое использование gsettings для работы с базой данных Dconf выглядит следующим образом. Для чтения данных используем:

gsettings set org.gnome.system.proxy.http host 'http://proxy-server' gsettings set org.gnome.system.proxy.http port 8080 gsettings set org.gnome.system.proxy mode 'manual'

Если вы хотите использовать HTTPS прокси то вам нужно выполнить:

gsettings set org.gnome.system.proxy.https host 'http://proxy-server' gsettings set org.gnome.system.proxy.https port 8080 gsettings set org.gnome.system.proxy mode 'manual'

Для других протоколов я думаю вы поняли что необходимо поменять в данных командах.

Если есть вопросы, то пишем в комментариях.

Также можете вступить в Телеграм канал, ВКонтакте или подписаться на Twitter. Ссылки в шапке страницы.
Заранее всем спасибо.

RSS

Добавление RSS-ленты на главную страницу этого сайта не поддерживается, так как это может привести к зацикливанию, замедляющему работу вашего сайта. Попробуйте использовать другой блок, например блок Последние записи, для отображения записей сайта.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

dns_bind9

Начиная с сентября 2017 года удостоверяющим центрам предписано обязательно проверять CAA-записи в DNS перед генерацией сертификата

Сегодня установим и настроим наш файловый сервер Samba на Ubuntu Server 20.04. Расшарим директории для нашего сервера и установим на Читать

linux-logo

В этой статье я вам расскажу как изменить hostname в Debian/Ubuntu (обычно имя компьютера в сети). Существует два способа изменения Читать

network-logo

В этой статье рассмотрим пример как можно переименовать сетевые интерфейсы в дистрибутивах Linux. После обновления systemd (частью которого является udev) Читать

Источник

Использование HTTP proxy и SOCKS в Linux

В Linux существует много полезных консольных команд, которые при необходимости хотелось бы запустить через proxy. Некоторые приложения имеют встроенную поддержку proxy, а некоторые нет. Далее описано как пользоваться востребованными утилитами через proxy, даже теми, которые этой поддержки не имеют.

curl: передача данных через proxy

curl имеет полноценную поддержку как HTTP proxy так и SOCKS.

Для тестирования возможно использовать proxy сервера из бесплатных списков (socks — sockslist.net, и HTTP proxy — proxyhttp.net). Проверка IP адреса будет производиться с помощью ресурса check-host.net

# Проверить HTTP proxy curl --proxy 11.22.33.44:5555 check-host.net/ip # Тоже самое, но если для HTTP proxy требуется авторизация curl --proxy 11.22.33.44:5555 -U username:password check-host.net/ip # Проверить socks4 curl --socks4 11.22.33.44:5555 check-host.net/ip # Проверить socks5 curl --socks5 11.22.33.44:5555 check-host.net/ip # Тоже самое, только преобразование имен идет также через SOCKS # (подробнее о преобразовании имен можно прочитать ниже в подразделе "DNS запросы через proxy") curl --socks5-hostname 11.22.33.44:5555 check-host.net/ip 

Часть параметров curl можно записать в файл ~/.curlrc:

socks5 = 11.22.33.44:5555 proxy-user = username:password user-agent = "Mozilla/5.0 (X11; Linux i686; rv:7.0.1) Gecko/20100101 Firefox/7.0.1" 

С помощью time и curl также можно замерить время отклика сервера:

# Без proxy: time curl check-host.net/ip # С proxy: time curl --socks5 11.22.33.44:5555 check-host.net/ip # Или любого сайта: time curl habrahabr.ru 

Результат будет выглядеть так:

real 0m0.307s user 0m0.000s sys 0m0.004s 

wget: закачка файлов через proxy

wget имеет встроенную поддержку proxy. Недостаток лишь в том, что только поддержку HTTP proxy. Для использования совместно с SOCKS рекомендуется использовать соксификатор dante.

 # Скачать файл через proxy: http_proxy="http://33.22.44.44:8080" wget http://www.google.com/favicon.ico Тоже самое, но для HTTPS https_proxy="http://33.22.44.44:8080" wget https://www.google.com/favicon.ico # Использовать proxy с авторизацией http_proxy="http://33.22.44.44:8080" wget --proxy-user=user --proxy-password=password http://www.google.com/favicon.ico 

Чтобы все время не указывать —proxy-user и —proxy-password можно их прописать в файл ~/.wgetrc:

proxy-user = username proxy-password = password user-agent = Mozilla/5.0 (X11; Linux i686; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 

ssh: доступ к серверам

Для доступа к серверам через ssh и proxy также лучше использовать соксификатор dante.

Читайте также:  Linux how to copy and paste

Соксификатор dante

apt-get install dante-client # пример для Debian-based систем 
# Если требуется зайти по ssh на сервер SOCKS_PASSWORD="" SOCKS_SERVER="11.22.33.44:1080" socksify ssh myserver # Тоже самое, только если для подключения к соксу требуется авторизация SOCKS_USERNAME="user" SOCKS_PASSWORD="password" SOCKS_SERVER="11.22.33.44:1080" socksify ssh myserver # Пример с использованием IRC клиента - irssi SOCKS_PASSWORD="" SOCKS_SERVER="11.22.33.44:1080" socksify irssi # Тоже самое, только с использованием HTTP proxy с поддержкой метода CONNECT HTTP_CONNECT_PROXY="http://11.22.33.44:8080" socksify irssi 

С помощью socksify можно направить через proxy почти любое приложение, не только консольное.

Чтобы все время не вводить данные о proxy можно создать файл /etc/socks.conf
Пример для SOCKS:

Пример для HTTP proxy с авторизацией:

А также экспортировать переменные SOCKS_USERNAME и SOCKS_PASSWORD, если для SOCKS или HTTP proxy требуется авторизация:

export SOCKS_USERNAME="username" export SOCKS_PASSWORD="password" 

DNS запросы через proxy

Часто требуется чтобы и преобразование имен происходило через proxy. Если использовать dante, то запрос на преобразование имен идет и через proxy, и через именной сервер указанный в /etc/resolv.conf . Понять почему же идет два одинаковых запроса вместо одного не удалось. Поэтому можно предложить два варианта:
1) Закомментировать именные сервера в файле /etc/resolv.conf, чтобы преобразование имен шло только через proxy. Это отразится на всей системе.
2) Изменить /etc/resolv.conf и выставить именные сервера необходимой страны, или просто отличные от серверов провайдера. Например установить сервера Google:

nameserver 8.8.8.8 nameserver 8.8.4.4 

Чтобы данные не были перезаписаны именными серверами провайдера (при переподключении), можно запретить обновление списка именных серверов сетевому менеджеру (NetworkManager/wicd) или DHCP-клиенту (спасибо ergil за корректировку).

Или воспользоваться «грубым» методом — запрещением изменения файла /etc/resolv.conf:

sudo chattr +i /etc/resolv.conf 

Если есть какие-то дополнения, пожалуйста, напишите, это будет полезно узнать и применить.

Источник

Оцените статью
Adblock
detector