Chcę dodać ustawienia proxy SOCKS do /etc/apt/apt.conf. Jaka jest jego składnia? Czy to to samo, co składnia http i ftp?
Dzięki.
Możliwym rozwiązaniem może być użycie tsocks
aplikacji, która może przekierowywać ruch sieciowy za pośrednictwem proxy skarpet. Zainstaluj tsocks
pakiet, zmodyfikuj, /etc/tsocks.conf
aby ustawić adres i numer portu serwera proxy skarpet, i uruchom:
$ sudo -s
# tsocks apt-get update
# tsocks apt-get dist-upgrade
# exit
$
lub
$ sudo -s
# . tsocks -on
# apt-get update
# apt-get dist-upgrade
# . tsocks -off # not really necessary, given the exit
# exit
$
Możesz pomyśleć o szeregu opcji, aby uprościć i zautomatyzować jego użycie.
Nie zapomnij o wiodącej kropce, na Manpage znajdziesz więcej szczegółów.
Edycja : krótszy sposób użycia:
$ sudo tsocks apt-get update
$ sudo tsocks apt-get dist-upgrade
sudo tsocks apt-get install tsocks
.tsocks
, zainstalować, a następnie użyć :)Acquire::http::Proxy "socks5h://hostname:port/"
. Zobacz dziennikapt-get something
!Acquire::socks::Proxy "socks5h://hostname:port/";
. Http nie - wypróbuj go z Torem, a zobaczysz standardową odpowiedź „Tor nie jest serwerem proxy HTTP”, więchttp
zastępuje gosocks
- i działa!Działa to dla mnie na Ubuntu 18.04. Jak mówi strona podręcznika, socks5h, a nie socks5, jest obsługiwany przez apt, co oznacza, że socks5 proxy z funkcją rozpoznawania nazw DNS.
źródło
Acquire::https::proxy "socks5h://server:port";
doapt.conf.d
pliku (jak/etc/apt/apt.conf.d/12proxy
) działa dobrze. Proponuję trzymać się protokołu https, chyba że jest to konieczne.Acquire::http::proxy "socks5h://user:pass@server:port";
. Powyższa reguła działa dobrze w Ubuntu 18.04.socks5h
Wymusza tutaj rozpoznawanie DNS na serwerze proxy.Użycie następnej linii konfiguracji działa dla mnie:
Aby zachować
apt.conf
czystość i uniknąć problemów podczas aktualizacji systemu Linux, stworzyłem nowy plik (/etc/apt/apt.conf.d/12proxy
) i dodałem do niego plik konfiguracyjny.źródło
Nic nie znalazłem na Acquire :: socks :: proxy w instrukcji apt.conf Ubuntu Xenial. Możesz to naprawić, uruchamiając lokalny serwer proxy HTTP, który obsługuje serwer proxy skarpet nadrzędnych, na przykład Polipo. Musisz skonfigurować Polipo w następujący sposób:
a następnie ustaw proxy HTTP w pliku apt.conf:
źródło
Lub tou może umieścić w pliku /etc/apt/apt.conf coś takiego:
źródło
Acquire::http::proxy "socks://user:pass@host:port/";
Acquire::socks
jest to ustawienie proxy dla adresów URL zaczynających się odsocks://
. To znaczy, nie trzeba proxy do uzyskania dostępu do Internetu, aapt
nie za pomocą dowolnego proxyftp://
,http://
albohttps://
..apt
obsługuje tylko HTTP proxy, tjAcquire::http::proxy "http://localhost:8118
.W Debianie możesz przeczytać stronę podręcznika
apt-transport-http(1)
i poszukać obsługiwanych schematów URI. Jak już wcześniej odpowiedziano, postaww
Możesz przeczytać więcej o konfiguracji APT w ogóle
apt.conf(5)
i przeczytać przykłady/usr/share/doc/apt/examples/configure-index.gz
wspomniane na końcu strony podręcznika.Można to połączyć z
ssh -D <LOCAL PORT> <USER>@<HOST>
tworzeniem proxy SOCKS do innego systemu, aby apt mógł następnie używać proxy tak, jakby wszystko powstało<HOST>
.Jeśli używasz
ssh -D 0.0.0.0:<LOCAL PORT> <USER>@<HOST>
lubssh -D [::]:<LOCAL PORT> <USER>@<HOST>
(dla IPv6), aby umożliwić innym systemom korzystanie z proxy SOCKS na wszystkich interfejsach. Może to stanowić zagrożenie bezpieczeństwa lub naruszenie zasad (korporacyjnych). Upewnij się, że wiesz, co robisz.źródło