大家使用VPN主要解決兩個問題:
1、不同網段的互訪問題,比如從外網訪問內網,或者從一個內網訪問另一個內網。
2、網絡屏蔽問題,通過VPN路由訪問一些不能訪問的網站,這個你懂的。 根據網上的資料,很快解決了第一個問題但是
第二個問題折騰了兩天才搞好。現在將安裝的過程記錄下來,給需要的朋友提供一個參考吧。 常用的VPN服務器一般分兩
種,一種是SSL VPN,代表軟件有openvpn,這個VPN軟件有Windows下的客戶端軟件;另外一種是PPTP VPN,Windows自帶這種
VPN的客戶端支持。本文介紹的VPN環境是在yardvps購買的xen型的vps,安裝的32位debian 5系統,使用PPTP VPN。
確定內核是否支持mppe:
modprobe ppp-compress-18 && echo ok
如果顯示ok,內核已經具備了mppe支持。
1、使用SSH工具登陸,最好是root權限的用戶:
2、更新軟件包數據庫: apt-get update
3、debian自帶pptpd軟件包: apt-get install -y pptpd
4、編輯/etc/pptpd.conf,在文件最後添加: localip 192.168.92.1 remoteip 192.168.92.11-16
localip 是vpn服務器的地址 remoteip 是vpn客戶端的地址,可以配置成一個地址範圍
5、編輯/etc/ppp/pptpd-options:
name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns 8.8.8.8
ms-dns 8.8.4.4
#nodefaultroute
#debug
#dump
proxyarp
lock
nobsdcomp
#nologfd
logfile /var/log/pptpd.log
name 是vpn服務名稱 refuse/require 是數據加密協議定義 ms-dns 這裏使用的Google提供的免費DNS
6、編輯/etc/ppp/chap-secrets,添加訪問賬戶: username pptpd password * 依次是:用戶名 VPN服
務名稱 密碼 分配IP地址 *表示不限制
7、編輯/etc/sysctl.conf: net.ipv4.ip_forward=1 去掉前邊的#號,然後執行以下命令使配置生效:
sysctl -p
8、編輯/etc/rc.local,在系統啓動時添加路由:
iptables -t nat -A POSTROUTING -s 192.168.92.0/24 -j SNAT --to-source
"你的服務器的公開IP" 添加到文件內容的最前邊就行了。
然後執行命令: chmod +x /etc/rc.local 設置rc.local的執行權限。
9、執行命令重啓系統: reboot
10、在windows客戶端創建VPN連接。 訪問以下地址試試: ping 192.168.92.1
如果不成功,一般就是配置的問題了,自己再調整下配置試試。
修改pptp配置後,可以通過以下命令重啓pptpd: /etc/init.d/pptpd restart
修改rc.local文件需要重啓操作系統,使用 reboot
還有些其它可能碰到的問題,這裏提供幾個:
1、表現爲:只能訪問有限的網站,SSH 可用,但 scp 不行,ftp 能握手,但傳不了文件。
在/etc/rc.local中添加如下命令,然後重啓。
iptables A FORWARD -s 192.168.92.0/24 -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j TCPMSS --set-mss 1356
2、連接過程中無法通過帳號密碼驗證,syslog顯示: pppd[26133]: Couldn’t open the /dev/ppp device: No such file or directory
客戶端提示619錯誤。 執行以下命令: mknod /dev/ppp c 108 0