2009年7月23日

自宅サーバーへVPN導入

CentOS 5.3へのVPN(poptop-PPTP)導入メモです

ITMEDIAの記事通りで出来ます。
http://www.itmedia.co.jp/help/howto/linux/vpn/03.html

■ yumからpoptopをインストール

 ソースからは面倒だったので、互換があると思われる
 RHEL5のrpmを適用してみることにする。

http://poptop.sourceforge.net/yum/stable/rhel5/x86_64/
pptp-release-4-3.rhel5.noarch.rpm をrpmコマンドでインストールします

 ------------------------------------------ 
 ※一行に入らないので抜粋。

 # rpm -Uvh http://poptop.sourceforge.net... 
 Retrieving http://poptop.sourceforge.net...
 warning: /var/tmp/rpm-xfer.Wp9TSc: Header V3 DSA signature:・・・
 Preparing... ###################### [100%]
  1:pptp-release ###################### [100%]

 # yum install pptpd
 :
 Installed: pptpd.x86_64 0:1.3.4-1.rhel5.1
 Complete!
 ------------------------------------------ 

■各種ファイルを編集

/etc/pptpd.conf

 localipとremoteip を変更する程度です。

 localip: LAN内で空いてるIPアドレスを指定すればOK
 remoteip :VPNクライアント側に割り当てられるIPアドレスを指定

 localipは、ppp接続時のVPNサーバー側のIPアドレス、
 remoteipは、VPNクライアントに割り当てるIPアドレスです。
 
 例)
 # (Recommended)
 localip 192.168.0.1
 remoteip 192.168.0.234-238,192.168.0.245

/etc/ppp/options.pptpd

 nameの項目を変更します。pptpdのままでもchap-secretsの
 設定があっていれば動作します。
 
 ホスト名を記載するのが一般的かな?

 例)
 name xxx.fqdn.com
 
/etc/ppp/chap-secrets

 CHAP認証用のアカウント設定をします。
 書き方は、設定ファイルの記載例通り。

 server は、options.pptpdのname欄とあわせる必要があります。
 IPアドレスの項目は、特定のIPアドレスからの接続でなければ「*」で。

 # Secrets for authentication using CHAP
 # client server secret IP addresses
 username xxx.fqdn.com "password" *

■開始・終了

 /etc/init.d/pptpd で行います。chkconfigでonにしておけば、
 起動時に上がるように出来ます。
 
 # /etc/init.d/pptpd start
 Starting pptpd: [ OK ]

 # /etc/init.d/pptpd stop
 Shutting down pptpd: [ OK ]

■その他

・ルーターから、TCP/1723をサーバーへ届くようにしないと駄目かも。

・iptable使ってる人は、dpt:1723とproto GRE(47)も届くように。
 ppp+のインターフェースからのアクセスもACCEPTにした方がいいかも?

・LAN内の他のサーバーへアクセスさせるなら、/etc/sysctl.confに
 「net.ipv4.ip_forward = 1」を設定して転送を有効にする。

・接続クライアントが決まってるならtcp_wrapperなどで制限を

■iPhoneから

 iphoneからの接続は、VPNの設定欄でPPTPを選んで、
 それぞれ入力していけばOK!

0 件のコメント:

コメントを投稿