快速业务通道

Centos下vpn(pptpd)的部署

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-03-24

一、安装
centos 5下面安装pptpd最省事的安装就是下载rpmpptpd-1.3.4-1.rhel5.1.i386.rpm,然后直接执行 rpm –ivh pptpd-1.3.4-1.rhel5.1.i386.rpm .幸运的是这个包没有其他依赖,因此安装应该是异常的顺利.
安装完rpm包后,自动生成几个配置文件,主配置文件/etc/pptpd.conf,选项文件/etc/ppp/options.pptpd, 帐号文件/etc/ppp/chap-secrets.后面配置pptpd主要就是对这几个文件进行修改.
二、vpn服务器端的配置
(一) 修改主配置文件/etc/pptpd.conf.只需要加入下面两行:

localip 172.16.195.1
remoteip 172.16.195.101-200

Localip这行是给vpn服务器设置一个隧道ip
Remoteip是自动分配给客户端的ip地址范围.
(二) 修改选项文件/etc/ppp/options.pptpd.需要设定分配给客户端的dns,因此仅需把ms-dns前的注释去掉,改成可用的dns如下:

ms-dns 61.135.154.5

ms-dns 159.226.240.66

为了方便查看调试信息,debug行前面的注释取消即可.Dump前的注释也取消.
(三) 添加帐号.通过编辑文件/etc/ppp/chap-secrets逐行加入;一个账号占一行.一行分4列,其表示如下:

用户名

服务器名

密码

ip

没有字符数限制

Pptpd

用双引号的话,密码就不能包含双引号了

* 表示有pptpd随机分配ip


账号和密码是明文的,需要妥善设置访问权限.一个设置好的账号文件与下列项目类似:
“Yijiaxin” pptpd “ThunderSt!123#” *
四、运行pptpd.执行命令service pptpd start或者执行/etc/init.d/pptpd 即可启动它.通过检查进程、查看系统日志来确定pptpd是否正常.
五、客户端配置(windows).这个应该很容易了...
六、拨号登录.

七、设置路由及ip伪装.需要在这里可以登录vpn服务器,但没有设置相关的转发规则,因此还是没办法访问vpn后面的私有网络或者通过vpn访问互联网(windows机器会在状态栏的网络连接图标显示一个黄色的感叹号)
(一)
开启ip转发功能:修改配置文件

/etc/sysctl.conf,使net.ipv4.ip_forward = 1
Couldn''t load plugin /usr/lib/pptpd/pptpd-logwtmp.so这个错误应该注释掉/etc/pptpd.conf 下的logwtmp 一行就好了

(二)
写个脚本文件,实现路由,其内容大致如下:

[root@max-vpn ~]# more /usr/local/bin/vpn_route.sh

#!/bin/bash

/sbin/iptables -t nat -A POSTROUTING -s 192.168.195.0/24 -o eth0 -j SNAT --to-source 61.135.251.50

/sbin/iptables -t nat -A POSTROUTING -s 172.16.100/24 -o eth1 -j SNAT --to-source 192.168.195.166

/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

目标网络/vpn的内部网络为192.168.195.0/24,vpn服务器有2个网卡,其中一个连接公网(eth0),ip地址是61.135.251.51,另外一个网卡连私有网络,ip192.168.195.166.这样就能正常地路由所涉及的网络了.手动执行一下这个脚本,看客户端(windows)是否能访问目标网络里的机器:最简单的方法就是ping,假定目标网络里有一个192.168.195.100的机器,并请允许icmp通过,ping 192.168.195.100 ,正常的话,再进一步访问这个服务器(如远程登录).没有问题的话,把它加在开机自启里面.为安全起见,你可以在这个脚本里加更多的iptables规则.

Linux client install VPN

1. 使用yum安装ppppptp
yum -y install ppp

yum -y install pptp

yum install pptp pptp-setup -y
如果yum不具备pptp,可到 http://pptpclient.sourceforge.net 下载安装,这里建议选用rpm包.
本人安装采用的是:http://sourceforge.net/projects/pptpclient/files/pptp/pptp-1.7.2/pptp-1.7.2-3.rhel5.i386.rpm/download
rpm -ivh ./pptp-1.7.2-3.rhel5.i386.rpm
2.
配置pptp
pptpsetup --create vpn
连接名称(自定义) --server VPN服务器IP --username VPN用户名 --password VPN密码

执行完成以后会生成文件 /etc/ppp/peers/vpn连接名称(自定义)
编辑该文件:
vi /etc/ppp/peers/vpn
连接名称(自定义)
将该文件修改并完善为如下:
# written by pptpsetup
pty "pptp VPN
服务器IP --nolaunchpppd"
lock
#noauth
nobsdcomp
nodeflate
name VPN
用户名
remotename vpn
连接名称(自定义)
ipparam vpn
连接名称(自定义)
require-mppe-128
refuse-pap
refuse-chap
refuse-eap
refuse-mschap
编辑文件 /etc/ppp/chap-secrets
vi /etc/ppp/chap-secrets
内容如下:
# Secrets for authentication using CHAP
# client server secret IP addresses
VPN
用户名 vpn连接名称(自定义) "VPN密码" *
3.
复制命令
cp /usr/share/doc/ppp-2.4.4/scripts/pon /usr/sbin/
cp /usr/share/doc/ppp-2.4.4/scripts/poff /usr/sbin/
chmod x /usr/sbin/pon /usr/sbin/poff
4.
vpn
pon vpn
连接名称(自定义)
5.
查看是否连接
ifconfig
————————————————————————————————————-
ppp0 Link encap:Point-to-Point Protocol
inet addr:192.168.2.224 P-t-P:192.168.2.200 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1396 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:80 (80.0 b) TX bytes:80 (80.0 b)

————————————————————————————————————-

6.
断开连接
poff vpn
连接名称(自定义)

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号