主要配置步骤
  
  1. 安装前检查系统支持
  
  2. 安装必要包
  
  3. 修改相关配置文件
  
  4. 设置开机自动启动 pptpd, iptables
  
  5. iptables配置网络
  
  6. 阿里云ECS可能还需要几项特别设置
  
  7. 启动服务,加载相关匹配文件等
  
  环境,初装的阿里云ECS最低配机型,CentOS 7 x64 (兼及linode的CentOS 7)
  
  主要配置步骤
  
  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
  
  3. 修改相关配置文件
  
  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是用户名密码,其他两字段是星号
  
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent<www.dasheng178.com /artifactId>
<version>2.0.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
 
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Finchley.SR1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>0.2.1.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
 
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>www.gcyL157.com spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.2<www.fengshen157.com/ /version>
<optional>true</optional>
</dependency>
</dependencies>
上述内容主要三部分:
 
parent:定义spring boot的版本
dependencyManagement:spring cloud的版本以及spring cloud alibaba的版本,由于spring cloud alibaba还未纳入spring cloud的主版本管理中,所以需要自己加入
dependencies:当前应用要使用的依赖内容。这里主要新加入了Nacos的配置客户端模块:spring-cloud-starter-alibaba-nacos-config。由于在dependencyManagement中已经引入了版本,所以这里就不用指定具体版本了。
 
  user1 * 111222333 *
  
  d. 服务器允许ip转发内核,编辑配置文件/etc/sysctl.conf,增加如下一行
  
  net.ipv4.ip_forward=1
  
  4. 设置开机自动启动 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
  
  5. 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
  
  6. 阿里云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重启机器也行

CentOS 7下安装pptp服务端手记 ok的更多相关文章

  1. 00004 - CentOS 7下安装pptp服务端

    主要配置步骤 1. 安装前检查系统支持 a. 在安装之前查看系统是否支持PPTP modprobe ppp-compress-18 && echo success 应该输出:succe ...

  2. CentOS 7 下安装 LEMP 服务(nginx、MariaDB/MySQL 和 php)

    原文 CentOS 7 下安装 LEMP 服务(nginx.MariaDB/MySQL 和 php) LEMP 组合包是一款日益流行的网站服务组合软件包,在许多生产环境中的核心网站服务上起着强有力的作 ...

  3. CentOS 7.4安装telnet服务端

    CentOS 7.4安装telnet服务端 安装xinetd服务 # yum -y install xinetd 安装telnet-server # yum -y install telnet-ser ...

  4. CentOS7下安装SVN服务端

    CentOS7下安装SVN服务 1. yum命令即可方便的完成安装# sudo yum install subversion 测试安装是否成功:# svnserve --version 更改svn的默 ...

  5. Linux下安装SVN服务端

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

  6. RedHat下安装Telnet服务端及客户端远程连接配置

    Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式.它为用户提供了在本地计算机上完成远程主机工作的能力. 配置之前请确保网络连通,如防火墙影响连接,请先关 ...

  7. CentOS下安装SVN服务端

    ---恢复内容开始--- 1.使用yum安装 yum install subversion 2.创建仓库 1.创建成功后在svn下面多了几个文件夹. cd /home mkdir svn svnadm ...

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

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

  9. Centos 7.6安装mysql服务端5.7

    环境:centos 7.6,mysql server 5.7.26 新建文件夹/opt/mysql,并cd进去 运行wget http://dev.mysql.com/get/mysql-5.7.26 ...

随机推荐

  1. python开源IP代理池--IPProxys

    今天博客开始继续更新,谢谢大家对我的关注和支持.这几天一直是在写一个ip代理池的开源项目.通过前几篇的博客,我们可以了解到突破反爬虫机制的一个重要举措就是代理ip.拥有庞大稳定的ip代理,在爬虫工作中 ...

  2. 五、利用EnterpriseFrameWork快速开发基于WebServices的接口

    回<[开源]EnterpriseFrameWork框架系列文章索引> EnterpriseFrameWork框架实例源代码下载: 实例下载 前面几章已完成EnterpriseFrameWo ...

  3. ffmpeg 压缩H265 Windows 硬件编码

    硬件NVIDIA:ffmpeg.exe -i input.avi -c:v hevc_nvenc -preset:v fast output.mp4 软件          :ffmpeg.exe - ...

  4. 强化学习读书笔记 - 13 - 策略梯度方法(Policy Gradient Methods)

    强化学习读书笔记 - 13 - 策略梯度方法(Policy Gradient Methods) 学习笔记: Reinforcement Learning: An Introduction, Richa ...

  5. GitHub中webhooks的使用

    目录 GitHub中的webhooks的配置 对配置的webhooks的进行测试 目前在团队在设计一个应用管理的功能,需要了解到常用代码托管的Webhooks的使用.GitHub中的webhooks首 ...

  6. Phaser Matter Collision Plugin 碰撞插件 -- iFiero技术分享

    collision-simple-demo Phaser 自带的Arcade虽然易用,但复杂的物理碰撞明显就不够用了,于是Matter等物理引擎还是不得不学的,以下是Matter物理体碰撞的一个插件, ...

  7. Lua学习笔记(7): 模块

    模块 模块就像是c语言工程项目目录里的.h.c文件或外部依赖项,为某一个文件的代码提供依赖,其实就是把工作分成几个模块,方便项目的管理,提高开发效率和维护效率 在Lua中,模块其实就是一个表,实现方式 ...

  8. ADO.Net之SqlConnection、 Sqlcommand的应用

    ADO.Net之SqlConnection. Sqlcommand的应用 SqlConnection 的介绍与应用 1.介绍与作用 SqlConnection是ADO.NET中的连接类. 使用sqlc ...

  9. IncDec序列:差分+贪心

    IncDec序列 题目描述: 给定一个长度为 n 的数列 a1,a2,…,an,每次可以选择一个区间[l,r],使下标在这个区间内的数都加一或者都减一. 求至少需要多少次操作才能使数列中的所有数都一样 ...

  10. Cannot find class [org.springframework.http.converter.json.MappingJacksonHttpMessageConverter]

    <!--避免IE执行AJAX时,返回JSON出现下载文件 --> <bean id="mappingJacksonHttpMessageConverter" cl ...