VNP服务器IP地址为:192.168.6.6

一、编译安装:
 
注意:可能需要ppp、libcap、libcap-devel ncurses-devel RPM 包支持,如果没有请安装 libcap、libcap-devel RPM 包!
#yum install -y libcap libcap-devel ncurses-devel ppp
#tar zxvf pptpd-1.3.4.tar.gz
#cd pptpd-1.3.4
#./configure -prefix=/usr/local/pptpd -enable-bcrelay -with-libwrap
#make
#make install

二、配置 PPTP

编译安装完成后,首先需要复制原始的 pptpd 配置文件:
#cp samples/pptpd.conf /usr/local/pptpd/
#cp samples/options.pptpd /usr/local/pptpd/

上面cp的两个文件是 pptpd 的两个配置文件。
pptpd.conf 是 pptpd 的基本配置文件;
options.pptpd 是 pptpd 的扩展功能属性配置文件。

三.修改配置文件

1.对 pptpd.conf 进行设置:
#vim  /usr/local/pptpd/pptpd.conf
在文件末尾添加
localip 192.168.6.6        #VPN服务器IP地址
remoteip 192.168.6.10-15   #客户端连接时VNP服务器分配IP地址范围

2.对 options.pptpd 进行配置:

#vim /usr/local/pptpd/options.pptpd
在文件末尾添加DNS地址
ms-dns 219.141.140.10
ms-dns 202.106.0.20

#说明:
name VPN-Server  pptpd server 的名称。
refuse-pap  拒绝 pap 身份验证模式。
refuse-chap  拒绝 chap 身份验证模式
refuse-mschap  拒绝 mschap 身份验证模式。
proxyarp  建立 ARP 代理键值。
debug   开启调试模式,相关信息同样记录在 /var/logs/message 中。
lock   锁定客户端 PTY 设备文件。
nobsdcomp  禁用 BSD 压缩模式。
novj  
novjccomp  禁用 Van Jacobson 压缩模式。
nologfd   禁止将错误信息记录到标准错误输出设备(stderr)

四.添加帐户

pptpd server 连接帐户控制文件位于:/etc/ppp/chap-secrets
#vim /etc/ppp/chap-secrets 配置文件
添加如下内容:
# client  server   secret   IP addresses
"lixuan"  pptpd    "123456"     *

#说明:
上面第二行代码的四项内容分别对应第一行中的四项。
"client" 是Client端的VPN用户名
"server"对应的是VPN服务器的名字,该名字必须和/etc/ppp/options.pptpd文件中指明的一样,或者设置成"*"号来表示自动识别服务器;
"secret"对应的是登录密码
"IP addresses"对应的是可以拨入的客户端IP地址,如果不需要做特别限制,可以将其设置为“*”号.

五.设置IP伪装转发

配置文件/etc/sysctl.conf
#vim /etc/sysctl.conf
  修改以下内容:
net.ipv4.ip_forward = 1
  保存、退出后执行:
/sbin/sysctl -p

六.启动pptpd server

#/usr/local/pptpd/sbin/pptpd -c /usr/local/pptpd/pptpd.conf -o /usr/local/pptpd/options.pptpd

检查 pptpd server 是否启动成功:
# netstat -ntlp|grep 1723
如果看到有进程 tcp 1723 端口监听就说明 pptpd server 已经启动成功了!

将pptpd服务添加到开机启动
#vim /etc/rc.local   #末尾添加如下内容:
/usr/local/pptpd/sbin/pptpd -c /usr/local/pptpd/pptpd.conf -o /usr/local/pptpd/options.pptpd

七.此时Windows客户端连接会提示连接不上,可以通过查看/var/log/message 来发现错误根源,一般会提示以下两个错误:

错误1.
#less /var/log/message   #会提示如下错误
/usr/lib/pptpd/pptpd-logwtmp.so: cannot open shared object file: No such file or directory

解决方法:
#mkdir /usr/lib/pptpd -p    #在/usr/lib/目录中新建pptpd 目录
# ln -s /usr/local/lib/pptpd/ppptpd-logwtmp.so /usr/local/lib/pptpd/

停止启动pptpd服务

#pkill pptpd

#/usr/local/pptpd/sbin/pptpd -c /usr/local/pptpd/pptpd.conf -o /usr/local/pptpd/options.pptpd

错误2.
再次加载库文件时报版本错误
#less /var/log/message  #提示如下错误:
Plugin /usr/lib/pptpd/pptpd-logwtmp.so is for pppd version 2.4.3, this is 2.4.5

解决方法:

( 修改下源文件版本信息,重新编译生成pptpd-logwtmp.so并替换现有的
切换到源码包目录,pptpd-logwtmp.so源文件在源码包的plugins目录下
将patchlevel.h中的#define VERSION   "2.4.3"  改成 #define VERSION     "2.4.5" )

#cd /opt/software/pptpd-1.3.4/plugins/      #进入安装源文件目录中
#cp patchlevel.h patchlevel.h.bak           #备份pacthclevel.h
#mv pptpd-logwtmp.so pptpd-logwtmp.so.bak   #重命名pptpd-logwtmp.so
#sed -i 's/2\.4\.3/2\.4\.5/' patchlevel.h   #将patchlevel.h中的#define VERSION   "2.4.3"  改成 #define VERSION     "2.4.5"
#make                                       #编译,在当前目录生成新的pptpd-logwtmp.so 文件
#cp pptpd-logwtmp.so /usr/local/pptpd/lib/pptpd/pptpd-logwtmp.so #复制pptpd-logwtmp.so到指定目录中,替换原文件

重启pptpd服务

#pkill pptpd
#/usr/local/pptpd/sbin/pptpd -c /usr/local/pptpd/pptpd.conf -o /usr/local/pptpd/options.pptpd

# tail -f /var/log/messages
Plugin /usr/lib/pptpd/pptpd-logwtmp.so loaded. (提示加载成功)

八.Windows客户端连接验证:

新建VPN连接,在VPN连接属性常规选项卡中设置好VPN服务器IP地址:192.168.6.6 点击确定,然后输入用户名:lixuan 密码:123456 连接即可

大功告成!!!!!

linux下配置 PPTP VPN 公网VPN

安装方法前面我都介绍过了,具体可以看前面的文章。 现在我们需要注意以下几点就可以配置公网VPN了。
①:注意pptpd.conf里面的配置
option /app/pptpd/etc/options.pptpd
logwtmp
debug
localip 192.168.6.6
remoteip 192.168.6.10-15
需要把localip 192.168.6.6改为公网IP
然后在remoteip 下面添加一行
listen 公网IP

保存配置

重启pptpd服务生效。

Linux-VPN安装配置方法的更多相关文章

  1. mysql 5.7.13 安装配置方法(linux)-后期部分运维

    mysql 5.7.13 安装配置方法图文教程(linux) 学习了:https://www.cnblogs.com/zhao1949/p/5947938.html /usr/local/mysql是 ...

  2. linux php安装扩展方法 查找配置文件

    如何在linux中查看nginx.apache.php.mysql配置文件路径了,如果你接收一个别人配置过的环境,但没留下相关文档.这时该怎么判断找到正确的加载文件路径了.可以通过以下来判断 1.判断 ...

  3. Linux下安装配置MySQL5.7服务器

    Linux下安装配置MySQL服务器 一.安装环境 ============ OS:centos6.8 MySQL:mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz ...

  4. 阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7)

    阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7) 1.效果图 1 2. 部署步骤 1 1. mysql安装附加(centos7) 7 ...

  5. 详解在Linux中安装配置MongoDB

    最近在整理自己私人服务器上的各种阿猫阿狗,正好就顺手详细记录一下清理之后重装的步骤,今天先写点数据库的内容,关于在Linux中安装配置MongoDB 说实话为什么会装MongoDB呢,因为之前因为公司 ...

  6. 阿里云服务器Linux CentOS安装配置(零)目录

    阿里云服务器Linux CentOS安装配置(零)目录 阿里云服务器Linux CentOS安装配置(一)购买阿里云服务器 阿里云服务器Linux CentOS安装配置(二)yum安装svn 阿里云服 ...

  7. 阿里云服务器Linux CentOS安装配置(九)shell编译、打包、部署

    阿里云服务器Linux CentOS安装配置(九)shell编译.打包.部署 1.查询当前目录以及子目录下所有的java文件,并显示查询结果 find . -name *.java -type f - ...

  8. 阿里云服务器Linux CentOS安装配置(八)nginx安装、配置、域名绑定

    阿里云服务器Linux CentOS安装配置(八)nginx安装.配置.域名绑定 1.安装nginx yum -y install nginx 2.启动nginx service nginx star ...

  9. 阿里云服务器Linux CentOS安装配置(七)域名解析

    阿里云服务器Linux CentOS安装配置(七)域名解析 1.购买域名 登录阿里云,左侧菜单点击[域名],然后[域名注册],完成域名购买.(一般首年45元) 2.添加域名解析 在域名列表里点击你的域 ...

  10. 阿里云服务器Linux CentOS安装配置(六)resin多端口配置、安装、部署

    阿里云服务器Linux CentOS安装配置(六)resin多端口配置.安装.部署 1.下载resin包 http://125.39.66.162/files/2183000003E08525/cau ...

随机推荐

  1. 线程-run和start

    import java.lang.Thread; class Machine extends Thread{ public void run() { int a ; for( a = 0 ; a &l ...

  2. Python爬虫:常用浏览器的useragent

    1,为什么需要修改UserAgent 在写python网络爬虫程序的时候,经常需要修改UserAgent,有很多原因,罗列几个如下: 不同Agent下看到的内容不一样,比如,京东网站上的手机版网页和p ...

  3. CSS自学笔记(16):CSS3 用户界面

    CSS3中,也新增了一些关于用户界面的属性,这些属性可以重设元素或者盒子的尺寸.轮廓等等. 新增的部分属性的浏览器支持情况 属性 浏览器支持 resize IE Firefox Chrome Safa ...

  4. debian install & configure(2)-drivers-ati

    依赖apt-get install build-essential cdbs fakeroot dh-make debhelper debconf libstdc++6 dkms libqtgui4 ...

  5. 百用随身系统 Veket Linux

    Veket Linux 是一个随身的可装在U盘的Linux操作系统. 特点:1,随身系统,装在U盘可走遍天下,它几乎支持“所有”的电脑,就我所接触得到的电脑它都支持并成功驱动,就这十多年的安装的电脑都 ...

  6. 又优化了一下 Android ListView 异步加载图片

    写这篇文章并不是教大家怎么样用listview异步加载图片,因为这样的文章在网上已经有很多了,比如这位仁兄写的就很好: http://www.iteye.com/topic/685986 我也是因为看 ...

  7. ArcGIS学习推荐基础教程摘录

    ###########-------------------摘录一--------------------------########### ***************************** ...

  8. 基于Platinum库的DMS实现(android)

    接上篇博文:基于Platinum库的DMR实现(android) 文章讲述了如何使用Platinum库实现DMR 今天同样使用该库,来讲解一下DMS的实现 关于该库如何编译,请参考这篇博文:NDK下 ...

  9. 关于if (!cin)以及while (cin >> word)

    首先注意: 1.每一个输入(输出)对象就代表一个输入(输出)流: 2.输入(输出)对象中的流状态成员标记了输入(输出)流当前的状况,当eofbit.badbit.failbit三个标记位均为0时表示流 ...

  10. leetcode Jump Game II python

    @link http://www.cnblogs.com/zuoyuan/p/3781953.htmlGiven an array of non-negative integers, you are ...