▼ソフトウェアのインストールと設定
L2TP/IPsec に必要なソフトウェアをインストールし、設定していきます。
L2TP – xl2tpd
tar ボールからのインストール
- VPS にログインする。
- 事前に xl2tpd の make に必要なライブラリをインストーする
# yum install libpcap-devel
- 当然、gcc や glibc-devel は入っている前提で書いてます。
- http://www.xelerance.com/より最新版の xl2tpd の tar.gz を取得して、make する
$ wget http://www.xelerance.com/wp-content/uploads/software/xl2tpd/xl2tpd-1.2.7.tar.gz $ tar xzvf ./xl2tpd-1.2.7.tar.gz $ cd xl2tpd-1.2.7 $ make # make install
- xl2tpd-1.2.7/l2tp.h の SERVER_NAME が 1.2.6 のままに修正し忘れているので、気になる人は 1.2.7 に変更しておくと良いでしょう。
- サービス登録する。
# cp packaging/fedora/xl2tpd.init /etc/init.d/xl2tpd # chmod 755 /etc/init.d/xl2tpd # chkconfig --add xl2tpd
- packaging/fedora/xl2tpd.init の中では、実行ファイルの位置が /usr/sbin/xl2tpd になっているので、シンボリックリンクを作成しておきます。
# ln -s /usr/local/sbin/xl2tpd /usr/sbin/xl2tpd
- packaging/fedora/xl2tpd.init の中では、実行ファイルの位置が /usr/sbin/xl2tpd になっているので、シンボリックリンクを作成しておきます。
- xl2tpd 用の設定ファイルをコピーする
# mkdir /etc/xl2tpd # cp examples/xl2tpd.conf /etc/xl2tpd # cp examples/ppp-options.xl2tpd /etc/ppp/options.xl2tpd
EPEL リポジトリからのインストール
★gcc等の開発環境をサーバに入れたくないとか、パッチが面倒な人はこちらがオススメ。
- VPS にログインする。
- EPEL リポジトリを使えるように必要なパッケージをインストールする
# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm # vi /etc/yum.repos.d/epel.repo [epel] enabled=0
- enabled=1 のままだと、yum でのインストールやアップデートで epel を常に使ってしまうので、enabled=0 にしておきます。
- xl2tpd をインストールする。
# yum --enablerepo=epel -y install xl2tpd
- libpcap と ppp が入ってなければ自動的に標準レポジトリからインストールされます。
- 注意
- xl2tpd のパッチがリリースされたときは、yum –enablerepo=epel update xl2tpd でアップデート可能となります。
設定
以下のような VPN となるように、必要な項目を設定します。
- xl2tpd 自身に関する設定を行う。
# vi /etc/xl2tpd/xl2tpd.conf [lns default] ip range = 192.168.1.128-192.168.1.254 local ip = 192.168.1.99
- ip range = の後にユーザ端末に IPCP1 で配る IPアドレス範囲を指定します。
DHCP を使って IP アドレスを配布するときは次の local ip とともに削除しておきます。 - local ip =は、この新規に作成される VPN 接続の、サーバ側の出入り口となる IP アドレス。ip rangeと同じセグメントにしておきます。
- これら以外はデフォルトのままで OK です。
- ip range = の後にユーザ端末に IPCP1 で配る IPアドレス範囲を指定します。
- PPP に関する設定を行う。 認証後にクライアント(iPad, Windows 等)へ配る DNS サーバのアドレスなどはここで行う。
# vi /etc/ppp/options.xl2tpd ##ms-dns 192.168.1.1 ##ms-dns 192.168.1.3 ##ms-wins 192.168.1.2 ##ms-wins 192.168.1.4 ##proxyarp logfile /var/log/xl2tpd.log
- ms-dns で DNSサーバを、ms-wins で WINSサーバを配布できますが、ここでは全てコメントアウトしています。(# がコメント)
- proxyarp は /etc/xl2tpd/xl2tpd.conf で指定した ip range がサーバ自身と同じ LANセグメントであれば有効にする必要がありますが、今回の構成はサーバ自身が属するグローバル IPアドレス レンジで L2TP しない*3ので、不要です。
- logile は指定しなくても構いませんが、構築中はログが参考になるので有効にしておきます。
- ログファイルを作成しておく
# touch /var/log/xl2tpd.log
- /etc/xl2tpd/xl2tpd.conf のデフォルトでは、PPP 認証に CHAP を使うので、ファイルを編集する。なお、これが認証時のユーザ名とパスワードになる。
# vi /etc/ppp/chap-secrets user1 LinuxVPNserver hogehoge *
- 左から ユーザ名、サーバ名、パスワード、IPアドレスの意味で、空白やタブ文字で区切ります。
- サーバ名は /etc/xl2tpd/xl2tpd.conf の name =の設定値です。* でも構いません。
- IPアドレスは、接続元の IPアドレスを制限したいときに使います。any 接続可なら * を置きます。
自動起動設定
- サービス登録して、起動します。
# chkconfig xl2tpd on # service xl2tpd start
参考情報: PPP 認証に CHAP を使わせずに MS-CAHPv2 を使うには
/etc/xl2tpd/xl2tpd.conf において、
require chap = yes
を消し、代わりに
refuse chap=yes
を追加します。これで、CHAP は使えなくなります。
その代わりとして、/etc/ppp/options.xl2tpd を開き、
require-mschap-v2
をファイルの最後などに追加します。
最後に xl2tpd と ipsec サービスを再起動すれば、PPP認証に CHAP は使えなくなり、MS-CHAPv2 でしか認証出来なくなります。
- IPCP の意味を知らなくても設定不要なので問題ありません。 [↩]
関連するコンテンツ
- VPN 接続した N-06C にプロキシを通す ~N-06C の VPN 事情
- WLI-UC-GN について
- N-06C の VPN 事情
- PPTP を Cent OS 5.x にインストールする ~N-06C の VPN 事情
- 複数ドメイン環境における SpamAssassin の設定にハマる
コメントを残す