web-dev-qa-db-ja.com

apt.confのSOCKSプロキシの構文

SOCKSプロキシ設定を/etc/apt/apt.confに追加します。その構文は何ですか? httpおよびftp構文と同じですか?

ありがとう。

21
Ubuntuser

可能な解決策は、ソックスプロキシを介してネットワークトラフィックをリダイレクトできるアプリケーションであるtsocksを使用することです。 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 にはさらに詳細があります。

Edit:より短い使用方法:

$ Sudo tsocks apt-get update
$ Sudo tsocks apt-get dist-upgrade
30
enzotib
Acquire::http::proxy "socks5h://server:port";

これはUbuntu 18.04で動作します。 manページにあるように、aptではsocks5ではなくsocks5hがサポートされています。これは、DNS解決機能を備えたsocks5プロキシを意味します。

14
苏永刚

次の設定行を使用するとうまくいきます:

Acquire::socks::proxy "socks5://server:port";

apt.confをクリーンに保ち、Linuxのアップグレード時の問題を回避するために、新しいファイル(/etc/apt/apt.conf.d/12proxy)を作成し、それに構成ファイルを追加しました。

8
Bit-Man

Ubuntu Xenialのapt.confマニュアルのAcquire :: socks :: proxyに何も見つかりませんでした。これを修正するには、Polipoなどのアップストリームソックスプロキシをサポートするローカルhttpプロキシを実行します。次のようにPolipoを構成する必要があります。

proxyAddress = "::1"
proxyPort = 8118
socksParentProxy = "sockshost:socksport"
socksProxyType = socks5

次に、apt.confファイルでhttpプロキシを設定します。

Acquire::http::proxy "http://127.0.0.1:8118/";
Acquire::https::proxy "https://127.0.0.1:8118/";
4
Mos

または、touは/etc/apt/apt.confに次のように入力できます。

Acquire::socks::proxy "socks://user:pass@Host:port/";
3
mrkbbk

Debianでは、マンページapt-transport-http(1)を読んで、サポートされているURIスキームを探すことができます。前に答えたように、

Acquire::http::proxy "socks5h://server:port";

/etc/apt/apt.conf.d/12proxy

apt.conf(5)で一般的なAPT-configの詳細を読み、マンページの最後にある/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用)を使用して、他のシステムがallインターフェイスでSOCKSプロキシを使用できるようにする場合。 これはセキュリティリスクまたは(企業の)ポリシー違反である可能性があります。何をしているかを確認してください。

0
AdamKalisz