CentOS6にVPNクライアント(pptp)をインストールする


これまではVPNルーター構築の手順を紹介してきましたが、今回はCentOS6にVPNクライアント(pptp、pptp-setup)をインストールして接続してみます。

■ PPTPクライアント インストール

PPTPクライアントはbaseリポジトリにあるので、yumでインストールすることにします。

$ sudo yum install pptp pptp-setup

 

■ iptables設定

/etc/sysconfig/iptables ファイルに「-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT」の設定が入っていれば、特に設定は要らないはずです。もしgreトンネルの通信が阻害されているようなら、以下の2行を付け足してください。

-A INPUT -p gre -j ACCEPT
-A OUTPUT -p gre -j ACCEPT

 

■ PPTPクライアント初期設定

pptpsetupコマンドで以下のパラメーターを投入します。

識別名: SAKURA
VPNサーバー IPアドレス: 133.242.xxx.xxx
ユーザー名: nullpopopo
パスワード: P@sSw0rD

$ sudo pptpsetup --create "SAKURA" --server "133.242.xxx.xxx" --username "nullpopopo" --password "P@sSw0rD" --encrypt

上記コマンドを打つと /etc/ppp/peers/SAKURA ファイルができあがります。

$ cat /etc/ppp/peers/SAKURA
# written by pptpsetup
pty "pptp 133.242.xxx.xxx --nolaunchpppd"
lock
noauth
nobsdcomp
nodeflate
name nullpopopo
remotename SAKURA
ipparam SAKURA
require-mppe-128

パスワードは /etc/ppp/chap-secrets に書かれます。

$ sudo cat /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client	server	secret			IP addresses

# added by pptpsetup for SAKURA
nullpopopo SAKURA "P@sSw0rD" *

 

■ VPN接続

VPN接続はpppdコマンドで行います。

$ sudo pppd call SAKURA updetach

 

■ ルーティング設定

VPNが繋がったら、最初にルーティングを確認してみましょう。

$ ip r
10.0.0.10 dev ppp0  proto kernel  scope link  src 10.0.0.231 
133.242.xxx.xxx via 192.168.0.254 dev eth0  src 192.168.0.200 
192.168.0.0/24 dev eth0  proto kernel  scope link  src 192.168.0.200 
169.254.0.0/16 dev eth0  scope link  metric 1002 
default via 192.168.0.254 dev eth0

デフォルトゲートウェイがブロードバンドルーターのIPアドレス(192.168.0.254)になっているので、VPNルーターのIPアドレス(10.0.0.10)に変更し、既存のデフォルトゲートウェイを削除します。

$ sudo route add -net 10.0.0.0 gw 10.0.0.10 netmask 255.0.0.0 dev ppp0
$ sudo route delete default
$ sudo route add default gw 10.0.0.10

それでは設定後のルーティングを確認しましょう。

$ ip r
10.0.0.10 dev ppp0  proto kernel  scope link  src 10.0.0.231 
133.242.xxx.xxx via 192.168.0.254 dev eth0  src 192.168.0.200 
192.168.0.0/24 dev eth0  proto kernel  scope link  src 192.168.0.200 
169.254.0.0/16 dev eth0  scope link  metric 1002 
10.0.0.0/8 via 10.0.0.10 dev ppp0 
default via 10.0.0.10 dev ppp0

Google Public DNSというIaaS(ICMP as a Service)への経路をtracerouteコマンドで表示して、1hop目が対向ルーターのIPアドレスになっていることを確認します。

$ traceroute -n 8.8.4.4
traceroute to 8.8.4.4 (8.8.4.4), 30 hops max, 60 byte packets
 1  10.0.0.10  25.861 ms  26.634 ms  26.578 ms
 2  153.120.128.2  28.960 ms  28.930 ms  28.896 ms
 3  103.10.113.25  26.415 ms  26.406 ms  27.349 ms
 4  103.10.113.101  26.310 ms 103.10.113.17  26.278 ms 103.10.113.9  28.627 ms
 5  103.10.113.69  28.575 ms 103.10.113.57  27.164 ms 103.10.113.117  36.059 ms
 6  157.17.131.5  40.026 ms 157.17.131.241  36.589 ms  36.763 ms
 7  157.17.130.22  47.664 ms  47.637 ms 157.17.130.45  41.718 ms
 8  209.85.143.31  41.664 ms 210.171.224.96  42.533 ms 59.106.251.33  47.445 ms
 9  216.239.47.91  41.541 ms 209.85.143.29  39.252 ms  40.192 ms
10  209.85.251.219  41.045 ms 8.8.4.4  39.018 ms 216.239.47.89  38.967 ms

 

■ VPN切断

VPN接続が終わったら、VPN切断とルーティングテーブルの変更を行います。

$ sudo pkill -f "pppd call SAKURA updetach"
$ sudo route add default gw 192.168.0.254

以上です。ね、簡単でしょう?

[amazonjs asin="4822224961" locale="JP" title="まんがでわかるLinux シス管系女子 (日経BPパソコンベストムック)"]