Microsoft NTLMプロキシサーバーを使用している企業で働いていて、Linuxも使いたい場合、接続できないことがあります。なぜでしょうか? Linuxは標準ではNTLMプロトコルで接続する機能がないためです。幸いなことに、この問題を簡単に回避する方法があります。
CNTLMを利用することで、Linuxマシン(サーバーでもデスクトップでも)からMSプロキシサーバーに接続できるようになります。CNTLMのインストールと設定は実に簡単です。
参照: Windows 7 からの移行戦略の選択: 4 つのオプション (Tech Pro Research)
実現させましょう。
必要なもの
必要なのは、Linux マシン (Ubuntu Server 18.04 で説明します)、sudo 権限を持つユーザー アカウント、およびプロキシ サーバーに対して認証できる Windows ユーザー アカウントだけです。
これらすべての準備が整ったら、作業に取り掛かります。
CNTLMのインストール
CNTLMをインストールする前に、マシンをアップデートしてアップグレードすることをお勧めします。カーネルをアップグレードする場合は、再起動が必要になる可能性があります。そのため、アップデート/アップグレードは再起動が可能なタイミングで実行してください。アップデートとアップグレードを行うには、ターミナルウィンドウを開き、以下のコマンドを実行してください。
sudo apt-get update
sudo apt-get upgrade -y
アップグレードが完了したら、(必要に応じて)再起動し、次のコマンドで CNTLM をインストールします。
sudo apt-get install cntlm -y
CNTLM の設定
設定ファイルを開く前に、セキュリティ上の理由から、パスワードを直接入力してファイルに保存するのではなく、ユーザーパスワードをハッシュ化しておくことをお勧めします。これを行うには、次のコマンドを実行します。
sudo cntlm -H -d DOMAIN -u USER
ここで、DOMAIN は使用するドメイン、USER は Windows ユーザーです。
上記のコマンドは、PassLM、PassNT、および PssNTLMv2 のハッシュされたパスワードを出力します (図 A )。
これらのハッシュ化されたパスワードをコピーします (そのうちの 1 つを構成ファイルで使用します)。
CNTLMの設定は1つのファイル内で行われます。次のコマンドを実行します。
sudo nano /etc/cntlm.conf
このファイル内には、設定が必要な 4 行があります。
Username MS_USERNAME
Domain DOMAIN
Proxy IP:PORT
Password PASSWORD
どこ:
- MS_USERNAME は実際の Windows ユーザー名です。
- DOMAIN は Windows ドメインです。
- IP は、接続先の MS プロキシ サーバーの IP アドレスです。
- PORT は、MS プロキシ サーバーが使用するポートです (ほとんどの場合、8080)。
- PASSWORD は、Windows ユーザー用に作成したハッシュ化されたパスワードです。
ネットワーク上に複数のプロキシ サーバーが存在する場合は、次のように Proxy エントリ (1 行に 1 つずつ) を使用して各サーバーを定義できます。
Proxy 192.168.1.10:8080
Proxy 192.168.1.11:8080
設定が完了したら、ファイルを保存して閉じます。
次のコマンドで CNTLM を再起動します。
sudo systemctl restart cntlm
この時点で、お使いのマシンはMS NTLMプロキシサーバーに接続できるようになりました。次に、プロキシを使用して接続するようにアプリやサービスを設定する必要があります。アプリを個別に設定したくない場合は、こちらをお試しください。
次のコマンドを発行します。
nano ~/.bashrc
次の内容をそのファイルの下部に貼り付けます。
export http_proxy=http://127.0.0.1:3128
export https_proxy=https://127.0.0.1:3128
export ftp_proxy=http://127.0.0.1:3128
ファイルを保存して閉じます。最後に、次のコマンドを実行します。
. ~/.bashrc
これで完了です。MSプロキシサーバーが正しく設定され、正しいアドレスと資格情報を使用している限り、すべて正常に動作するはずです。
おめでとうございます!これでLinuxマシンがMS NTLMプロキシサーバーに接続できました。これで作業に戻ることができます。