4.PoPToP(pptpd)の設定と接続
(1)PoPToP(PPTPサーバー)の設定
ネットワークモデルの「E Linux Server」にインストールしたPoPToPに関する設定ファイルは次の4つのファイルです。
@ /etc/modules.conf
A /etc/pptpd.conf
B /etc/ppp/options.pptpd
C /etc/ppp/chap-secrets
|
@ /etc/modules.conf
この設定ファイルの内容を以下に示します。
ここで「青色」で示した設定内容は ppp-2.4.1-3mppe.i386.rpm 及び pptpd-1.1.3-1.i386.rpm
をインストールした時に自動的に書き加えられた内容です。
そして、「赤色」示した設定内容が後で追加した内容です。
なお、ppp-2.4.1-3-3mppe.i386.rpm をインストールした時に追加される
alias char-major-108 off # This will be different for 2.3.x kernels
の行は、
alias char-major-108 ppp_generic
に変更してください。
alias parport_lowlevel parport_pc
alias eth0 via-rhine
alias eth1 via-rhine
alias eth2 via-rhine
#re 2002.12.02 for PPTP
alias ppp-compress-18 ppp_mppe
alias ppp-compress-21 bsd_comp
alias ppp-compress-24 ppp_deflate
alias ppp-compress-26 ppp_deflate
#re 2002.12.02 added by ppp-2.4.1-3mppe
alias ppp ppp_generic
#alias char-major-108 off # This will be different for 2.3.x kernels
alias char-major-108 ppp_generic
#re 2002.12.02 added by pptpd-1.1.3-1
alias net-pf-47 ip_gre |
A /etc/pptpd.conf
PoPToPの設定ファイルは、下記のとおりです。
ポイントは「/etc/ppp/options.pptpd」の設定ファイルを使うようにすることと、PPTPで構築するVPNのIPアドレスを指定する2点です。
VPNのIPアドレスの指定ですが、ネットワークモデル上のEのLAN側と同じネットワークアドレスとしました。
既存のホストに割り当てているIPアドレスとダブらないように注意してください。
なお、「debug」の指定は、安定して接続できるようになれば不要でしょう。
################################################################################
#
# Sample PoPToP configuration file
#
# for PoPToP version 1.1.3
#
################################################################################
# TAG: speed
#
# Specifies the speed for the PPP daemon to talk at.
#
#speed 115200
# TAG: option
#
# Specifies the location of the PPP options file.
# By default PPP looks in '/etc/ppp/options'
#
# デフォルトではコメントアウトされています。
# 必ず有効にしてください。
option /etc/ppp/options.pptpd
# TAG: debug
#
# Turns on (more) debugging to syslog
#
# 安定して接続できるようになれば、コメントアウトしましょう。
debug
# TAG: localip
# TAG: remoteip
#
# Specifies the local and remote IP address ranges.
#
# You can specify single IP addresses seperated by commas or you can
# specify ranges, or both. For example:
#
# 192.168.0.234,192.168.0.245-249,192.168.0.254
#
# IMPORTANT RESTRICTIONS:
#
# 1. No spaces are permitted between commas or within addresses.
#
# 2. If you give more IP addresses than MAX_CONNECTIONS, it will
# start at the beginning of the list and go until it gets
# MAX_CONNECTIONS IPs. Others will be ignored.
#
# 3. No shortcuts in ranges! ie. 234-8 does not mean 234 to 238,
# you must type 234-238 if you mean this.
#
# 4. If you give a single localIP, that's ok - all local IPs will
# be set to the given one. You MUST still give at least one remote
# IP for each simultaneous client.
#
#localip 192.168.0.234-238,192.168.0.245
#remoteip 192.168.1.234-238,192.168.1.245
# ここでVPNで使用するアドレスを指定します。
# localipはこのサーバーのアドレスです。
# remoteipはこのサーバーに接続してくるクライアントに割り当てるアドレスです。
localip 192.168.2.151
remoteip 192.168.2.152-160 |
B /etc/ppp/options.pptpd
これがpptpdの設定ファイルです。
ここでのポイントは、セキュリティ面から認証方式を MS-CHAP Versin 2に、暗号化方式を128ビットキーのMPPEに限定するように設定することです。
## CHANGE TO SUIT YOUR SYSTEM
lock
## turn pppd syslog debugging on
# デフォルトではコメントアウトされています。
# 安定して接続できるようであればコメントアウトしましょう。
debug
## change 'pptpd' to whatever you specify as your server name in chap-secrets
#name pptpd
# /etc/ppp/chap-secrets で使用するserver名を定義します。
name poptop.net
#re 2002.12.02
auth
proxyarp
# This option applies if you use ppp with chapms-strip-domain patch
#chapms-strip-domain
# デフォルトでは使える設定となっていますが、セキュリティが甘いので使いません。
#+chap
# These options apply if you use ppp with mppe patch
# NB! You should also apply the ChapMS-V2 patch
# 以下の内容を設定します。
# セキュリティ面からchapms-v2のみを使用し、暗号かも128ビットのmppeのみ使用します。
-chap
-chapms
+chapms-v2
ipcp-accept-local
ipcp-accept-remote
lcp-echo-failure 3
lcp-echo-interval 5
deflate 0
mppe-128
#mppe-40
mppe-stateless
# These options will tell ppp to pass on these to your clients
# To use ms-dns or ms-dns in options.pptpd it must exist in /etc/resolv.conf
#ms-wins your.server.here
#ms-dns your.server.here
|
C /etc/ppp/chap-secrets
chap を用いた認証方法を使う場合の認証ファイルです。
ここで設定した内容をWindowsのネットワークの接続で使います。
# Secrets for authentication using CHAP
# client server secret IP addresses
poptop-user poptop.net "poptop-passwd" * |
D PoPToPデーモン(pptpd) の起動
以上で設定は終わりです。
| # /etc/init.d/pptpd start |
でpptpdを起動しましょう。
なお、サーバー起動時に自動的に立ち上がるようにntsysv等で登録しておきましょう。
(2)クライアントの設定とVPNサーバーへの接続
今回は、クライアントマシンであるGMobile PCのOSを Windows XP とします。
なお、このマシンからはダイアルアップを利用してISPを通してインターネットに接続できるようにしておいてください。
まず、コントロールパネルの「ネットワーク接続」から「新しい接続を作成する」をクリックし、「新しい接続ウィザード」を立ち上げます。

「次へ」をクリックし、「ネットワーク接続の種類」で「職場のネットワークへ接続する(O)」を選択します。

次の「ネットワーク接続」では「仮想プライベートネットワーク接続(V)」を選択します。

「接続名」は好きな名前をつけてください。

「パブリックネットワーク」でインターネットに接続する方法を指定します。
ここでは、「so-net」という接続名でISPを通してインターネットに接続する設定が既にあるものとします。

「VPNサーバーの選択」ではターゲットマシンのIPアドレス「123.45.67.89」を入力します。

以上で初期設定は終了です。
終了させるとすぐに次のメッセージが表示されますので「はい(Y)」をクリックし、まずISPを通してインターネットに接続します。

無事にインターネットに接続できれば、次にPoPToPに接続するための「VPN コネクションへの接続」が求めれます。
ここで /etc/ppp/chap-secrets に登録したユーザー名「poptop-user」、パスワード「poptop-passwd」を入力し、「接続(C)」ボタンをクリックします。

サーバー側に接続し認証が行われ、うまく接続できた場合、「VPN コネクションの状態」を表示させると次のようになります。

表示された内容を見ると、設定したとおりになっていますね。(^o^)丿
一方、VPNサーバーであるEのLinux Server
のログ( /var/log/messages )も見てみましょう。
Jan 19 02:06:21 cl2 pptpd[5880]: CTRL: Client 98.76.45.32 control connection
started
Jan 19 02:06:21 cl2 pptpd[5880]: CTRL: Starting call (launching pppd, opening
GRE)
Jan 19 02:06:21 cl2 pppd[5881]: pppd 2.4.1 started by root, uid 0
Jan 19 02:06:21 cl2 pppd[5881]: Using interface ppp0
Jan 19 02:06:21 cl2 pppd[5881]: Connect: ppp0 <--> /dev/pts/2
Jan 19 02:06:21 cl2 pptpd[5880]: GRE: Discarding duplicate packet
Jan 19 02:06:23 cl2 pptpd[5880]: CTRL: Ignored a SET LINK INFO packet with real ACCMs!
Jan 19 02:06:24 cl2 pppd[5881]: MSCHAP-v2 peer authentication succeeded
for poptop-user
Jan 19 02:06:24 cl2 pppd[5881]: MPPE 128 bit, stateless compression enabled
Jan 19 02:06:24 cl2 pppd[5881]: found interface eth1 for proxy arp
Jan 19 02:06:24 cl2 pppd[5881]: local IP address 192.168.2.151
Jan 19 02:06:24 cl2 pppd[5881]: remote IP address 192.168.2.152 |
これもまた、設定したとおりの内容ですね。
また、ifconfig でネットワークインターフェースを見てみると、
# ifconfig ppp0
ppp0 Link encap:Point-to-Point Protocol
inet addr:192.168.2.151 P-t-P:192.168.2.152 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1400 Metric:1
RX packets:84 errors:0 dropped:0 overruns:0 frame:0
TX packets:41 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:6837 (6.6 Kb) TX bytes:6800 (6.6 Kb) |
IPアドレス「192.168.2.151」と「192.168.2.152」とがPPPで接続されていることがわかります。
これで、Mobile PCからのVPNが完成です。(^_^)v
(3)問題点
今回VPNサーバーとしたELinux Serverではsambaやapacheも起動させています。
そこで、GのMobile PCからはエクスプローラーのアドレス欄に「\\192.168.2.151」と入力すればアクセスできるのですが、その処理速度が非常に遅いのです。
同様に、インターネットエクスプローラーで「http://192.168.2.151/」をブラウジングしてもレスポンスがもう一つ良くありません。
ちなみに、各マシンのスペックはELinux ServerがCPU=Duron 800MHz、MEM=256MB、GMobile
PCがCPU=Athlen 1GHz、CPU512MBです。
暗号化したデータをやり取りするせいでしょうか。
実際の業務に使用するのには、ちょっとストレスが多いようです。
|