cntlm
いくつかの構成とともにソリューションを提供します。
従うべき基本的な手順は次のとおりです。
- cntlmをインストールします。
- /etc/cntlm.confにある構成ファイルを編集します。含まれているコメントにより、十分に簡単になります。
- プロキシサーバー(または2つ)を追加します。
- ユーザー名とNTドメイン名を適切な場所に指定し、パスワードエントリを削除します。
たとえば、cntlmサービスを開始します
$ sudo /etc/init.d/cntlm start
cntlmは、プロキシをテストし、パスワードからハッシュを生成する方法を提供します-たとえば(rootとしての)コマンドによって
$ cntlm -I -M http://www.test.com
cntlmはドメインパスワードの入力を求めます。次に、構成されたプロキシサーバーに対してさまざまな認証メカニズムをテストします。動作するメソッドが見つかると、構成ファイルに入力する必要のある2行が出力されます。
- cntlmサーバーを停止し、上記のステップ6で取得した行を
/etc/cntlm.conf
ます。
- cntlmを再起動します
これcntlm
で実行され、使用する準備ができました。多くの場所を使用して、それを使用するさまざまなプログラムを構成できます。 cntlm
次に、NTドメイン認証トークンを送信パケットに透過的に追加し、構成済みのプロキシサーバーに転送します。
Qt / KDEの使用
Qt / KDEネイティブアプリケーションの場合、KDEの[システム設定] -> [ ネットワーク設定] -> [ プロキシ設定]で[手動で構成されたプロキシサーバーを使用する]を指定します。プロキシはhttp://localhost
、ポート3128と同様に指定されます(デフォルトのcntlm
変更ない限り)。これらのアプリケーションは新しい設定で動的に更新され、設定を更新するための再起動やログアウト/ログインは必要ありません。
DropboxとGoogleクライアント
多くのアプリケーションはシェル環境変数を使用できます。ここで注目すべきは、DropboxとGoogle Earthクライアントです。これらのアプリケーションでは、次のようなシェル環境変数を使用します。
no_proxy=localhost,127.0.0.0/8,*.local
NO_PROXY=localhost,127.0.0.0/8,*.local
all_proxy=socks://localhost:3128/
ALL_PROXY=socks://localhost:3128
http_proxy=http://localhost:3128
HTTP_PROXY=http://localhost:3128
ftp_proxy=http://localhost:3128
FTP_PROXY=http://localhost:3128
https_proxy=http://localhost:3128
HTTPS_PROXY=http://localhost:3128
s3cmd、curl、およびwget
注:一部のアプリケーションは小文字の名前のみを使用し、他のアプリケーションは大文字の名前のみを使用します。
s3cmd
(Amazon S3のクライアント)、curl
およびwget
必要に応じてさらに、独自の構成ファイルを介して設定することができます。呼び出しのたびに独自の構成ファイルを読み取るため、これは便利です。これらのプログラムは通常、有効期間が短い(ダウンロードの完了後に1回の呼び出しが存在する)ため、非常に便利です。
s3cmd
in の形式~/.s3cfg
は次のとおりです。
proxy_host = localhost
proxy_port = 3128
wget inの形式~/.wgetrc
は次のとおりです。
https_proxy = http://localhost:3128
http_proxy = http://localhost:3128
ftp_proxy = http://localhost:3128
curl
in の形式~/.curlrc
は次のとおりです。
proxy = localhost:3128
一方、シェルプロファイルやその他の環境設定ファイルを編集するには、通常、再起動、ログアウトとログインなどが必要です。それは調査の価値があります/etc/environment
、~/.pam_environment
、~/.kde/env/proxy.sh
これらはシステム上のすべてのユーザとサービスに影響を与えるために、特に、シェルの環境変数を経由して設定されたプロキシ設定を設定するための標準的な場所であるとしてなど。
それぞれの.desktop
ファイルを使用してアプリケーションごとに環境設定を変更できることも理解していますが、まだ(成功して)試していません。
VirtualBox
VirtualBoxは、GUIを使用するか、次のコマンドを使用して、プロキシを使用するように(たとえば、ソフトウェアの更新を確認してダウンロードするように)構成できます。
$ VBoxManage setextradata global GUI/ProxySettings \
"proxyEnabled,localhost,3128,authDisabled,,"
完全を期すために、これを無効にするには、以下を使用します。
$ VBoxManage setextradata global GUI/ProxySettings \
"proxyDisabled,,,authDisabled,,"
Firefox
Firefoxの場合、QuickProxyアドオンを使用します。ローカルマシンでプロキシサーバーを使用するように手動で設定されている場合、Firefox自体。したがって、QuickProxyは設定を有効または無効にするだけです。
APT
APT(synaptic、muonなどがバックグラウンドで使用)はの構成ファイルを使用します/etc/apt/apt.conf.d/
。たとえば00proxy
、APTのプロキシを有効にするには、次のような行を使用します。
Acquire::http::Proxy "http://localhost:3128";
#Acquire::ftp::proxy "ftp://localhost:3128/";
#Acquire::https::proxy "https://localhost:3128/";
注:add-apt-repositoryはルートプロファイルを使用します。または、すべてのhttp * _proxy設定が適用されるようにsudoを構成できます。
それらすべてを支配するスクリプト
FWIW私は現在、多数のプログラムのプロキシを有効/無効にするモジュール式スクリプトを作成している最中です。これまでに次のモジュールを作成しました。
$ ls -lF proxymanager/modules/
total 60
-rwxr-xr-x 1 root root 919 Oct 8 17:27 apt*
-rwxr-xr-x 1 root root 1037 Oct 8 13:10 bashrc*
-rwxr-xr-x 1 root root 391 Oct 8 12:18 cntlm*
-rwxr-xr-x 1 root root 684 Oct 8 12:58 curl*
-rwxr-xr-x 1 root root 609 Oct 8 13:02 dropbox*
-rwxr-xr-x 1 root root 672 Oct 8 12:18 gnome*
-rwxr-xr-x 1 root root 691 Oct 8 12:18 kde*
-rwxr-xr-x 1 root root 689 Oct 8 13:03 root_bashrc*
-rwxr-xr-x 1 root root 691 Oct 8 13:03 root_curl*
-rwxr-xr-x 1 root root 827 Oct 8 13:03 s3cmd*
-rwxr-xr-x 1 root root 454 Oct 8 13:03 survive_reboot*
-rwxr-xr-x 1 root root 860 Oct 8 13:06 suse-sysproxy*
-rwxr-xr-x 1 root root 653 Oct 8 12:46 sysenvironment*
-rwxr-xr-x 1 root root 465 Oct 8 13:04 virtualbox*
-rwxr-xr-x 1 root root 573 Oct 8 13:04 wgetrc*
制御アプリケーションと同様に。これらは、まもなくgithubまたは他のオンラインホームに移動される予定です。