vpn 安装

来源:互联网 发布:柳岩淘宝直播 编辑:程序博客网 时间:2024/05/04 01:18

Poptop,官方网站上的定义是The PPTP Server for Linux,就是利用PPTP(Point to Point Tunneling Protocol,点到点隧道协议)通过Internet访问VPN(Virtual Private Network,虚拟局域网),它允许远程用户安全、花费低廉地从Internet上的任何地方访问公司内部网络。

依据连接方式划分,VPN可以分为Lan to Lan模式和client to Lan模式两种。前者可以将两个彼此独立的局域网连接起来,就像同属于一个局域网内一样,可以利用OpenVPN来实现。而后者就该用到Poptop了。

PPTP使用了client-server模式来建立VPN连接。大多数微软操作系统都内置了PPTP客户端,所以就不需要安装第三方客户端软件,这就比其他VPN技术有了便于安装的优势。

在Poptop出现以前,并没有使用PPTP客户端连接Linux主机的方法存在。使用Poptop,Linux主机可以立即在一个PPTP VPN环境下进行工作。

官方网站:http://www.poptop.org

下载地址:http://sourceforge.net/projects/poptop/

Poptop安装

首先到下载下面4个安装文件。

dkms-2.0.2-1.noarch.rpm  动态内核模块支持的RPM安装包
kernel_ppp_mppe-0.0.4-3dkms.noarch.rpm  MPPE加密协议的内核补丁的RPM安装包
ppp-2.4.3-0(一般系统会自带)
pptpd-1.3.3-1.i386.rpm pptp点对点隧道协议的RPM安装包

依次进行安装完毕后,修改配置文件。

修改Poptop配置文件

这里需要修改如下3个配置文件:

/etc/pptpd.conf
/etc/ppp/options.pptpd
/etc/ppp/chap-secrets

如果你对这3个配置文件中的各个参数不太了解的话,可以到/usr/share/doc/pptpd-1.2.1/samples里面,这个目录存放了相关的sample文件可以阅读。

/etc/pptpd.conf

#指定pptp使用的选项文件
option /etc/ppp/options.pptpd
#把所有的debug信息写入系统日志/var/log/messages
debug
#使用/var/log/wtmp记录客户连接和断开。
Logwtmp
#服务器VPN虚拟接口将分配的IP地址
localip 192.168.0.1
#客户端VPN连接成功后将分配的IP。注意这里一共指定了36个IP地址,如果又超过36个客户进行连接时,超额的客户将无法连接成功。
remoteip 192.168.1.200-210,192.168.1.230-254

注意:为了安全性起见,localip和remoteip尽量不要同一个网段。

/etc/ppp/options.pptpd

#相当于身份验证时的域,一定要和/etc/ppp/chap-secrets中的内容对应,下面会讲到。
name pptpd
#传输加密。ppp-2.4.2以上的版本只支持MPPE加密,内核模块为 ppp_mppe.o
#拒绝pap身份验证
refuse-pap
#拒绝chap身份验证
refuse-chap
#拒绝mschap身份验证
refuse-mschap
#采用mschap-v2(Microsoft Challenge Handshake Authentication Protocol, Version 2)身份验证方式
require-mschap-v2
#注意在采用mschap-v2身份验证方式时要使用MPPE进行加密
require-mppe-128
#给客户端分配DNS地址和WINS服务器地址
ms-dns 202.99.96.68
#ms-wins 10.0.0.4
#启动ARP代理,如果分配给客户端的IP地址与内网网卡在一个子网就需要启用ARP代理。
Proxyarp

/etc/ppp/chap-secrets

#VPN客户账号和密码。
# Secrets for authentication using CHAP
# client server secret IP addresses
“username1” pptpd “password1” *
“username2” pptpd “password2” 192.168.1.201

注意:后面的IP地址栏可以知道次用户登陆后讲分配的IP地址,如果不具体指定,请用*号代替。

开启NAT转发

echo "1" > /proc/sys/net/ipv4/ip_forward

启动pptpd

/sbin/service pptpd start

防火墙设置:

pptp服务使用TCP协议的1723端口和编号47的IP协议(GRE常规路由封装)。如果Linux服务器开启了防火墙功能,就需关闭防火墙功能或设置允许TCP协议的1723端口和编号47的IP协议通过,如可以使用以下命令开放TCP协议的1723端口和编号为47的IP协议

iptables -I INPUT -p tcp --dport 1723 -j ACCEPT
iptables -I INPUT -P gre -j ACCEPT

在Windows中建立VPN连接进行测试。

转载请注明:

本文转自:http://www.liusuping.com/ubuntu-linux/poptop-linux-vpn-server.html

 

CentOS 5.3架设VPN和619错误排除

错误排除
完成以上配置,通过Windows拨号到VPN,一定提示619错误。
引发619错误的原因有很多,比如密码不正确等,都报这个错误。
我们可以通过/var/log/messages查看下日志,找到问题原因

Dec 20 06:45:12 204-74-212-217 pptpd[18317]: CTRL: Client 221.223.48.186 control connection started
Dec 20 06:45:12 204-74-212-217 pptpd[18317]: CTRL: Starting call (launching pppd, opening GRE)
Dec 20 06:45:12 204-74-212-217 pppd[18318]: Plugin /usr/lib/pptpd/pptpd-logwtmp.so is for pppd version 2.4.3, this is 2.4.4
Dec 20 06:45:12 204-74-212-217 pptpd[18317]: GRE: read(fd=6,buffer=804e5a0,len=8196) from PTY failed: status = -1 error = Input/output error, usually caused by unexpected termination of pppd, check option syntax and pppd logs
Dec 20 06:45:12 204-74-212-217 pptpd[18317]: CTRL: PTY read or GRE write failed (pty,gre)=(6,7)
Dec 20 06:45:12 204-74-212-217 pptpd[18317]: CTRL: Client 221.223.48.186 control connection finished

注意到红色部分了吧,就是这个错误。建议我们查看配置语法。
后来有找了一些文档查看,和一条一条屏蔽配置语法
发现是logwtmp这个配置选项出现问题。最后编辑/etc/pptpd.conf文件
注释掉logwtmp选项,重启pptpd服务,就可以正常登陆了。

 

 

把日志放到 syslog

 

6.在/etc/syslog.conf后追加一行:

  daemon.debug /var/log/pptpd.log

  7.重起syslog:

  kill -SIGHUP `cat /var/run/syslogd.pid`

  8.启动pptpd:

  pptpd

  9.debug信息可在 /var/log/pptpd.log中查看

原创粉丝点击