CENTOS7.1 VPN架設
在給客戶部署好超融合之後,往往需要遠端支援,這時候為客戶建立一個虛機,並搭建VPN服務,這樣遠端支援時,只需要撥入VPN即可進入客戶的私網環境中進行定位。
參考:
主要步驟:
1.先看看你的主機是否支援pptp,返回結果為yes就表示通過。
modprobe ppp-compress-18 && echo yes |
2 .是否開啟了TUN,有的虛擬機器主機需要開啟,返回結果為cat: /dev/net/tun: File descriptor in bad state。就表示通過。
cat /dev/net/tun |
3.安裝ppp , pptpd 和 iptables。
a.安裝ppp和pptpd
yum -y install ppp pptpd |
b.安裝iptables。這是自帶的,如果沒有的話就安裝。
yum -y install iptables |
4.配置pptpd.conf。
vi /etc/pptpd.conf #找到localip localip 172.16.195.1 remoteip 172.16.195.101-200 #Localip這行是給vpn伺服器設定一個隧道ip #Remoteip是自動分配給客戶端的ip地址範圍。 |
5.配置options.pptpd
vi /etc/ppp/options.pptpd #在末尾新增dns #先去掉debug前面的#,開啟日誌記錄 ms-dns 8.8.8.8 #這是谷歌的,你也可以改成阿里巴巴的或者其它 ms-dns 8.8.4.4 logfile /var/log/pptpd.log |
6.配置連線VPN客戶端要用到的帳號密碼。
vi /etc/ppp/chap-secrets #格式很通俗易懂。 # client為帳號,server是pptpd服務,secret是密碼,*表示是分配任意的ip # Secrets for authentication using CHAP # client server secret IP addresses user pptpd pwd * |
7.配置sysctl.conf
vi /etc/sysctl.conf #新增一行 net.ipv4.ip_forward = 1 #到末尾即可,然後儲存,這個很重要,系統路由模式功能。 sysctl -p #執行這個命令會輸出上面新增的那一行資訊,意思是使核心修改生效 |
8.這個時候把iptables關閉的話是可以連線VPN了,之所以要把iptables關閉是因為沒有開放VPN的埠?客戶如果直接連線的話是不允許的。這裡還需要設定iptables的轉發規則,讓你的客戶端連線上之後能訪問外網。
/sbin/iptables -t nat -A POSTROUTING -s 172.16.195.0/24 -o eth0 -j SNAT --to-source 10.175.249.241 /sbin/iptables -t nat -A POSTROUTING -s 10.175.249.0/24 -o eth1 -j SNAT --to-source 58.96.183.250 /sbin/iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE |
目標網路vpn的內部網路為10.175.249.0/24,vpn伺服器有2個網絡卡,其中一個網絡卡連私有網路(eth0),ip是10.175.249.241,另外一個連線公網(eth1),ip地址是58.96.183.250。這樣就能正常地路由所涉及的網路了。
9.這個時候還是連線不上的,因為iptables把客戶的VPN連線攔截了,不允許連線,所以得開放相應的埠。
具體是哪個埠可以自己查下,我的是預設的,如果你沒有更改過的話也會是預設的。
iptables -I INPUT -p tcp --dport 1723 -j ACCEPT iptables -I INPUT -p tcp --dport 47 -j ACCEPT iptables -I INPUT -p gre -j ACCEPT |
10.保險起見,到了這裡應該重啟一下pptpd服務和iptables服務生效。
systemctl restart iptables systemctl restart pptpd |
11.VPN伺服器搭建完成。
幾個需要注意的點:
1)防火牆新增規則:
iptables -t nat -A POSTROUTING -s 192.168.6.0/255.255.255.0 -j SNAT --to-source 10.10.10.232
iptables -A FORWARD -p tcp --syn -s 192.168.6.0/255.255.255.0 -j TCPMSS --set-mss 1356
iptables -t nat -A POSTROUTING -s 192.168.0.0/255.255.255.0 -o eth0 -j MASQUERADE
iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
iptables -A INPUT -s 192.168.6.0/255.255.255.0 -j ACCEPT
iptables -A INPUT -p UDP --dport 53 -j ACCEPT
2)公網路由器的1723埠需要對映pptp所在伺服器私網ip的1723埠
3)客戶端比如windows撥號上pptp後,就處於vpn私網環境中了,若仍然訪問撥號前的網路,可以加靜態路由。