Я хочу добавить настройки прокси-сервера SOCKS в /etc/apt/apt.conf. Каков синтаксис для этого? Это так же, как синтаксис http и ftp?
Спасибо.
Возможным решением может быть использование tsocks
приложения, которое может перенаправлять сетевой трафик через прокси-сервер socks. Установите tsocks
пакет, измените, /etc/tsocks.conf
чтобы установить адрес и номер порта вашего прокси-сервера socks, и запустите:
$ sudo -s
# tsocks apt-get update
# tsocks apt-get dist-upgrade
# exit
$
или
$ sudo -s
# . tsocks -on
# apt-get update
# apt-get dist-upgrade
# . tsocks -off # not really necessary, given the exit
# exit
$
Можно продумать ряд вариантов, упростить и автоматизировать его использование.
Не забывайте начальную точку, у Manpage есть больше подробностей по этому вопросу.
Изменить : более короткий способ использовать его:
$ sudo tsocks apt-get update
$ sudo tsocks apt-get dist-upgrade
sudo tsocks apt-get install tsocks
. Хахахахахаха ...tsocks
, установки, а затем использовать :)Acquire::http::Proxy "socks5h://hostname:port/"
. См. Списокapt-get something
!Acquire::socks::Proxy "socks5h://hostname:port/";
делает свое дело. Http вовсе не - попробуйте с Tor и вы увидите стандартный ответ «Tor не является HTTP - прокси», поэтомуhttp
идет замененsocks
- и это работает!Это работает для меня на Ubuntu 18.04. Как говорится на странице руководства, apt поддерживает socks5h, а не socks5, что означает прокси socks5 с возможностью разрешения DNS.
источник
Acquire::https::proxy "socks5h://server:port";
вapt.conf.d
файл (вроде/etc/apt/apt.conf.d/12proxy
) работает просто отлично. Я бы предложил придерживаться https, если не требуется иное.Acquire::http::proxy "socks5h://user:pass@server:port";
. Вышеуказанное правило отлично работает в Ubuntu 18.04. Здесьsocks5h
применяется разрешение DNS на прокси-сервере.Использование следующей строки конфигурации работает для меня:
Чтобы сохранить
apt.conf
чистоту и избежать проблем при обновлении Linux, я создал новый файл (/etc/apt/apt.conf.d/12proxy
) и добавил к нему файл конфигурации.источник
Я не смог найти ничего о Acquire :: socks :: proxy в руководстве по apt.conf для Ubuntu Xenial. Это можно исправить, запустив локальный http-прокси-сервер, который поддерживает прокси-серверы верхнего уровня, например Polipo. Вам необходимо настроить Polipo следующим образом:
а затем установите http прокси в вашем файле apt.conf:
источник
Или вы можете вставить в ваш /etc/apt/apt.conf что-то вроде этого:
источник
Acquire::http::proxy "socks://user:pass@host:port/";
Acquire::socks
это для настройки прокси для URL, которые начинаются сsocks://
. Так что средства вам не нужен прокси - сервер для доступа в Интернет, а такжеapt
не использует прокси - серверы дляftp://
,http://
илиhttps://
..apt
поддерживает только HTTP прокси, то естьAcquire::http::proxy "http://localhost:8118
.В Debian вы можете прочитать man-страницу
apt-transport-http(1)
и найти поддерживаемые схемы URI. Как ответили раньше, поставьв
Вы можете прочитать больше о APT-config в целом
apt.conf(5)
и прочитать примеры,/usr/share/doc/apt/examples/configure-index.gz
упомянутые в конце руководства.Это можно комбинировать с
ssh -D <LOCAL PORT> <USER>@<HOST>
созданием прокси-сервера SOCKS в другой системе, чтобы apt мог затем использовать прокси-сервер так, как если бы все происходило<HOST>
.Если вы используете
ssh -D 0.0.0.0:<LOCAL PORT> <USER>@<HOST>
илиssh -D [::]:<LOCAL PORT> <USER>@<HOST>
(для IPv6), чтобы другие системы могли использовать прокси-сервер SOCKS на всех интерфейсах. Это может быть угрозой безопасности или нарушением (корпоративной) политики. Убедитесь, что вы знаете, что делаете.источник