请参考以下步骤:(centos6.5中测试通过)

1、服务器端安装软件

1.1 首先安装ppp,命令:

[root@test ~]#yum install -y ppp

提示Complete! ,表示安装成功;

1.2 安装pptpd,安装命令如下:

[root@test ~]#yum clean all

[root@test ~]#yum makecache

[root@test ~]#yum -y install pptpd

2、配置pptpd

2.1编辑/etc/pptpd.conf,命令如下

[root@test ~]#vi /etc/pptpd.conf

#localip 192.168.0.1

#remoteip 192.168.0.234-238

修改成

#用100网段是因为大多数路由器的内网都是192.168.0.0的网段,避免冲突

localip 192.168.100.1

remoteip 192.168.100.234-238,192.168.100.245

即将这两行第一个字符“#”去掉,保存退出。

注: 以上设置的IP地址: localip 192.168.100.1和remoteip 192.168.100.2-200分别是vpn服务器的地址和vpn客户端获取地址段,也可以自行设置。

2.2编辑/etc/ppp/options.pptpd,命令如下

[root@test ~]#vi /etc/ppp/options.pptpd

#ms-dns 10.0.0.1

#ms-dns 10.0.0.2

改成

ms-dns 223.5.5.5

ms-dns 223.6.6.6

即将这两行第一个字符“#”去掉,而后修改DNS的IP。

注: ms-dns 223.5.5.5和 ms-dns  223.6.6.6是设置的dns地址,可以设置成其他的,例如:ms-dns 114.114.114.114等。

2.3设置使用pptp的用户名和密码命令:

[root@test ~]#vi /etc/ppp/chap-secrets

打开后只有两行,而且一个账号都没有

# Secrets for authentication using CHAP

# client server secret IP addresses

根据需要添加账号,每行一个。按照:“用户名 pptpd  密码 ip地址”的格式输入,每一项之间用空格分开,例如:test pptpd 123456 *  (*表示所有IP),保存并退出。

3、修改内核设置,以支持数据转发:

[root@test ~]#vi /etc/sysctl.conf

将net.ipv4.ip_forward=0 改成net.ipv4.ip_forward=1

保存并退出

执行以下命令使修改后的参数生效

[root@test ~]#sysctl -p

4、添加iptables转发规则

iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth1 -j MASQUERADE

iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -j SNAT --to-source 外网ip地址/或者内网IP地址

注: 如果本地需要访问云服务中的ECS、RDS、OSS内网,可以设置为内网IP地址,如果是本地需要通过VPN端访问公网,可以设置为外网IP地址

nat规则清除: iptables -t nat -F ,如果需要修改最好先清除一下,否则问题多。

另外要注意的是,如果你的Iptables限制vpn段的IP可以访问80端口,那么使用http://外网IP:80 这样是不能访问的,因为服务器检测到要连接80端口的IP不是vpn段的IP。可以将域名解析到192.168.100.1 即vpn的网关上来访问80端口。

添加好转发规则后,使用如下命令保存设置并重启防火墙

[root@test ~]#/etc/init.d/iptables save  

[root@test ~]#/etc/init.d/iptables restart

5、重启pptp服务

[root@test ~]#/etc/init.d/pptpd restart

此处要注意,其实此时pptp还没运行起来,所以使用restart重启,会显示Shutting down pptp [FAILED]。还会有一个警告,可以忽略。如不放心可以再用以上命令重启一下pptp就非常顺利的运行了。

6、设置pptp和iptables随系统启动

[root@test ~]#chkconfig pptpd on 

[root@test ~]#chkconfig iptables on

至此,pptp服务端安装结束。

在本地计算机“网络和共享中心”,设置新的连接或网络,即可访问VPN。

7. 设置一下防火墙,保证192.168.100.0/24可以正常访问服务。

#!/bin/bash

iptables -F

iptables -X

iptables -P INPUT DROP

iptables -P OUTPUT ACCEPT

iptables -P FORWARD DROP

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

iptables -A INPUT -p tcp -s 192.168.100.0/24 --dport 80 -j ACCEPT

#iptables -A INPUT -p tcp -s 123.125.174.237 --dport 8080 -j ACCEPT

#svn server port

#iptables -A INPUT -p tcp --dport 3690 -j ACCEPT

#iptables -A INPUT -p icmp -j ACCEPT

#pptp

iptables -A INPUT -p tcp --dport 1723 -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -j SNAT --to-source 10.44.12.223

iptables -A INPUT -i lo -p all -j ACCEPT

iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT

iptables-save > /etc/sysconfig/iptables

linux-阿里云ECS部署PPTP(centos)的更多相关文章

  1. 部署:阿里云ECS部署Docker CE

    1 部署阿里云ECS,选择CentOS操作系统,并启动实例: 2 部署Docker CE: a.检查centos版本: $ cat /etc/redhat-release CentOS Linux r ...

  2. 阿里云ECS 环境是CentOS 7.3安装mongodb3

    CentOS安装mongodb https://www.cnblogs.com/zddzz/p/10069912.html CentOS安装mongodb 我的是阿里云ECS 环境是CentOS 7. ...

  3. 用阿里云ecs部署kubernetes/K8S的坑(VIP、slb、flannel、gw模式)

    1 阿里云ecs不支持keepalived vip 1.1 场景描述 本来计划用keepalived配合nginx做VIP漂移,用以反代多台master的apiserver的6443端口,结果部署了v ...

  4. 阿里云ECS部署ES

    背景 最近越来越多的公司把业务搬迁到云上,公司也有这个计划,自己抽时间在阿里云和Azure上做了一些小的尝试,现在把阿里云上部署ES和kibana记录下来.为以后做一个参考,也希望对其他人有帮助. 这 ...

  5. ECS7天实践进阶训练营Day2:基于阿里云ECS部署MediaWiki

    一.概述 MediaWiki是全球最著名的开源Wiki程序,运行于PHP+MySQL环境,MediaWiki从2002年被作为维基百科的系统软件,并由大量其他应用实例(例如萌娘百科),因此MediaW ...

  6. 阿里云ECS部署Redis主备哨兵集群遇到的问题

    一.部署 详细部署步骤:https://blog.csdn.net/lihongtai/article/details/82826809 Redis5.0版本需要注意的参数配置:https://www ...

  7. Linux学习笔记之阿里云ECS部署LAMP环境

    LAMP指Linux+Apache+MySQL/MariaDB+Perl/PHP/Python,是一组常用来搭建动态网站或者服务器的开源软件.它们本身都是各自独立的程序,但是因为常被放在一起使用,拥有 ...

  8. 第一次用阿里云ecs配置pptp vpn遇到的问题。

    在国外没办法使用一些国内一些涉及版权的网站,各种音乐和视频都没法看很不爽.自己租了个ecs.vps上安装vpn网上很多教程,但是有些地方只是copy上去还是不行的,得根据vps的具体情况改动一下才可以 ...

  9. 阿里云ECS服务器,CentOS 7.4配置jdk+tomcat+mysql

    参考博客: https://mp.weixin.qq.com/s?__biz=MzIxMzk3Mjg5MQ==&mid=2247484020&idx=1&sn=6e0aa07f ...

随机推荐

  1. 关于python的import

    在软件包里,必须添加__init__.py文件. 想要对外公开的module必须在__init__.py内import一次,这样这些module才能被外部代码import并调用.

  2. BUILD_BUG_ON 的解释

    知乎上个问题<C 语言有什么奇技淫巧?>排名第一的是一个“抖机灵”的答案. C有一个鲜为人知的运算符叫”趋向于”, 写作“-->”.比如说如果要实现一个倒数的程序,我们可以定义一个变 ...

  3. 什么是USBMini接口

    USB的接口有四种.一种是大头,有A型和B型两种,其中A型最常见,就是我们用的最多的标准的USB接头:一种是小头的,也就是USB Mini,也有A型和B型两种,其中B型应用最多,主要应用于手机.MP4 ...

  4. [iOS 多线程 & 网络 - 4.0] - AFN框架简单使用

    A.AFN基本知识 1.概念 AFNetworking 是对NSURLConnection的封装 运行效率没有ASI高(因为ASI基于CFNetwork),但是使用简单 AFN支持ARC     B. ...

  5. HTML5实现动画三种方式

    编者注:作者以一个运动的小车为例子,讲述了三种实现HTML5动画的方式,思路清晰,动画不仅仅是canvas,还有css3和javascript.通过合理的选择,来实现最优的实现. PS:由于显卡.录制 ...

  6. Webstorm2016激活码[ 转]

    转至:http://blog.csdn.net/tingwode2014_/article/details/51063657 43B4A73YYJ-eyJsaWNlbnNlSWQiOiI0M0I0QT ...

  7. linux信号量超过系统限制

    部署一台新服务器,信号量报错,观察也没有key冲突,错误分析及解决如下: 创建一个不存在的信号量集返回参数错误的报错,因为信号量集的信号量数量超过了系统限制. 系统默认 /home/poc#ipcs ...

  8. 在VB中使用Linq To SQLite注意事项

    昨天使Linq To SQLite 支持VB,今天在VB中写了几条Linq语句,发现了几个问题: 1.在Linq To SQLite中的Linq语句查询后并不是得到的匿名数据类,而是将Linq转换为S ...

  9. Codeforces gym 100685 F. Flood bfs

    F. FloodTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/gym/100685/problem/F Desc ...

  10. Codeforces Round #315 (Div. 1) A. Primes or Palindromes? 暴力

    A. Primes or Palindromes?Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://poj.org/problem?id=3261 ...