歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> CentOS 7搭建VPN服務器

CentOS 7搭建VPN服務器

日期:2017/2/27 15:57:04   编辑:Linux教程
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.先更新一下再安裝
yum update
b.安裝ppp和pptpd
yum -y install ppp pptpd
c.安裝iptables。
這是自帶的,如果沒有的話就安裝
yum install iptables
4.配置pptpd.conf
vi /etc/pptpd.conf    #找到localip,去掉開始的那個#符號
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245
#這些是默認的,一般不需要去修改,分配給客戶端的ip就是234到238之間,你也可以往大了寫,看你的客戶端有多少。
5.配置options.pptpd
vi /etc/ppp/options.pptpd      #在末尾添加dns
ms-dns  8.8.8.8       #這是谷歌的,你也可以改成阿裡巴巴的或者其它
ms-dns  8.8.4.4
6.配置連接VPN客戶端要用到的帳號密碼
vi /etc/ppp/chap-secrets    #格式很通俗易懂。
#   client為帳號,server是pptpd服務,secret是密碼,*表示是分配任意的ip
# Secrets for authentication using CHAP
# client        server     secret                  IP addresses
  count         pptpd    771297972            *
7.配置sysctl.conf
vi /etc/sysctl.conf
#添加一行    net.ipv4.ip_forward = 1    到末尾即可,然後保存
sysctl -p    #運行這個命令會輸出上面添加的那一行信息,意思是使內核修改生效
8.這個時候把iptables關閉的話是可以連接VPN了,之所以要把iptables關閉是因為沒有開放VPN的端口,客戶如果直接連接的話是不允許的。這裡還需要設置iptables的轉發規則,讓你的客戶端連接上之後能訪問外網
iptables -t nat -F
iptables -t nat -A POSTROUTING -s 192.168.0.234/24 -j SNAT --to 你的服務器的公網IP
#192.168.0.234/24是你分配給客戶的ip,後面的那個是你的服務器的公網IP
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
Copyright © Linux教程網 All Rights Reserved