| VPN(仮想プライベートネットワーク)接続をする(1) | |||
| ファイヤーウォール内に置いてある会社のメールサーバなどにアクセスするには、ファイヤーウォールに穴を開けてデータを通す必要がありとても危険です。こんなときにLinuxマシンをファイヤーウォールとして利用していれば、仮想プライベートネットワーク(Virtual Private Network)を利用して少しだけ安全に社内サーバへアクセスできます。Windowsファミリをサポートして仮想プライベートネットワークを実現するサービスにpptpあり、Linuxなどで利用できるpptpサーバとして実装されているソフトウェアにpoptopがあります。ここではpoptopを導入してWindows98からLinuxのファイヤウォール経由で社内サーバへ接続する手順を見ていきましょう。 | |||
| 用意するもの | |||
|
poptopを利用するにはpppdが必要で、カーネルが2.2以降でIP Masquerade機能が組み込まれている必要があります。Windowsファミリから「Microsft encryption and authentication」を利用してpptpサーバへ接続するにはpppにパッチを当てる必要があり、pppの2.3.8か2.3.10に当てるパッチがいっしょに公開されています。また、暗号化のモジュールとしてOpenSSLからソースを拝借して利用します。poptopやppp、OpenSSL、各種パッチは以下から入手できます。 poptop http://www.moretonbay.com/vpn/pptp.html http://www.moretonbay.com/vpn/download_pptp.html ppp ftp://cs.anu.edu.au/pub/software/ppp/ OpenSSL |
|||
| pppをコンパイルしてインストール | |||
|
ppp-2.3.8.tar.gzかppp-2.3.10tar.gzを入手したら展開してコンパイルする前にパッチを当てます。ここでは、ppp-2.3.10をインストールしてみましょう。入手したアーカイブファイルを展開するにはtarコマンドを利用します。 > tar zxvf - ppp-2.3.10.tar.gz drwxr-xr-x paulus/users 0 1999-09-17 15:02:24 ppp-2.3.10/ > tar zxvf - openssl-0.9.5a.tar.gz openssl-0.9.5a/CHANGES OpenSSLから必要なソースをpppのソースにコピーし、patchコマンドでパッチを当てます。 > cp openssl-0.9.5a/crypto/rc4/rc4.h ppp-2.3.10/linux/. > cp openssl-0.9.5a/crypto/rc4/rc4_enc.c ppp-2.3.10/linux/.
> cd ppp-2.3.10 ppp-2.3.10 > cat ../ppp-2.3.10-openssl-norc4-mppe.patch | patch
-p1 patching file `README.MPPE' コンパイルとインストールは以下のようにおこないます。 ppp-2.3.10 > ./configure Makefile -> linux/Makefile.top ppp-2.3.10 > ./make ppp-2.3.10 > ./make kernel ppp-2.3.10 > ./make install
|
|||
| IP Masqueradeをカーネルに組み込む | |||
|
カーネルにIP Masquerade機能が組み込まれているか確認して、もし組み込まれていなければオプションを設定してカーネルをコンパイルしてください。カーネルのコンパイルは「Linuxメンテナンスブック」などを参考にどうぞ。カーネルソースがインストールされていて、pppをコンパイルする過程でカーネルのドライバにパッチを当てていれば、pppと同じく暗号化モジュールをカーネルソースへコピーしてから、モジュールをコンパイルしてインストールしてください。 > cp openssl-0.9.5a/crypto/rc4/rc4.h /usr/src/linux/drivers/net/.
> cp openssl-0.9.5a/crypto/rc4/rc4_enc.c /usr/src/linux/drivers/net/.
> cd /usr/src/linux /usr/src/linux > make dep clean modules modules_install IP Masquerade機能がカーネルに組み込まれていれば、以下のコマンドでロードしてみましょう。「/etc/conf.module」ファイルに以下の行を追加してください。 alias ppp-compress-18 ppp_mppe modprobeコマンドでカーネルに > depmod -a |
|||
| poptopをコンパイルしてインストールする | |||
|
poptopのコンパイルとインストールはとても簡単でconfigureスクリプトとmakeコマンドを使って以下のようにおこないます。 > tar zxvf pptpd-1.0.0.tar.gz > cd pptpd-1.0.0 pptpd-1.0.0 > ./configure pptpd-1.0.0 > make pptpd-1.0.0 > make install poptopのサーバであるpptpdは/usr/loca/sbinディレクトリにインストールされます。 |
|||
| pppとpoptopを設定してpptpdを実行する | |||
|
pppの設定は「/etc/ppp/options」を以下のように書き換えます。 +chapms poptopの設定は「」を以下のように書き換えてください。 speed 115200 ここでは仮想接続をしてきたマシンに192.168.1.16から192.168.1.30が割り当てられます。 pppで利用するchapは「/etc/ppp/chap-secrets」を以下のように書き換えます。 pptp.test.co.jp herohero* ここではpptpユーザでパスワードが「herohero」となります。 それではpptpdを実行してみましょう。 > /usr/local/sbin/pptpd & 実行されると「MGR: Manager process started」がメッセージとして出力され、「/var/log/message」ファイルで確認できます。 |
|||
| Windows98からpptpサーバへの接続は次回に続く | |||