Информация | ||
---|---|---|
| ||
|
Введение
В настоящей статье содержится описание настроек proxy-соединений для различных программ. Рассматриваются глобальные (применяемые ко всем приложениям) и специальные (применяемые к отдельным приложениям) настройки. Как правило, глобальных настроек достаточно для того, что бы все приложения всех пользователей работали через proxy без необходимости настраивать proxy внутри приложения. Однако, некоторые приложения не умеют работать с глобальными настройками или им нужны особенные настройки (например, Firefox, Chromium, а также основанные на них приложения, а также любые другие приложения, основанные на QtWebEngine, в том числе Konqueror, использующий модуль WebEnginePart, Akregator и Falkon).
Общесистемные глобальные настройки
Информация |
---|
Для настройки общесистемной конфигурации proxy требуются права администратора (при работе в Astra Linux с включенным МКЦ - администратора с высоким уровнем целостности). |
Параметры настройки proxy задаются через переменные окружения. Подробнее про работу с переменными окружения см. Присвоение значений переменным окружения для пользовательских сессий. Для задания правил используются предопределенные переменные окружения:
- для точек proxy-доступа с использованием различных протоколов:
- https_proxy — для протокола HTTPS;
- http_proxy — для протокола HTTP;
- ftp_proxy — для протокола FTP;
- socks_proxy — для протокола SOCKS.
- для списка исключений (списка адресов, доступ к которым осуществляется без использования proxy) используется переменная окружения no_proxy.
Значения точек proxy-доступа задаются в виде:
для proxy с авторизацией:
Блок кода https_proxy="https://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/" http_proxy="http://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/" ftp_proxy="ftp://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>" socks_proxy="socks://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/"
для proxy без аутентификации:
Блок кода https_proxy="https://<IP-адрес_proxy>:<IP-порт_proxy>/" http_proxy="http://<IP-адрес_proxy>:<IP-порт_proxy>/" ftp_proxy="ftp://<IP-адрес_proxy>:<IP-порт_proxy>/" socks_proxy="socks://<IP-адрес_proxy>:<IP-порт_proxy>/"
Значение переменной no_proxy (список исключений) задается в виде списка адресов-исключений:
Блок кода |
---|
no_proxy="127.0.0.1, localhost, 192.168.0.0/24, domain.local" |
Информация |
---|
Инструмент командной строки curl (пакет curl) не поддерживает указание адресов в формате CIDR (в примере выше — 192.168.0.0/24). При использовании этого инструмента адреса в списке следует задавать явно. |
Примечание |
---|
Для активизации изменений настроек перезагрузить ОС. |
Для применения общесистемных настроек для пользователя:
- В пользовательской сессии открыть терминал (горячая клавиша Alt+T);
Выполнить команду:
Command fly-kcmshell5 proxy
- В открывшемся окне выбрать пункт "Использовать общесистемные настройки proxy" (или, в зависимости от установленного обновления, "Использовать общесистемные параметры прокси" ) и указать имена переменных окружения, заданных в файле /etc/environment:
- Для сохранения изменений нажать "Да";
Автоматизация настройки пользовательских proxy
Пользовательские настройки fly-kcmshell5 хранятся домашнем каталоге пользователя в файле .config/kioslaverc. Это файл может быть скопирован разным пользователям, при этом следует каждой копии присвоить права доступа, позволяющие пользовательским приложениям читать этот файл (но не обязательно разрешать изменять).
Пользовательские настройки
Графический инструмент fly-kcmshell5
Графический инструмент fly-kcmshell5 доступен в составе Astra Linux начиная с обновлений:
- Astra Linux Special Edition x.7;
- Astra Linux Special Edition РУСБ-10015-01 (очередное обновление 1.6) начиная с обновления БЮЛЛЕТЕНЬ № 20210611SE16 (оперативное обновление 1.6.7);
- Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1) начиная с обновления БЮЛЛЕТЕНЬ № 20211019SE81 (оперативное обновление 8.1.3);
- Astra Linux Common Edition 2.12.42;
В более ранних обновлениях Astra Linux Special Edition доступен аналогичный инструмент kcmshell5. Далее в примерах команд используется инструмент fly-kcmshell5, применение инструмента kcmshell такое же.
Предупреждение |
---|
Такой способ настройки не поддерживает передачу логина и пароля для proxy с аутентификацией, и proxy с аутентификацией не будет работать. |
Для выполнения пользовательской настройки proxy:
- В пользовательской сессии открыть терминал (горячая клавиша Alt+T);
Выполнить команду:
Command fly-kcmshell5 proxy
- В открывшемся окне:
- Выбрать режим работы proxy ""Использовать настройку прокси, указанную вручную" (или, в зависимости от установленных обновлений "Использовать заданные параметры"):
Адреса (имена) proxy следует указывать без префиксов типа протокола (https://, http:// и т.д.); - Задать нужные параметры.
- Нажать "Да" для сохранения параметров.
- Выбрать режим работы proxy ""Использовать настройку прокси, указанную вручную" (или, в зависимости от установленных обновлений "Использовать заданные параметры"):
Отдельные настройки приложений
Hide If | ||
---|---|---|
Web-браузер Яндекс.Браузер
Для настройки прокси непосредственно в браузере:
См. также: |
Web-браузер Firefox
Firefox игнорирует глобальные настройки, передаваемые через переменные окружения, но может использовать пользовательские настройки, заданные с помощью fly-kcmshell5 или свои собственные. Пользовательская настройка proxy с помощью fly-kcmshell5 описана выше.
Для того, чтобы назначить proxy с помощью собственных настроек Firefox:
- Открыть окно настроек Firefox:
- Перейти на вкладку "Дополнительно";
- Перейти на вкладку "Сеть";
- Нажать на кнопку "Настроить" напротив надписи "Настройка параметров соединения Firefox с Интернетом".
Важное отличие Firefox от других программ — он умеет использовать NTLM аутентификацию (используется на Microsoft Internet Security and Acceleration Server).
Web-браузер Chromium
Chromium может использовать глобальные настройки и имеет свои. Для того, чтобы назначить ему отдельный proxy:В файл /etc/chromium/default добавить параметр:
Блок кода export CHROMIUM_FLAGS="$CHROMIUM_FLAGS --proxy-server=<IP-адрес>:<IP-порт>"
Перезапустить браузер.
Сохранение учетных данных для Firefox/Chromium
WEB-браузеры Firefox и Chromium игнорируют глобальные настройки proxy в части логина и пароля и при запуске регулярно запрашивают логин и пароль. Для запоминания учетных данных proxy с паролем в браузере можно воспользоваться расширением (плагином) FoxyProxy.
Менеджер пакетов APT
APT может работать отдельно с персональными настройками. Такие настройки указываются в файле/etc/apt/apt.conf
:Блок кода |
---|
Acquire::http::proxy "http://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/"; Acquire::https::proxy "https://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/"; Acquire::ftp::proxy "ftp://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/"; Acquire::socks::proxy "socks://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/"; Acquire::::Proxy "true"; |
Если сервер работает без аутентификации, то <имя_пользователя>:<пароль>@ нужно убрать.
Для задания исключений использовать опцию DIRECT:
Блок кода |
---|
Acquire::http::Proxy { local-apt-repo.local.loc DIRECT; }; |
Интерпретатор командной строки Bash
Для того, чтобы изменить настройки для запускаемых программ перед их запуском выполнить команды для определения нужных переменных окружения:Command |
---|
export http_proxy='http://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/' export https_proxy='https://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/' export ftp_proxy='ftp://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/' |
и для отключения всех proxy:
Command |
---|
unset {http,https,ftp}_proxy |
Можно также создать функции Bash для автоматической настройки proxy. Для этого добавить в файл ~/.bashrc
следующий код:
Блок кода |
---|
# Включить Proxy function setproxy() { export http_proxy="http://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>" export https_proxy="https://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>" export ftp_proxy="ftp://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>" } # Отключить Proxy function unsetproxy() { unset {http,https,ftp}_proxy } |
И применить сделанные настройки:
Command |
---|
source ~/.bashrc |
Теперь для быстрого включения и отключения прокси можно использовать команды setproxy
и unsetproxy
.
wget
Для задания настроек proxy дописать в файл /etc/wgetrc :Блок кода |
---|
proxy-user = username proxy-password = password http_proxy = http://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/ ftp_proxy = ftp://<имя_пользователя>:<пароль>@<IP-адрес_proxy>:<IP-порт_proxy>/ use_proxy = on |
Если используется proxy без аутентификации, то часть <имя_пользователя>:<пароль>@ не указывается.
Проверка действующих настроек proxy
Для проверки действующих настроек прокси выполнить команду:Command |
---|
env | grep proxy |