Centos 6.5 64位安装VPN

系统 Linux
本文讲解了Centos 6.5 64位安装VPN。

一、首先检查你VPS的PPP和TUN有没有启用:

 

  1. cat /dev/ppp   

  2. cat /dev/net/tun  

显示结果为:

  1. cat: /dev/ppp: No such device or address
  2. cat: /dev/net/tun: File descriptor in bad state 

表明通过,上述两条只要有一个没通过都不行。如果没有启用,你可以给VPS提供商Submit 一个 Ticket请求开通:

  1. Hello   
  2. Could you enabled TUN-TAP for me? I want run pptp-vpn on my VPS.   
  3. Thank you.  

确认 PPP 和 TUN 启用后,开始安装 ppp 和 iptables:

  1. yum install -y ppp iptables  

二、安装pptp:

  1. rpm -ivh http://acelnmp.googlecode.com/files/pptpd-1.3.3-1.rhel4.1.i386.rpm(适用32位系统)   
  2. rpm -ivh http://acelnmp.googlecode.com/files/pptpd-1.3.3-1.rhel4.x86_64.rpm(适用64位系统)  

三、配置pptp,编辑/etc/pptpd.conf文件:

  1. vim /etc/pptpd.conf  

把下面字段前面的#去掉:

  1. localip 192.168.0.1   
  2. remoteip 192.168.0.234-238,192.168.0.245  

四、编辑/etc/ppp/options.pptpd 文件:

  1. vim /etc/ppp/options.pptpd  

http://www.tofree.net/posts/236.html

去掉ms-dns前面的#,并使用Google的DNS服务器,修改成如下字段:

  1. ms-dns 8.8.8.8   
  2. ms-dns 8.8.4.4  

http://www.tofree.net/posts/236.html

五、设置VPN账号密码,编辑/etc/ppp/chap-secrets这个文件:

  1. vim /etc/ppp/chap-secrets  

http://www.tofree.net/posts/236.html

六、修改内核设置,使其支持转发,编辑 /etc/sysctl.conf 文件:

  1. vim /etc/sysctl.conf  

将“net.ipv4.ip_forward”的值改为1,同时在“net.ipv4.tcp_syncookies = 1”前面加#

http://www.tofree.net/posts/236.html

七、使 sysctl.conf 配置文件生效并添加 iptables 转发规则:

  1. sysctl -p iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source ***.***.***.*** (***.***.***.***为你VPS的公网IP地址)   
  2. iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 1723 -j ACCEPT #注:这条命令尽量放在防火墙列表前面几条不然可能会阻止  

保存iptables转发规则:

  1. /etc/init.d/iptables save  

重启 iptables:

  1. /etc/init.d/iptables restart  

重启pptp服务:

  1. /etc/init.d/pptpd restart  

设置开机自动运行pptp服务:

  1. chkconfig pptpd on  

设置开机自动运行iptables服务:

  1. chkconfig iptables on  

http://www.tofree.net/posts/236.html 

到此安装配置结束了。

======================以下是疑难问题解答=================================

iptables转发规则写错了会出现错误678提示(亲历),可用

iptables -F 删除旧规则再配置!

iptables使用方法见http://hi.baidu.com/756091339/item/41c7515418213a474fff207b

如果出现错误619则输入命令

  1. rm /dev/ppp  
  2. mknod /dev/ppp c 108 0 

还不管用的话(有时出现错误651),请下载vps 上/var/log/messages 查看日志,最后发现:

  1. Jan  2 07:26:11 fr pptpd[1604]: CTRL: Starting call (launching pppd, opening GRE) Jan 2 07:26:11 fr pppd[1605]: Plugin /usr/lib/pptpd/pptpd-logwtmp.so is for pppd version 2.4.3, this is 2.4.5 Jan 2 07:26:11 fr pptpd[1604]: GRE: read(fd=6,buffer=804fa20,len=8196) from PTY failed: status = -1 error = Input/output error, usually caused by unexpected termination of pppd, check option syntax and pppd logs Jan  2 07:26:11 fr pptpd[1604]: CTRL: PTY read or GRE write failed (pty,gre)=(6,7)  
  2. Jan  2 07:26:11 fr pptpd[1604]: CTRL: Client X.X.X.X control connection finished 

logwtmp插件版本不兼容出错了

vi /etc/pptpd.conf

找到logwtmp,在前面加#

  1. service pptpd restart 

就解决了!!!

如果你需要图形化管理VPN的话,建议使用Webmin:

  1. rpm -ivh http://nchc.dl.sourceforge.net/project/webadmin/webmin/1.510/webmin-1.510-1.noarch.rpm 

注意:如果虚拟机内核不支持MPPE的话,无法使用加密,用WINDOWS默认VPN连接会显示“证书信任错误”。

解决方法:修改/etc/ppp/options.pptpd注释掉require-mppe-128这行,然后windows的vpn拨号的属性改为可选加密,再次连接就成功了。

另外附上有用命令:

使用命令查看pptpd服务进程、端口和接口 使用ps命令检查pptpd进程:

  1. ps -ef |grep pptpd  

使用netstat命令检查pptpd运行的端口:

  1. netstat -nutap | grep pptpd  

使用ifconfig命令查看ppp0接口

centos设置VPN后,客户端连接提示错误800! 

我是直接把iptables关闭了!哈哈 反正先连接进去再说了。

  1. iptables -P INPUT ACCEPT  
  2. iptables -P OUTPUT ACCEPT  
  3. iptables -F  
  4. iptables -X  
  5. iptables -P INPUT ACCEPT  
  6. iptables -P OUTPUT ACCEPT  
  7. /etc/init.d/iptables save   

原文链接:http://my.oschina.net/u/593517/blog/298714

责任编辑:牛小雨 来源: elson的博客
相关推荐

2014-02-19 14:54:58

CentOS 6.5Xen

2012-08-07 14:39:59

Windows 8操作系统

2014-10-17 10:45:29

运维centos6.5安装包

2021-10-19 22:22:17

电脑硬件微软

2014-07-04 11:29:52

CentOSLinux压缩工具

2013-12-04 16:24:47

CentOSCentOS 6.5

2010-12-17 17:25:22

Office 2010

2017-12-28 10:26:31

系统CPU64位

2013-11-27 09:37:38

CentOSCentOS 6.4VPN Server

2018-04-10 15:10:34

Windows64位32位

2013-12-16 17:35:14

2009-12-17 10:05:07

LinuxdtAgeiaPhys

2020-11-03 06:55:41

系统版本64位

2011-04-22 09:49:56

Windows 732位64位

2012-05-29 10:47:36

Windows 7操作系统

2021-03-02 15:02:07

Windows 7微软操作系统

2011-07-28 09:42:58

Windows 764位32位

2015-09-10 16:06:06

32位64位Windows 10

2010-03-22 14:22:21

Python安装

2010-07-12 09:14:17

Windows 864位32位
点赞
收藏

51CTO技术栈公众号