主要配置步骤

  1. 安装前检查系统支持

a. 在安装之前查看系统是否支持PPTP

modprobe ppp-compress-18 && echo success

应该输出:success

yum install kernel-devel

b. 是否开启TUN/TAP

cat /dev/net/tun

应该输出:cat: /dev/net/tun: File descriptor in bad state

c. 是否开启ppp

cat /dev/ppp

应该输出:cat: /dev/ppp: No such device or address

如果环境不满足上面3个条件,表示很可能不支持pptp。 例外:linode的xen、kvm服务器,也是支持的pptp的。可能是linode内核是定制的,并不是外部ko模块,与原版CentOS表现有所不一致。
2. 安装必要包

a. 首先安装epel源

yum install epel-release

b. 安装pptp相关包

yum install ppp pptpd net-tools iptables-services

  1. 修改相关配置文件

a. 主配置文件 /etc/pptpd.conf

结尾处增加如下两行,分别是pptp服务的虚拟网段网关,及分配给客户端的地址范围。

localip 192.168.9.1
remoteip 192.168.9.101-199

b. pptpd配置文件/etc/ppp/options.pptpd,结尾增加两行,给虚拟网段用的dns服务,可以使用主机商提供的dns服务器地址。

ms-dns 100.100.2.136
ms-dns 100.100.2.138

如果是linode等海外服务器,可以使用谷歌的公共dns服务器地址

ms-dns 8.8.8.8
ms-dns 8.8.4.4

c. 设置pptpd vpn服务器用户名密码,编辑文件 /etc/ppp/chap-secrets, 每行一套帐号,该文件默认有简短说明。一行帐号行示例如下,以空格分隔的4个字段:第1、3是用户名密码,其他两字段是星号

user1 * 111222333 *

d. 服务器允许ip转发内核,编辑配置文件/etc/sysctl.conf,增加如下一行

net.ipv4.ip_forward=1

  1. 设置开机自动启动 pptpd, iptables

ln -s /usr/lib/systemd/system/pptpd.service /etc/systemd/system/multi-user.target.wants/
ln -s /usr/lib/systemd/system/iptables.service /etc/systemd/system/multi-user.target.wants

  1. iptables配置网络

a. iptables配置,配置虚拟网段NAT支持。如果pptp客户端不需要上网,可以忽略本步骤。

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

,注意其中的eth0是本机网卡设备名,按实际情况修改;或按虚拟网段设置NAT,如下

iptables -t nat -I POSTROUTING -s 192.168.9.0/24 -o eth0 -j MASQUERADE

b. 开放pptp端口1723,允许转发

iptables -I INPUT 7 -m state --state NEW -p tcp --dport 1723 -j ACCEPT
iptables -P FORWARD ACCEPT

c. 保存iptables规则

service iptables save

  1. 阿里云ECS可能还需要几项特别设置

a. 如果windows下连接pptp,如果遇到519错误,是因为缺少内核模块 ip_nat_pptp ,运行modprobe ip_nat_pptp 即可加载,但最好设置开机自动加载:新建文件 /etc/modules-load.d/ip_nat_pptp.conf 内容为如下一行

ip_nat_pptp

b. 可能还要重建ppp文件:

rm /dev/ppp
mknod /dev/ppp c 108 0

c. 阿里云机器还要修改mtu:修改文件/etc/ppp/ip-up,在exit 0 前加入一行:

ifconfig $1 mtu 1500

d. 阿里云控制台里的安全区域,看上去跟防火墙或iptables类似的东西,要开启相应的端口。
7. 启动服务,加载相关匹配文件等

sysctl -p
systemctl start pptpd

或者单粗暴的reboot重启机器也行

原文:https://www.centos.bz/2018/03/centos-7下安装pptp服务端手记/

CentOS 7下安装pptp服务端手记相关推荐

  1. Win7下安装SVN服务端

    目录 背景 svn安装包 操作步骤 1.创建仓库 2.基础设置 创建服务 开放端口 参考文献 背景 因为同事的苹果本无法修改mac地址连接内网,无论下驱动也好,命令方式也好,都无法修改mac,打客户电 ...

  2. CentOS 7.4安装telnet服务端

    一.检查是否安装telnet [root@Solin Solin]# rpm -qa | grep telnet [root@Solin Solin]# 二.安装telnet客户端.服务端(如果已安装 ...

  3. Linux下安装SVN服务端

    第一步:检查是否安装 使用版本查看检查svn是否已经安装过,如果反馈版本则已经安装过就不需要再次安装,如没有反馈版本信息则可通过yum安装软件. [root@localhost /]# svnserv ...

  4. linux怎么安装git服务器,linux下安装git服务端

    [root@m2 ~]# yum install -y epel-* [root@m2 ~]# yum install -y git 创建仓库目录 [root@m2 ~]# mkdir /mnt/gi ...

  5. 开发基础 - Linux下安装SVN服务端

    第一步:检查是否安装 使用版本查看检查svn是否已经安装过,如果反馈版本则已经安装过就不需要再次安装,如没有反馈版本信息则可通过yum安装软件. [root@localhost /]# svnserv ...

  6. Linux下安装SVN服务端的方法步骤

    一.yum 安装 yum install subversion 若需查看svn安装位置,可以用以下命令: rpm -ql subversion 二.配置 1.创建仓库 我们在/home下建立一个名为s ...

  7. Linux下安装SVN服务端小白教程

    安装 使用yum安装非常简单: yum install subversion 配置 创建仓库 我们这里在/home下建立一个名为svn的仓库(repository),以后所有代码都放在这个下面,创建成 ...

  8. Linux下安装SVN服务端教程

    1.安装 使用yum安装非常简单: yum install subversion 2.1. 创建仓库 我们这里在/home下建立一个名为svn的仓库(repository),以后所有代码都放在这个下面 ...

  9. Linux下安装SVN服务端(全)

    1.简介 Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和搭建SVN服务器. yum install subversion 2.配置 2.1.创建仓库 ...

最新文章

  1. 顶配12699 元、没有5G,“浴霸三摄”的iPhone你会买吗?
  2. 一文总结Datawhale系列分享
  3. NLP通用模型decaNLP诞生,一个模型搞定十大自然语言常见任务
  4. 贝叶斯分类器期望损失函数理解及衍生的全新理解
  5. Collections.toArray方法使用的坑
  6. Kibana Guide ( Kibana 向导 )
  7. 阿里云 AI 编辑部获 CCBN 创新奖,传媒行业解决方案背后的黑科技
  8. 椭圆极点极线性质_笔记:关于极点极线的一些思考
  9. dev中循环展示图片的样式怎么写_图中的这种样式怎么用HTML写?
  10. VC++ 在两个程序中 传递字符串等常量值的方法:使用了 WM_COPYDATA 消息的
  11. 2021年最值得推荐的13个提高开发效率工具,程序员必备
  12. 频率学派还是贝叶斯学派?聊一聊机器学习中的MLE和MAP
  13. 华为捕苹果,小米做黄雀
  14. 计算机网络-扩展路由器
  15. 安卓帧数监测软件_安卓查看帧数的软件
  16. AD10 PCB等长布线----蛇形布线
  17. 【彩虹代刷v5.8】去除后门增加多套模板修复多处BUG[全开源免授权]
  18. [NIPS 18] Stacked Semantics-Guided Attention Model for Fine-Grained Zero-Shot Learning
  19. 开学季,中学生用什么样护眼台灯好?中学生用护眼台灯排行
  20. 飞猪大数据:85后带来春节旅行新气氛

热门文章

  1. 浙江中医药大学第十二届大学生程序设计竞赛 部分题解
  2. python爬虫-京东登录
  3. 乐高JAVA编程_编程和乐高机器人,是一样的吗?学习这些有用吗?
  4. NoSQL Scylla Open Source 3.0食量比Cassandra大
  5. LSCP: Locally Selective Combination in Parallel Outlier Ensembles-学习笔记
  6. 解读PMP考点:质量管理中规划质量、实施质量保证、实施质量控制的对比
  7. 电脑浏览器主页面被恶意劫持无法修改的解决方法
  8. Python文件夹压缩
  9. java如何设置成中文字体,Java程序中文字体配置
  10. 文件夹里面的文件批量改名字