一、VPN服务器环境说明

操作系统:CentOS release 6.4 (Final)

本地网卡:

复制代码

代码如下:

# ifconfig 
em1 Link encap:Ethernet HWaddr 78:2B:CB:42:C3:68 
inet addr:192.168.123.201 Bcast:192.168.123.255 Mask:255.255.255.0 
em2 Link encap:Ethernet HWaddr 78:2B:CB:42:C3:6A 
inet addr:10.100.100.201 Bcast:10.100.100.255 Mask:255.255.255.0 

说明:本地网卡em1负责连接vpn客户端,em2负责与10.100.100.0网段服务器的连接。

本实验目的:

(1)vpn客户端能够成功的连接到vpn服务器上;

(2)vpn服务器可以转发来自vpn客户端对10.100.100.0网段的请求。

二、安装VPN服务器包

使用yum安装ppp和pptp包

复制代码

代码如下:

yum -y install ppp* 
yum -y install pptp* 
如果yum不具备pptp,可到 <a href="http://pptpclient.sourceforge.net">http://pptpclient.sourceforge.net</a> 下载安装,这里建议选用rpm包。

三、 配置VPN服务器

1. 编辑/etc/pptpd.conf文件,找到“locapip”和“remoteip”这两个配置项,将前面#去掉。将后面的IP地址更改为自己需要IP

locapip表示VPN服务器自己的本地IP地址;

remoteip表示VPN客户端连到服务器上将会被分配的IP地址范围。

复制代码

代码如下:

# vi /etc/pptpd.conf 
ppp /usr/sbin/pppd 
option /etc/ppp/options.pptpd 
#logwtmp 
localip 192.168.123.201 
remoteip 192.168.0.234-238,192.168.0.245 

2. 再编辑文件/etc/ppp/options.pptpd,在末尾添加DNS地址

复制代码

代码如下:

# vi /etc/ppp/options.pptpd 
ms-dns 202.106.196.115 
ms-dns 192.168.123.5 

保存退出文件。

3. 添加VPN客户端帐号和口令

复制代码

代码如下:

# vi /etc/ppp/chap-secrets 
# Secrets for authentication using CHAP 
# client server secret IP addresses 
shen pptpd 123456 * 

这里,我们创建了一个vpn用户:shen,口令:123456。一个帐号一行,可以添加多个帐号。

4. 启动VPN服务器

复制代码

代码如下:

# /etc/init.d/pptpd restart 

至此VPN服务器搭建完成了,但实际环境中还需要给VNP服务器增加路由功能

四、配置VPN服务器的路由转发功能

1. 修改内核文件,使系统支持转发

复制代码

代码如下:

#vi /etc/sysctl.conf 

将net.ipv4.ip_forward = 0中的0改为1就OK了。

然后执行下列命令,使其生效:

复制代码

代码如下:

#sysctl –p 

2. 配置防火墙增加转发规则

复制代码

代码如下:

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

说明:来自192.168.123.0网段的访问流经eth0网卡做转发

五、FAQ

1. /var/log/messages日志中出现下面的错误,如何解决?

错误日志内容:from PTY failed: status = -1 error = Input/output error, usually caused by unexpected termination of pppd, check option syntax and pppd logs

解决办法:

修改 /etc/pptpd.conf 文件,注释掉logwtmp 这行,重启pptpd服务。

复制代码

代码如下:

#logwtmp 
# /etc/init.d/pptpd restart 

再次尝试连接vpn客户端,可以成功验证用户和口令了。

相关链接

http://www.jb51.net/os/RedHat/128137.html

http://www.bitbottle.com/archives/132.html/2

http://bbs.51cto.com/thread-708223-1.html

VPN服务器环境搭建的更多相关文章

  1. LNAMP服务器环境搭建(手动编译安装)

    LNAMP服务器环境搭建(手动编译安装) 一.准备材料 阿里云主机一台,操作系统CentOS 6.5 64位 lnamp.zip包(包含搭建环境所需要的所有软件) http://123.56.144. ...

  2. 分布式搜索ElasticSearch单机与服务器环境搭建

    从上方插件官网中下载适合的dist包,然后解压.进入bin目录,可以看到一堆sh脚本.在bin目录下创建一个test.sh: bin=/home/csonezp/Dev/elasticsearch-j ...

  3. CentOS下Web服务器环境搭建LNMP一键安装包

    CentOS下Web服务器环境搭建LNMP一键安装包 时间:2014-09-04 00:50来源:osyunwei.com 作者:osyunwei.com 举报 点击:3797次 最新版本:lnmp- ...

  4. 服务器环境搭建系列(四)-mysql篇

    1.按照上一篇服务器环境搭建系列(三)-JDK篇中的方法检查系统是否已经预装Mysql并卸载. 2.下载mysql,这里是MySQL-server-5.5.25-1.linux2.6.x86_64.r ...

  5. python服务器环境搭建(1)——本地服务器准备

    去年十月底到新公司上班,由于公司旧系统存在各种问题同时不便于扩展,而公司领导对17年寄予很大的期望,用户量.收入要上一个新台阶,我经过全面评估后,决定全部用python重构过,开发一个基于微服务架构的 ...

  6. python服务器环境搭建(2)——安装相关软件

    在上一篇我们在本地的虚拟服务器上安装好CentOS7后,我们的python web服务.自定义的python service或python脚本需要在服务器上运行,还需要在服务器安装各种相关的软件才行, ...

  7. (一)windows7下solr7.1.0默认jetty服务器环境搭建

    windows7下solr7.1.0默认jetty服务器环境搭建 1.下载solr solr7官网地址:http://lucene.apache.org/solr/ jdk8官网地址:http://w ...

  8. 阿里云ECS服务器环境搭建——ubuntu16.04图形界面的安装

    阿里云ECS服务器环境搭建——ubuntu16.04图形界面的安装 最近琢磨着想在服务器上搭建一个hexo博客,于是就在阿里云上买了一个云服务器ECS,远程接入后默认给的是一个命令窗口,没有图形界面, ...

  9. python服务器环境搭建Flask,uwsgi和nginx

    python服务器环境搭建Flask,uwsgi和nginx 环境配置 服务器配置  [部署系统环境Ubuntu] 使用python的Flask框架搭建好网页后台后,便要开始将网站部署到服务器平台了. ...

随机推荐

  1. vijos p1002 dp ***

    链接:点我 一开始的方程式很好写的,但是数据太大,考虑到石子数目很小,我们对其进行离散化,若相邻两点距离超过ya的值,则后面所有点都往前移动,这里ya的值是可以调整的 #include <ios ...

  2. oracle插入数据

    插入数据 insert into comm_error_code_def (ID, ERR_MESSAGE, ERR_CODE, ERR_DESC, NAME, MISC_DESC, STATUS, ...

  3. adb 卸载APP命令和杀死APP命令

    使用adb 卸载APP命令 在cmd命令行下,直接 输入 adb uninstall 包名 比如 adb uninstall com.ghstudio.BootStartDemo 杀死APP命令 先用 ...

  4. cocos2dx游戏开发——捕鱼达人mini版学习笔记(二)——MainMenu的搭建

    一.创建文件~ MainMenuScene.h   MainMenuScene.cpp   MainMenuLayer.h   MainMenuLayer.cpp 那个场景的搭建就不多说了,那个我的打 ...

  5. Activity生命周期图

    首先看一下Android api中所提供的Activity生命周期图 Activity其实是继承了ApplicationContext这个类,我们可以重写以下方法,如下代码: public class ...

  6. ASP.NET获取客户端IP/用户名等信息

    1. 在ASP.NET中专用属性: 获取服务器电脑名:Page.Server.ManchineName 获取用户信息:Page.User 获取客户端电脑名:Page.Request.UserHostN ...

  7. loadrunner关联边界乱码

    问题现象: 如上图中的我想关联 <ins class="curmarker" id="cur2494"></ins><ins cl ...

  8. JAVA定时执行任务的三种方法

    1.利用 java.util.Timer 这个方法应该是最常用的,不过这个方法需要手工启动你的任务 Timer timer=new Timer(); timer.schedule(new ListBy ...

  9. BZOJ4013 : [HNOI2015]实验比较

    首先用并查集将等号缩点,然后拓扑排序判断有没有环,有环则无解,否则通过增加超级源点$0$,可以得到一棵树. 设$f[x][y]$表示$x$子树里有$y$种不同的数字的方案数,由底向上DP. 对于当前点 ...

  10. POJ 3686 & 拆点&KM

    题意: 有n个订单,m个工厂,第i个订单在第j个工厂生产的时间为t[i][j],一个工厂可以生产多个订单,但一次只能生产一个订单,也就是说如果先生产a订单,那么b订单要等到a生产完以后再生产,问n个订 ...