コマンドラインから再起動せずにUbuntuシステムプロキシ設定を指定する

コマンドラインから再起動せずにUbuntuシステムプロキシ設定を指定する

を使用していますUbuntu 14.04http proxyコマンドラインで設定を変更したいです。これは、GUI(すべての設定 - >ネットワーク - >ネットワークプロキシ)で変更してボタンをクリックするのと同じですApply System Widebashスクリプト()で設定を動的に変更する予定なので、システムを再起動/ログオフしたくありません。

答え1

私が理解したのは、GUIを介してシステム全体にプロキシを設定すると、次の3つのことです。

  1. dconf データベースでその値を設定します。
  2. 設定の値です/etc/environment
  3. 設定の値です/etc/apt/apt.conf

1と3はすぐに適用されます。/etc/environmentログイン時に解決されたため、ログアウト後にログインする必要があります。 (単にログインシェルを実行するのではなく正しいログインであることに注意してください。)次のスクリプトは同じでなければなりません(http / httpsプロキシが使用されていると仮定)。

#! /bin/bash
HTTP_PROXY_HOST=proxy.example.com
HTTP_PROXY_PORT=3128
HTTPS_PROXY_HOST=proxy.example.com
HTTPS_PROXY_PORT=3128

gsettings set org.gnome.system.proxy mode manual
gsettings set org.gnome.system.proxy.http host "$HTTP_PROXY_HOST"
gsettings set org.gnome.system.proxy.http port "$HTTP_PROXY_PORT"
gsettings set org.gnome.system.proxy.https host "$HTTPS_PROXY_HOST"
gsettings set org.gnome.system.proxy.https port "$HTTPS_PROXY_PORT"

sudo sed -i.bak '/http[s]::proxy/Id' /etc/apt/apt.conf
sudo tee -a /etc/apt/apt.conf <<EOF
Acquire::http::proxy "http://$HTTP_PROXY_HOST:$HTTP_PROXY_PORT/";
Acquire::https::proxy "http://$HTTPS_PROXY_HOST:$HTTPS_PROXY_PORT/";
EOF

sudo sed -i.bak '/http[s]_proxy/Id' /etc/environment
sudo tee -a /etc/environment <<EOF
http_proxy="http://$HTTP_PROXY_HOST:$HTTP_PROXY_PORT/"
https_proxy="http://$HTTPS_PROXY_HOST:$HTTPS_PROXY_PORT/"
EOF

PAMをどこにでも適用するにはログインが必要ですが、/etc/environment現在のシェルからファイルの値を抽出できます。

export http_proxy=$(pam_getenv http_proxy)

答え2

全体的な作業を簡素化するために、ProxyManというツールを作成しました。以下からダウンロードできます。このリンク

また、バックエンド機能に興味がある場合は、コードを見てください。 zipファイルをダウンロードして解凍した後、端末から解凍したファイルの場所に移動すると、次のコマンドが役に立ちます。

  • バッシュメイン.sh:プロキシを設定および解除します。
  • バッシュプロキシ_check.sh:現在のプロキシ設定を確認してください。

答え3

私はこれがあなたの頭痛を和らげると思います。

プロキシ設定ビデオ

Pythonで実行する方法の良いチュートリアルです。シンプルで認証されたプロキシ設定は、Ubuntu 12.04/12.10/13.04/13.10/14.04/14.10以降で100%動作します。

ソリューション1 システムに「python」がインストールされている必要があります。インタプリタを使用してコマンドを実行します。コマンド: "sudo python setproxy.py [Proxy_Server] [proxy_port] [PROXY_USER] [proxy_password]"

ビデオ:https://www.youtube.com/watch?v=eBtzKa-dvJg

[ Proxy_Server ] : proxy.test.ts
[ Proxy_port ] : 8080
[ PROXY_USER ] : domainuser
[ Proxy_password ] : " the_password "

解決策2: 注文する:

"Sudo apt- get install python- support"
"Sudo apt- get install ntlmaps "

必要に応じてフィールドを埋めます。

- Proxy server
- Proxy port
- User
- Password

関連情報