以谁为师 发表于 2015-3-17 22:15:46

linux vpn服务配置

本帖最后由 以谁为师 于 2015-5-25 16:15 编辑

cat /etc/issue查看系统版本

cat/etc/resolv.conf查看本地dns是否


1.看环境否支持

测试是否可用
#modprobe ppp-compress-18 && echo success

显示success   为支持。
#strings '/usr/sbin/pppd'|grep -i mppe|wc --lines

如果以上命令输出为“0”则表示不支持;输出为“30”或更大的数字就表示支持,MPPE(Microsoft Point to Point Encryption,微软点对点加密)





不是 success需要下载软件包
http://poptop.sourceforge.net/yum/stable/   

rhel4 -rhel6
wget http://poptop.sourceforge.net/yum/stable/packages/dkms-2.0.17.5-1.no                                                                                        arch.rpm
wget http://poptop.sourceforge.net/yum/stable/packages/kernel_ppp_mppe-1.                                                                                          

rpm -ivh dkms-2.0.17.5-1.noarch.rpm yum install dkms
rpm -ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm

modprobe ppp-compress-18 && echo ok
再次查看 ok 的话重启服务器





2.安装服务

不能直接yum安装 添加新yum源
# vim /etc/yum.repos.d/Doylenet.repo


name=Doylenet custom repository for CentOS
baseurl=http://files.doylenet.net/linux/yum/centos/5/i386/doylenet/
gpgcheck=1
gpgkey=http://files.doylenet.net/linux/yum/centos/RPM-GPG-KEY-rdoyle
enabled=1

#yum clean all
#yum installppppptpd
# vi /etc/pptpd.conf   配置底部添加

localip 10.88.88.1
remoteip 10.88.88.2-100

分配服务端ip和客户端范围




#vi /etc/ppp/options.pptpd

auth
debug
idle 2592000       //72个小时空闲断开
ms-dns 233.5.5.5
ms-dns 114.114.114.114
logfile /var/log/pptpd.log




添加登陆账号 、密码

#vi /etc/ppp/chap-secrets
    user   pptpd password *

可以用echo直接追加到配置文件
echo -e 'user pptpd password *' >> /etc/ppp/chap-secrets


3.开启路由转发
# vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
#/sbin/sysctl -p    重新载入sysctl变量
#cat /proc/sys/net/ipv4/ip_forward查看是否为1

4.防火墙配置:

开放pptp端口
/sbin/iptables -A INPUT -p tcp --dport 1723 -j ACCEPT

需要注意的是GRE协议用的47端口也需要开放
/sbin/iptables -A INPUT -p tcp --dport 47 -j ACCEPT   或者
/sbin/iptables -A INPUT -p gre -j ACCEPT

伪装上网、SNAT
iptables -A POSTROUTING -t nat -s10.88.88.0/24 -o eth0 -j MASQUERADE 或者
iptables -t nat -A POSTROUTING -j SNAT --to60.164.222.19(公网ip)

iptables -A FORWARD -s 10.88.88.0/24-p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1200
//设置MTU,防止包过大 (关键)   

DNS放行
iptables -A INPUT -p UDP --dport 53 -j ACCEPT

iptables save 保存到配置文件
chkconfig pptpd on
servicepptpd restart

vpn 客户端设置




访问到外网某台设备的远程管理卡ip地址。

报错无法连接问题:
查看日志
echo > /var/log/messages
tail -30 /var/log/messages
遇见两个问题
1.
#Jun 21 15:39:55 center pppd: /usr/lib/pptpd/pptpd-logwtmp.so: wrong ELF class: ELFCLASS32
#Jun 21 15:39:55 center pppd: Couldn't load plugin /usr/lib/pptpd/pptpd-logwtmp.so
2.
#Maximum of 100 connections
解决:
第一个 vi /etc/pptpd.conf 注释掉#logwtmp
第二个客户端ip范围不要超过100


techminister 发表于 2015-3-18 10:20:54

最好 出个 视频教程 :lol

Te5tB99 发表于 2015-3-18 10:24:39

我支持你一下

Antergone 发表于 2015-3-18 14:48:04

额。我来点评下,楼主不知从哪里copy来的文章,也可能是自己改了改。我想说你上面说道的方法80%的VPS都不好使。不过辛苦了。。。。

Wolf-Toom 发表于 2015-3-18 20:49:53

以谁为师 发表于 2015-3-18 21:32:35

Antergone 发表于 2015-3-18 14:48
额。我来点评下,楼主不知从哪里copy来的文章,也可能是自己改了改。我想说你上面说道的方法80%的VPS都不 ...

在公司一台中间服务器上搭建了vpn服务器。配置也比较简单,vps无法使用是不是端口限制了?

Antergone 发表于 2015-3-18 23:13:51

以谁为师 发表于 2015-3-18 21:32
在公司一台中间服务器上搭建了vpn服务器。配置也比较简单,vps无法使用是不是端口限制了? ...

不是,是系统定制编译的时候把模块去掉了,还有的是虚拟化不支持。

r00tc4 发表于 2015-6-28 09:11:39

小龙 发表于 2015-6-29 23:07:04

支持,看起来不错呢!

Jack-5 发表于 2015-6-30 18:59:24

页: [1] 2 3
查看完整版本: linux vpn服务配置