最近花了点精力,在ec2上配置了PPTP VPN.
之所以选择PPTP,最主要还是因为其简单,很多路由器也都支持PPTP.
方案上参考了 http://blog.lifeclaw.com/articles/how-to-install-pptp-vpn-service-on-ubuntu/
向该文作者表示一下感谢。
安装:
sudo apt-get -y install pptpd
配置:
pptpd.conf
sudo vi /etc/pptpd.conf
#确保如下选项的配置
option /etc/ppp/pptpd-option #指定PPP选项文件的位置
debug #启用调试模式(这个可以不开启,我最终使用后还是关闭的。因为ec2空间有限。但是一开始用来查问题很有用))
localip 10.90.0.1 #VPN服务器的虚拟ip. 不需要和你的实际ip对应。 你可以任意指定
remoteip 10.90.0.2-100 #分配给VPN客户端的虚拟ip。 自己用,这些足够了
pptpd-options
sudo vi /etc/ppp/pptpd-options
#确保如下选项的配置
name pptpd #pptpd服务的名称
refuse-pap #拒绝pap身份认证模式
refuse-chap #拒绝chap身份认证模式
refuse-mschap #拒绝mschap身份认证模式
require-mschap-v2 #允许mschap-v2身份认证模式
require-mppe-128 #允许mppe 128位加密身份认证模式
ms-dns 8.8.8.8 #使用Google DNS. 这个DNS你可以自己指定。
ms-dns 8.8.4.4 #使用Google DNS
proxyarp #arp代理
debug #调试模式. 一样,该项目在最终使用时被我关闭。这里临时开启
dump #服务启动时打印出所有配置信息
lock #锁定TTY设备
nobsdcomp #禁用BSD压缩模式
认证信息配置:
sudo vi /etc/ppp/chap-secrets
#格式:用户名 服务类型 密码 分配的ip地址
allen * xxxxxxx *
#第一个*代表服务可以是PPTPD也可以是L2TPD,第二个*代表随机分配ip
这里特别说明一下日志问题。 默认的debug日志是通过syslog 输出的。不过ubuntu已经用rsyslog替代了syslog. 如果想要看到日志文件,必须做额外配置:
sudo vi /etc/rsyslog.conf
#添加
daemon.debug /var/log/pptpd.log
重新启动rsyslog:
sudo service rsyslog stop
sudo service rsyslog start
重启pptpd服务:
sudo /etc/init.d/pptpd restart
此时可以尝试vpn拨号连接了。如果有问题可以在/var/log/pptpd.log中查看。
此时拨号以后还不能上网。必须做NAT转发。
sudo sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf
sudo sysctl -p
iptables:
#注意这里eth0代表你的外网网卡,请用ifconfig查看或者咨询网络管理员
sudo iptables -t nat -A POSTROUTING -s 10.90.0.1/24 -o eth0 -j MASQUERADE
#如果上面的命令报错,那么可以尝试以下的命令,其中xxx.xxx.xxx.xxx代表你的VPS外网ip地址
sudo iptables -t nat -A POSTROUTING -s 10.90.0.1/24 -o eth0 -j SNAT --to-source xxx.xxx.xxx.xxx
#设置MTU来确保过大的包不会被丢弃(据说有人举到过某些网站不能访问问题。因此做了此项设置。但是本人没有遇到。因此这步本人跳过. mss的大小请根据各人实际情况调整)
sudo iptables -I FORWARD -s 10.90.0.1/24 -p tcp --syn -i ppp+ -j TCPMSS --set-mss 1300
以上iptable可以写入/etc/rc.local,确保启动时候加载。
好了,收工。
分享到:
相关推荐
在Ubuntu上,通过`sudo apt-get install apache2` 安装Apache,之后可以配置 `/etc/apache2/sites-available` 目录下的虚拟主机文件,管理网站和端口。还可以通过安装额外模块增强功能,例如PHP支持、SSL证书等。 ...
主要介绍了阿里云ubuntu16.04搭建pptpd,需要的朋友可以参考下
CentOS 6 PPTPD一键安装程序。 改名为pptp.sh,权限改x,再运行即可。
pptpd配置[文].pdf
1、验证内核是否加载了MPPE模块: modprobe ppp-compress-18 && echo MPPE is ok ...3、配置PPP和PPTP的配置文件: grep ^[^#] /etc/ppp/options.pptpd vi /etc/ppp/options.pptpd name pptpd #re
pptpd一键安装包,linux下pptp服务器的必备工具.
linux手动安装pptp 所需安装包
### Ubuntu搭建Server – DHCP #### 环境与软件需求 - **系统**: Ubuntu 10.04 Desktop ...需要注意的是, 在实际操作过程中, 应根据具体的网络环境和需求调整配置, 并确保具备足够的权限来进行安装和配置操作。
pptpd-1.3.4.rar
pptpd-1.3.4-2.rhel5.x86_64.rpm
3. **配置PPTP服务**: 在`/etc/pptpd.conf`文件中配置本地IP地址和远程客户端预分配的IP地址。 4. **配置DNS解析**: 在`/etc/ppp/options.pptpd`文件中指定远程客户端使用的DNS服务器地址。 5. **启用路由转发**: ...
pptpd-1.3.4-1.rhel5.1.i386.rpm
docker-pptpd 一个 docker pptpd 图像
pptpd-1.3.4-1.el5.sme.x86_64.rpm
2.安装iptables,ppp,pptpd: yum install ppp iptables pptpd 或者:yum install epel-release||yum install pptpd 3.配置pptpd.conf vim /etc/pptpd.conf #去掉localip和remoteip的注释 localip 192.168.0.1 ...
pptpd-1.3.1.tar.gz. pptp的服务器的代码
pptpd-1.4.0 和ppp-2.4.7 以及arm linux 交叉编译脚本
center os pptpd svn 上网
镜像文件里面么得,所以呢?在此上传