step1: 安装pptpd

很简单的命令:sudo apt-get install pptpd

step2: 修改pptpd的配置

有三个文件需要修改:

(1)修改/etc/pptpd.conf,添加以下内容(原文件中可能已经有这些内容,确认即可)

localip 192.168.0.1

remoteip 192.168.0.100-110

localip是指VPN建立后,client可以用这个地址访问VPN server。

remoteip就是指分配给client的地址。

(2)修改/etc/ppp/pptpd-options文件,增加以下内容:

ms-dns 8.8.8.8

ms-dns 8.8.4.4

这个配置是使用Google的DNS解析。至于原因,你也懂的。。。

(3)修改/etc/ppp/chap-secrets文件,设置客户机登录的帐号和密码:

# client server secret IP addresses

yxh * 1234 *

“client”是用户名,“server”是服务器地址,”secret”是登录密码,”IP addresses”是分配的地址,如果指定*,则由系统自动分配。

step3: 重起PPTPD服务:sudo service pptpd restart

step4:配置IP转发

修改/etc/sysctl.conf文件,打开以下的注释:

net.ipv4.ip_forward=1

step5: 重新加载IP转发配置

sudo sysctl -p

step6: 修改Iptables,设置网络地址翻译

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

上述设置在重起后悔丢失,因此需要修改 /etc/rc.local文件, 在exit 0之前添加以下语句:

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

(PS:第七步骤可以忽略,如果DDNS需要配置再操作一下步骤)

step7: 配置DDNS

Amazon EC2每次重起都会变换地址,因此我们需要配置DDNS来获取动态域名解析。在这一步之前,需要在DynDNS上申请一个免费的域名。国内类似的服务商是“花生壳”,我没有进行过测试,不知道“花生壳”是否也适合以下配置。

申请到DynDNS帐号后,下载并安装ddclient:

sudo apt-get install ddclient

安装过程中, 会有简单的界面进行配置, 设置dyndns的相关帐户即可。设置完成后, 配置信息会自动写入/etc/ddclient.conf文件。

完成上述步骤后,就可以在windows客户端拨号建立VPN连接了。

Ubuntu系统下搭建PPTP类型VPN环境的更多相关文章

  1. Ubuntu系统下搭建Python开发环境

    之前演示了在Windows中安装Pycharm,很简单.下面介绍一下如何在Ubuntu中安装Pycharm 1.更新Python至3.5.1,执行以下命令: sudo add-apt-reposito ...

  2. Win10系统下搭建Go lang开发环境更换国内源并且体验宇宙最快框架Iris

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_156 最近有同学开始尝试接触Go lang,拥抱新技术永远都会是一个好习惯,之前的一篇文章介绍了如何在Mac os系统下配置Go ...

  3. 搭建Linux(Ubuntu)系统下的Differential Datalog运行环境

    DDlog is a bottom-up, incremental, in-memory, typed Datalog engine. It is well suited for writing pr ...

  4. ubuntu 系统下搭建Java的环境

    1.首先可以使用 java -version来查看自己是否已经搭建了java的环境,如果出现了java的版本号则表示java的环境已经搭建好了!否则则继续下面的步骤进行java环境的搭建 2.进入Or ...

  5. 【转载】cocos2d-x教程 Mac系统下搭建Lua的编码环境

    原文链接:http://blog.csdn.net/u012945598/article/details/17168831   在使用Lua写脚本的时候大家都会因为没有代码提示导致敲代码的效率有所下降 ...

  6. Ubuntu系统下基于docker部署Jenkins环境

    本文是在ubuntu环境下安装jenkins,jenkins运行在docker容器中, 至于docker如何安装,请参考https://www.cnblogs.com/xingyunqiu/p/115 ...

  7. Ubuntu系统下搭建docke

    linux内核版本依赖 kernel version >= 3.8 可以使用如下命令查看 uname -a | awk '{split($3, arr, "-"); prin ...

  8. 在Linux(Ubuntu)下搭建ASP.NET Core环境并运行 继续跨平台

    最新教程:http://www.cnblogs.com/linezero/p/aspnetcoreubuntu.html 无需安装mono,在Linux(Ubuntu)下搭建ASP.NET Core环 ...

  9. CentOS和Ubuntu系统下安装 HttpFS (助推Hue部署搭建)

    不多说,直接上干货! 我的集群机器情况是 bigdatamaster(192.168.80.10).bigdataslave1(192.168.80.11)和bigdataslave2(192.168 ...

随机推荐

  1. 所有事件event集锦

    'mousedown touchstart', 'mousemove touchmove', 'mouseup mouseleave touchend touchleave touchcancel', ...

  2. java网络通信之非阻塞通信

    java中提供的非阻塞类主要包含在java.nio,包括: 1.ServerSocketChannel:ServerSocket替代类,支持阻塞与非阻塞: 2.SocketChannel:Socket ...

  3. UVa11555 - Aspen Avenue

    今晚CF GYM A题,神坑.. 原题: Aspen Avenue ``Phew, that was the last one!'' exclaimed the garden helper Tim a ...

  4. spring 5种通知

    方法实现接口 package com.cn.spring.aop.impl; //加减乘除的接口类 public interface ArithmeticCalculator { int add(in ...

  5. Spring MVC 关于分页的简单实现

    据本人了解,目前较常用的分页实现办法有两种: 1.每次翻页都修改SQL,向SQL传入相关参数去数据库实时查出该页的数据并显示. 2.查出数据库某张表的全部数据,再通过在业务逻辑里面进行处理去取得某些数 ...

  6. Memcached源码分析之assoc.c

    #include "memcached.h" #include <sys/stat.h> #include <sys/socket.h> #include ...

  7. AppBarLayout学习笔记

    LinearLayout的子类 AppBarLayout要点: 功能:让子View(AppBar)可以选择他们自己的滚动行为. 注意:需要依赖CoordinatorLayout作为父容器,同时也要求一 ...

  8. 思迅/泰格/科脉/收银软件/商超软件数据库修复解决断电造成损坏的mdb\dat文件SQL数据库 置疑 修复 恢复

    拥有专业管理软件数据库修复技术工程师,专业提供管家婆.美萍.思迅.科脉等管理软件技术服务,电脑维修\重装系统技 术服务.无法登陆打不开等出错问题处理(连接失败,请输入正确的服务器名,SQL Serve ...

  9. 将MPLS编译进linux内核中

    系统环境:linux kernel 2.6.35.(此环境是上一篇文章中将ubuntu内核替换后的环境) 编译过程如下: 1)首先需要下载patch文件:linux-kernel-v2.6.35-mp ...

  10. 遗传算法GA

    遗传算法(Genetic Algorithms,GA)是一种全局优化方法,它借用了生物遗传学的观点,通过自然选择.遗传.变异等作用机制,实现种群中个体适应性的提高,体现了自然界中“物竞天择.适者生存” ...