您好,欢迎访问本站!登录后台查看权限
  • CuteDNS项目重启,提供去广告DNS服务
  • 本站服务器已加入SETI@home志愿计算
  • 部分文章转自网络,侵权请告知删除

Linux CentOS6 配置VPN

教程 俎天润 2017-04-12 1021 次浏览 0个评论

之前一直使用的是windows搭建的VPN,不过最近发现速度有些慢,经常需多次连接才成功,故想试试linux下的VPN效果如何,于是拿一台英国的VPS进行操作,系统是CentOS 6.5。本文记录的是我的整个搭建过程,还有其中遇到的问题及解决方法。

1、安装ppptd

1) rpm pptp

# rpm -Uvh http://poptop.sourceforge.net/yum/stable/rhel6/pptp-release-current.noarch.rpm

Linux CentOS6 配置VPN 教程 第1张

rpm pptp

2) install pptpd

# yum install pptpd

Linux CentOS6 配置VPN 教程 第2张

install pptpd

2、配置VPN本地及客户端IP

首先我们要编辑/etc/pptpd.conf文件:

# vim /etc/pptpd.conf

注:执行vim指令若返回“-bash: vim:command not found”则表示未安装vim

找到“localip”和“remoteip”这两个配置项,将前面的“#”注释符去掉,更改为你期望的IP段值。localip表示服务器的本地IP,remoteip表示分配给客户端的IP地址,可以设置为区间,我们使用pptp默认的配置即可:

localip 192.168.0.1remoteip 192.168.0.234-238,192.168.0.245

 Linux CentOS6 配置VPN 教程 第3张

配置VPN本地及客户端IP

注意,这里的IP段设置,将直接影响后面的iptables规则添加命令,请注意匹配的正确性,如果你嫌麻烦,建议就用本文的配置,就可以一直复制命令和文本使用了。

3、配置VPN DNS

我们编辑/etc/ppp/options.pptpd文件,。

# vim /etc/ppp/options.pptpd

在末尾添加下面两行(Google DNS):

ms-dns 8.8.8.8ms-dns 8.8.4.4

Linux CentOS6 配置VPN 教程 第4张

配置VPN DNS

4、设置VPN账号密码

我们需要编辑/etc/ppp/chap-secrets这个文件:

# vim /etc/ppp/chap-secrets

在这个文件里面,按照“用户名 pptpd 密码 *”的形式编写,一行一个账号和密码,比如添加用户名为client01,密码为123456的用户,则添加如下内容:

client01 pptpd 123456 *

Linux CentOS6 配置VPN 教程 第5张

设置VPN账号密码

5、设置支持转发

编辑/etc/sysctl.conf文件:

# vim /etc/sysctl.conf

将“net.ipv4.ip_forward”改为1,变成下面的形式:

net.ipv4.ip_forward=1

保存退出。

Linux CentOS6 配置VPN 教程 第6张 

设置支持转发

接下来还需执行下面的命令来使它生效:

# sysctl -p

Linux CentOS6 配置VPN 教程 第7张

使sysctl设置生效

6、添加iptables转发规则

输入下面的指令:

# iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

需要注意的是,这个指令中的“192.168.0.0/24“是根据之前的配置文件中的“localip”网段来改变的,如果你设置的是“10.0.0.1”网段,则应该改为“10.0.0.0/24”。此外,还有一点需要注意的是eth0,如果你的外网网卡不是eth0,而是eth1(比如SoftLayer的服务器就是这样的情况),那么请记得将eth0也更改为对应的网卡编号eth1,不然是上不了网的。

然后我们输入下面的指令让iptables保存我们刚才的转发规则,以便重启系统后不需要再次添加:

# /etc/init.d/iptables save

然后我们重启iptables:

# /etc/init.d/iptables restart

Linux CentOS6 配置VPN 教程 第8张

添加iptables转发规则

7、重启pptp服务

输入下面的指令重启pptp:

# /etc/init.d/pptpd restart

Linux CentOS6 配置VPN 教程 第9张

重启pptp服务

看到返回:

Shutting down pptpd: [OK]Starting pptpd: [OK]

则表示重启成功。如果重启失败,可以先停止,再启动。命令为:

# /etc/init.d/pptpd stop# /etc/init.d/pptpd start

8、设置开机自动运行服务

我们最后一步是将pptp和iptables设置为开机自动运行,这样就不需要每次重启服务器后手动启动服务了,当然你不需要自动启动服务的话可以忽略这一步,输入指令:

# chkconfig pptpd on# chkconfig iptables on

至此,VPN配置完毕!

怎样安装vim

先判断vim的安装情况,输入:

# rpm -qa|grep vim

如果 vim 已经正确安装,会返回下面的三行代码:

vim-minimal-7.0.109-6.el5vim-common-7.0.109-7.2.el5vim-enhanced-7.0.109-7.2.el5

如果少了其中的某一条,比如 vim-enhanced 的,就用命令:

# yum -y install vim-enhanced

来安装,如果上面的三条都沒有返回, 可以直接用:

# yum -y install vim*

命令安装。

Linux CentOS6 配置VPN 教程 第10张

安装vim

如何判断服务器外网网卡是eth0还是eth1?

判断服务器外网网卡编号是eth0还是eth1,我们可以通过一个命令的返回信息进行判断。输入:

# ethtool eth0

如果返回:

Settings for eth0:             Link detected: yes

则表明外网网卡编号是eth0

Linux CentOS6 配置VPN 教程 第11张

判断网卡编号是否eth0

修改DNS,屏蔽网页广告,使用本站提供的净网DNS -> 

Linux CentOS6 配置VPN 教程 第12张


已有 1021 位网友参与,快来吐槽:

发表评论