亚马逊云EC2做PPTP SERVER的笔记

 1、在亚马逊控制台上启动实例


2、

3、

4、

5、

6、配置安全组,把你的IP开放所有流量。

7、 用你自己的亚马逊KEY或者生成一个新的KEY来登录EC2

8、开始搭建VPN-PPTP——how to setup VPN server (pptp on CentOS/RedHat/Ubuntu)

查系统位数 getconfig LONG_BIT,查系统版本 cat /etc/issue ,cat /proc/version,按对应版本下载, ppp/pptp汇总地址 

9、如果你的系统是CentOS/RedHat 6:
  yum install ppp
cd /usr/local/src
wget http: //poptop.sourceforge.net/yum/stable/packages/pptpd-1.4.0-1.el6.x86_64.rpm
rpm -Uhv pptpd-1.4.0-1.el6.x86_64.rpm
 
如果编译失败,安装下
yum -y install perl
 


wget 
注:如果你没有安装wget请执行 yum -y install wget

安装pptpd

刚才用了yum安装了ppp,但是这里有个问题,几乎大部分的人都会在这里遇到ppp和pptpd不兼容的错误。因为yum安装ppp,总是安装最新版本的ppp,而由于安装的ppp的版本不同,那么就需要安装对应版本的pptpd才行。(参考我的文章《ppp = 2.4.4 is needed by pptpd-1.3.4-2.rhel5.x86_64的解决办法及原因|大步's blog》)

我们要先查看已经安装的ppp的版本,在去找对应的pptpd版本。我手头刚好有两个vps,一个是前年装的pptp vpn,一个是一年后装的pptp vpn,所以,装的yum install ppp的版本不同。

使用下面的命令查看ppp的版本,前提你是yum安装的ppp。

旧的vps上的ppp版本显示:

#yum list installed ppp

显示:

ppp.i386 2.4.4-2.el5 installed

新的vps上的ppp版本显示;

#yum list installed ppp

显示:

ppp.i686 2.4.5-5.el6 @base

所以,要对根据ppp版本选择对应的pptpd版本。这里我主要列出常用的。

ppp 2.4.4——————>pptpd 1.3.4

ppp 2.4.5——————>pptpd 1.4.0

贴个ppp和pptpd各个版本的下载地址;http://poptop.sourceforge.net/yum/stable/packages/

大家下载的时候注意,分清楚你系统的版本是64位的还是32位的。我个人建议ppp用yum安装,pptpd用rpm的安装,因为如果全都rpm或者源码安装,依赖关系很是烦人。文件名含有数字64的就是64位版本,没有的就是32位版本。可以用下面的命令查看自己的系统是32位还是64位的。

下面假设我这里的ppp是2.4.4版本,然后安装pptpd

第一种安装pptpd的方法是直接用yum安装,让电脑自动选择对应的版本:

加入yum源

#rpm -Uvh http://poptop.sourceforge.net/yum/stable/rhel6/pptp-release-current.noarch.rpm

然后用yum安装pptpd:

#yum install pptpd

这是最省时间和力气的。余下的和手动安装没什么区别了。

   

10、
修改/etc/pptpd.conf
vi /etc/pptpd.conf  
localip 192.168.9.1
remoteip 192.168.9.11-30

localip 本地PPTP SERVER的隧道IP
remoteip 远端PPTP CLIENT的隧道IP

11、添加账号密码至配置文件
vi /etc/ppp/chap-secrets

格式为:(空格分开,不要引号)
user1 * pwd1 *

user2 * pwd2 *  

上门四列数据,user1用户名,*表示任意协议,pwd1代表密码,*表示允许从任何IP访问过来。
四列数据用空格分开。

12、 修改DNS配置
vi /etc/ppp/options.pptpd

ms-dns 8.8.8.8

ms-dns 114.114。114.114

13、修改/etc/sysctl.conf
vi /etc/sysctl.conf

net.ipv4.ip_forward = 1

应用所有配置  

sysctl -p 

14、配置防火墙iptables(这里记得将aws里的1723端口开放,在Security Groups的Inbound开启1723端口,需要开启别的端口的也需要在这里开启。)

防火墙的相关配置可以在我另外一篇文章里看到
vi /etc/sysconfig/iptables

*nat

:PREROUTING ACCEPT [0:0]

:POSTROUTING ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

-A POSTROUTING -s 192.168.0.0/16 -o eth0 -jMASQUERADE

COMMIT

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

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

-A INPUT -p ALL -s 你的IP/29 -jACCEPT

-A FORWARD -p ALL -s 192.168.0.0/16 -jACCEPT

-A INPUT -i eth0 -p tcp --dport 1723 -jACCEPT

-A INPUT -i eth0 -p gre -j ACCEPT

-A FORWARD -i ppp+ -o eth0 -j ACCEPT

-A FORWARD -i eth0 -o ppp+ -j ACCEPT

-A OUTPUT -j ACCEPT

COMMIT

 
最后重启防火墙设置service iptables restart 

15、

将iptables设置为开机自动启动


iptables默认开机不启动的,如有需要请设置为开机自动启动,在SSH中执行以下代码即可。

反操作请把“on”改为“off”


chkconfig iptables on

16、重启PPTP服务
service pptpd restart
将pptp服务加入到开机自启动 

chkconfig pptpd on

17、添加回头路由表 
使用计划任务!

crontab命令主要有3个参数:

  -e :编辑用户的crontab。

  -l :列出用户的crontab的内容。

  -r :删除用户的crontab的内容。

  执行crontab -e,将自动打开编辑器,你可以编辑自己的crontab文件,语法和 /etc/crontab 文件一样,不同的只是,不必再指出执行的用户,编辑后保存即可。

  crontab -l用来查看自己的crontab文件内能,crontab -r删除自己的crontab。

  crontab -e
*/1 * * * * /sbin/route add -net 192.168.0.0 netmask 255.255.0.0 dev ppp0 
每隔1分钟增加一条路由表的命令

crontab命令

功能说明:设置计时器。

语  法:crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr]

补充说明:cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序。只要用户会编辑计时器的配置文件,就可以使用计时器的功能。其配置文件格式如下:
Minute Hour Day Month DayOFWeek Command

参  数: 
 -e  编辑该用户的计时器设置。 
 -l  列出该用户的计时器设置。 
 -r  删除该用户的计时器设置。 
 -u<用户名称>  指定要设定计时器的用户名称。

2,crontab 格式

基本格式 :
* *  *  *  *  command
分 时 日 月 周  命令

第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令

crontab文件的一些例子:

30 21 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每晚的21:30重启apache。

45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每月1、10、22日的4 : 45重启apache。

10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每周六、周日的1 : 10重启apache。

0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。

0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
上面的例子表示每星期六的11 : 00 pm重启apache。

* */1 * * * /usr/local/etc/rc.d/lighttpd restart
每一小时重启apache

* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
晚上11点到早上7点之间,每隔一小时重启apache

0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
每月的4号与每周一到周三的11点重启apache

0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
一月一号的4点重启apache

*/30 * * * * /usr/sbin/ntpdate 210.72.145.44

每半小时同步一下时间 

转载于:https://www.cnblogs.com/itfat/p/7268040.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值