一、准备

1、检查是否支持pptp

modprobe ppp-compress-18 && echo yes

  yes支持

2、是否开启tun

cat /dev/net/tun

  返回cat: /dev/net/tun: File descriptor in bad state

二、安装

sudo apt-get install pptpd

  

三、配置

1、配置pptp

vi /etc/pptpd.conf

  

取消掉以下 2 行的注释:
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245

 

2、新建文件 sudo vi /etc/ppp/options.pptpd #编辑,保存

name pptpd                        #自行设定的VPN服务器的名字,可以任意
#refuse-pap #拒绝pap身份验证
#refuse-chap #拒绝chap身份验证
#refuse-mschap #拒绝mschap身份验证
require-mschap-v2 #为了最高的安全性,我们使用mschap-v2身份验证方法
require-mppe-128 #使用128位MPPE加密
ms-dns 8.8.8.8 #设置DNS
ms-dns 8.8.4.4
proxyarp #启用ARP代理,如果分配给客户端的IP与内网卡同一个子网
#debug #关闭debug
lock
nobsdcomp
novj
novjccomp
#nologfd #不输入运行信息到stderr
logfile /var/log/pptpd.log #存放pptpd服务运行的的日志

3、设置iptables

sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o bond0 -j MASQUERADE

  

iptables -I INPUT -p 47 -m state -state ESTABLISHED -j ACCEPT
iptables -I OUTPUT -p 47 -m state -state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT -p tcp -sport 1723 -m state –state ESTABLISHED -j ACCEPT
iptables -I OUTPUT -p tcp -dport 1723 -m state –state NEW,ESTABLISHED -j ACCEPT

  或

iptables -A INPUT -p 47 -j ACCEPT
iptables -A OUTPUT -p 47 -j ACCEPT
iptables -A INPUT -p TCP -s 0.0.0.0/0 --source-port 1723 -j ACCEPT
iptables -A OUTPUT -p TCP -d 0.0.0.0/0 --destination-port 1723 -j ACCEPT

4、分配账号

sudo vi /etc/ppp/chap-secrets
这个是用户列表文件
在里面添加账户按如下格式
username pptpd "password" *
username为你的用户名password为你的密码,<strong>密码用引号引起</strong>,最后的*号表示允许在任意IP连接到服务

5、设置DNS

sudo vi /etc/ppp/pptpd-options
找到ms-dns,取消掉注释,改成你喜欢的DNS比如114.114.114.114, 8.8.8.8, 8.8.4.4

6、IP转发

  

sudo vi /etc/sysctl.conf
取消掉 net.ipv4.ip_forward=1 这一行的注释.

  

修改立即生效
sysctl -p

7、重启

service pptpd restart

  【注意】

客户端连接VPN时,“在远程网络上使用默认网关”没有勾选,这会造成不能访问VPN网络中的DNS服务器的问题。

如果勾选了“在远程网络上使用默认网关”,除了到局域网的通信之外的所有通信都将发送到VPN网络。

PPTP的搭建的更多相关文章

  1. 业级PPTP服务器搭建企

    搭建企业级PPTP服务器   分类: Linux服务篇 undefined 本文收录在企业项目实战系列 一.VPN 介绍 1.介绍 虚拟私人网络(英语:Virtual Private Network, ...

  2. CentOS 6.3上搭建PPTP VPN

    系统版本:CentOS 6.3_x86_64 eth0:172.16.10.72(实验环境当公网IP使用) eth1:192.168.100.50 1.检测是否支持ppp模块 # cat /dev/p ...

  3. RouterOS安装以及搭建DHCP PPPoE PPTP L2TP服务

    1.安装routeros https://mikrotik.com/download 网站下载routeros镜像 vdi格式 :VirtualBox默认创建的硬盘文件格式 vmdk格式:VMware ...

  4. windows2003 单网卡 搭建vpn ,windows 2008 R2 类似吧。网上转的,自己加了点经验总结

    先说说可能的坑,也就是我自己搭建的时候碰到的问题. 其实搭建起来很简单,我不知道我总结的对还是不对,但是按下面这样操作做绝对能搭好!因为我就是按这样搭起来的,但是我发现,好像pptp已经被墙了,我也不 ...

  5. linux(centos)下SVN服务器如何搭建

    检测是否符合pptp的搭建环境的要求 使用下面的指令: 123 cat /dev/net/tun如果这条指令显示结果为下面的文本,则表明通过:cat: /dev/net/tun: File descr ...

  6. 搬瓦工搭建VPN

    搬瓦工VPS的PPTP VPN搭建其实和上面都是很简单的,这个要用到上面的搬瓦工VPS控制面板. Root shell - advanced 下载 centos 6 一键安装包 wget --no-c ...

  7. CentOS 6下的VPN搭建

    PPTP 全称为 Point to Point Tunneling Protocol — 点到点隧道协议,是VPN协议中的一种.虚拟专用网(VPN)被定义为通过一个公用网络(通常是因特网)建立一个临时 ...

  8. CentOS Linux VPS安装IPSec+L2TP VPN

    CentOS Linux VPS安装IPSec+L2TP VPN 时间 -- :: 天使羊波波闪耀光芒 相似文章 () 原文 http://www.live-in.org/archives/818.h ...

  9. D.T SOFTWARE (1) 软件架构直播答疑课程

    今晚的d.t课程 1项目需求 PPTP服务搭建完成PPTP服务器的搭建,用户重新拨号获得新IP后,要求拔PPTP VPN成功时,也获取到新的公网IP,而且能通过代理上网.VNC服务安装用户可以通过VN ...

随机推荐

  1. HDU2819 Swap —— 二分图最大匹配

    题目链接:https://vjudge.net/problem/HDU-2819 Swap Time Limit: 2000/1000 MS (Java/Others)    Memory Limit ...

  2. usdt源码编译安装

    1.依赖关系Boost >= 1.53 2.安装依赖包You will need appropriate libraries to run Omni Core on Unix, please s ...

  3. mysql查询表的字符集

    mysql查询表的字符集 SHOW CREATE TABLE user;

  4. 揭开自然拼读法(Phonics)的神秘面纱

    揭开自然拼读法(Phonics)的神秘面纱 自然拼读法  (Phonics),是指看到一个单词,就可以根据英文字母在单词里的发音规律把这个单词读出来的一种方法.即从“字母发音-字母组合发音-单词-简单 ...

  5. linux环境下oracle静默安装

    一.安装环境 1.linux版本:redhat6.3_x86_64 2.oracle版本:Oracle Database 11g Enterprise Edition Release 11.2.0.3 ...

  6. [Codeforces 1011E] Border

    [题目链接] https://codeforces.com/contest/1011/problem/E [算法]  裴蜀定理 : 设为n个整数,d是它们的最大公约数,那么存在整数 使得  显然 , ...

  7. CF 809 D Hitchhiking in the Baltic States —— 思路+DP(LIS)+splay优化

    题目:http://codeforces.com/contest/809/problem/D 看题解,抄标程...发现自己连 splay 都快不会写了... 首先,题目就是要得到一个 LIS: 但与一 ...

  8. bzoj4720

    期望dp n久以前做过,再做一遍 你只能决定决策,不能决定结果,这是这道题的关键,因为我们换了教室不一定成功,所以我们应该这样设dp状态,dp[i][j][k],第i天,换j次,换没换,转移: dp[ ...

  9. Visual Studio一些插件

    让JavaScript像C#一样支持Region http://www.cnblogs.com/codealone/p/3647127.html

  10. MYSQL自动备份策略的选择(转载)

    原文地址: http://shinepaopao.iteye.com/blog/1938568