当前位置: 首页 > 编程日记 > 正文

在 Ubuntu 配置 PPTP Server

本文在 Ubuntu 12.4 或 14 亲测有效。

建立 PPTP 服务器

首先安装 pptp 服务器。

# apt-get install pptpd

然后配置 pptpd。

# sudo vi /etc/pptpd.conf

在 pptpd.conf 文件末尾添加服务器 IP 和客户端 IP。

localip 192.168.3.1
remoteip 192.168.3.100-200

以上配置意味着服务器 IP 为 192.168.3.1,它分配给 PPTP 客户端的 IP 地址范围是 192.168.3.100 到 192.168.3.200。
你可以更改服务器 IP,例如 192.168.0.1,只要它不与服务器现在所使用的 IP 冲突。

接下来继续配置 PPTP 使用的 DNS 服务器。

# sudo vi /etc/ppp/pptpd-options

注释掉 ms-dns,并添加 Google 域名服务器。

ms-dns 8.8.8.8
ms-dns 8.8.4.4

现在创建 VPN 用户账号。

# sudo vi /etc/ppp/chap-secrets

第一列是用户名。第二列是服务器名称,你可以填写 pptpd 或 *。第三列是密码。最后一列是客户端 IP,你可以填写 * 来允许所有 IP 都可以访问该服务器。

# client    server    secret    IP addresses
username * myPassword *

最后重启服务器。

# /etc/init.d/pptpd restart

配置 IP 转发

启用 IPv4 转发。

# sudo vi /etc/sysctl.conf

取消下面该行的注释。

net.ipv4.ip_forward=1

然后重载配置。

sudo sysctl -p

在 iptable 增加转发规则。

sudo vi /etc/rc.local

然后在 exit 0 之前添加以下内容。

iptables -t nat -A POSTROUTING -s 192.168.3.0/24 -o eth0 -j MASQUERADE
iptables -A FORWARD -p tcp --syn -s 192.168.3.0/24 -j TCPMSS --set-mss 1356

本例使用了 192.168.3 作为子网网段,第二行是调整 MTU 大小。

重启服务器,完成。

Ref:

PPTP Server

转载于:https://www.cnblogs.com/ifantastic/p/5136535.html

相关文章:

IAP超级详解,偷懒了,不用自己去翻译了

转载自:http://gaohaijun.blog.163.com/blog/static/176698271201143194018328/ 一、In App Purchase概览 Store Kit代表App和App Store之间进行通信。程序将从App Store接收那些你想要提供的产品的信息,并将它们显示出来供用户购买。 当用户需要购买某件…

linux负载均衡(什么是负载均衡)

linux负载均衡(什么是负载均衡) 一、总结 一句话总结: 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。 关键点一&#xff1a…

win8数据源设置mysql_Win8系统ODBC数据源有何重要功能?

对计算机发展比较有研究的朋友一定会知道ODBC,它是一个比较古老的东西,发展到现在Win8系统上版本已经是3.8了。微软虽然没有对ODBC做很大的更新,但是正因为ODBC是一个比较成熟和古老的规范,因此它的作用才显得不那么突出&#xff…

【HTML/XML 11】XML和HTML的混合使用

导读:在前面介绍了很多关于XML和HTML的东西,他们其实各有各的好处,在很多时候都需要结合起来使用。现在已经有XML和HTML结合的产物:XHTML(可扩展超文本标记语言)。在本篇博客中,则主要介绍通过引…

web架构之mysql服务器

SQL概述结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。从上可以看出我们数据库…

ORM查询语言(OQL)简介--概念篇

相关文章内容索引: ORM查询语言(OQL)简介--概念篇ORM查询语言(OQL)简介--实例篇ORM查询语言(OQL)简介--高级篇:脱胎换骨ORM查询语言(OQL)简介--高级篇&#x…

mysql优化 top_Top 20+ MySQL Best Practices【sql优化】

Database operations often tend to be the main bottleneck for most webapplications today. It’s not only the DBA’s (database administrators)that have to worry about these performance issues. We as programmersneed to do our part by structuring tables proper…

hibernate分页

分页从网上考的&#xff0c;好用。这个框架 /** * 用于分页的工具类 * author 莫取网名 */ public class Pager<T> {private List<T> list; //对象记录结果集 private int total 0; // 总记录数 private int limit 10; // 每页显示记录数 private int pages 1; …

Scrum Meeting 博客汇总

Scrum Meeting 博客汇总 一、Scrum Meeting 1. Alpha 第一次 Scrum Meeting第二次 Scrum Meeting第三次 Scrum Meeting第四次 Scrum Meeting第五次 Scrum Meeting第六次 Scrum Meeting第七次 Scrum Meeting第八次 Scrum Meeting第九次 Scrum Meeting第十次 Scrum Meeting第十一…

mysql字符串外键约束_MySQL中的约束函数主外键

/*select语句有6大子句&#xff1a;(1)from子句(2)where子句(3)group by子句(4)having子句(5)order by子句(6)limit子句强调&#xff1a;每一个select的6大子句的顺序是(1)-(6)(1)from子句&#xff0c;后面跟表&#xff0c;视图&#xff0c;多行多列的二维表的结构from意思从哪…

POJ 3683 【2-sat+求一组可行解】.cpp

题意&#xff1a; 有一个牧师要给好几对新婚夫妇准备婚礼.. 已知每对新婚夫妇的有空的时间以及婚礼持续时间.. 问是否可以让每对新婚夫妇都得到该牧师的祝福~ 如果可以就输出YES以及可行解 不可以就输出NO 输入&#xff1a; 一个n 表示有n对新婚夫妇 接下来n行每行a b c 表示在…

Matlab并行编程方法1

相信很多朋友在利用matlab进行计算时&#xff0c;会遇到循环次数过大&#xff0c;或者是单次计算量过大的问题&#xff0c;比如需要计算的数值阵列数据量过大&#xff0c;利用传统的编程方式&#xff0c;跑一次程序几个小时&#xff0c;都要等的急死了是不是呢&#xff1f;如果…

使用postman修改SAP Marketing Cloud contact主数据

Marketing Cloud里的contact主数据&#xff0c;创建成功后也不是所有字段都能够被修改。在Personal data区域的字段是可以被修改的。 比如我在“客户属性”字段里维护了一些值&#xff1a; 然后点保存&#xff1a; 其中第二个batch操作是通过一个roundtrip读取contact模型下多个…

java判断一个对象是否为空_Java中判断对象是否为空的方法的详解

首先来看一下工具StringUtils的判断方法&#xff1a;一种是org.apache.commons.lang3包下的&#xff1b;另一种是org.springframework.util包下的。这两种StringUtils工具类判断对象是否为空是有差距的&#xff1a;StringUtils.isEmpty(CharSequence cs); //org.apache.commons…

解决cocos2dx 3.x 导入cocostudio的ui界面出现错位问题

笔者今天发现导入cocostudio的ui界面时&#xff0c;会有部分控件出现错位的现象&#xff0c;后来我看了一下源码&#xff0c;发现是部分控件是没有继承 Layout类&#xff0c;导致不能设置控件位置造成&#xff0c;原因可以看看cocos2dx 源码的CCSGUIReader.cpp文件的函数&#…

Media Queries

支持情况罗列成如下表&#xff1a; Media Queries 使用 说起CSS3的新特性&#xff0c;就不得不提到 Media Queries 。 本文比较详细&#xff0c;所以很多实际中用不到。所以如果只是想简单了解Media Queries&#xff0c;推荐参考 CSS3 Media Queries 。 CSS2.1定义了 Media 的部…

AndroidStudio脚本命令指定AAR生成目录与版本号

A build.gradle全局常量&#xff1a; //根路径def ROOT_PATH rootProject.rootDir.pathdef GROUP "com.genialsir.mobileads"def MOB_SDK_VERSION_NAME "1.1.2" 复制代码 B 在当前库项目的build.gradle文件中android{}中配置如下&#xff1a; //自定义a…

文本文件 java_简单的用java实现读/写文本文件的示例

简单的用java实现读/写文本文件的示例更新时间&#xff1a;2008年07月26日 13:09:26 作者&#xff1a;同时也展示了如果从输入流中读出来内容写入输出流中(仅限文本流)三个例子可以独立存在&#xff0c;所以根据需要只看其中一个就行了。/** 简单的读/写文本文件的示例* 这里…

7个华丽的基于Canvas的HTML5动画

说起HTML5&#xff0c;可能让你印象更深的是其基于Canvas的动画特效&#xff0c;虽然Canvas在HTML5中的应用并不全都是动画制作&#xff0c;但其动画效果确实让人震惊。本文收集了7个最让人难忘的HTML5 Canvas动画&#xff0c;包括画板、文字、图表等&#xff0c;希望你会喜欢。…

网络工程师课程---4、网络层(网关是什么)

网络工程师课程---4、网络层&#xff08;网关是什么&#xff09; 一、总结 一句话总结&#xff1a; 必在当前网段&#xff1a;你到达另外一个网段必过的一个端口&#xff0c;所以必在当前网段 1、icmp如何检测双向通路的连通性&#xff1f; ping 命令 2、计算机1-65535这些端口…

团队分数分配方法——BY 李栋

作为一个团队&#xff0c;自然是一体的&#xff0c;所以要摒弃个人开发的不良习惯&#xff0c;互帮互助&#xff0c;共同进步。以期望在项目过程中能够不使一个人掉队&#xff0c;不因一个人的工作而使全队进度拖延。所以在分工的基础上还是要互帮互助&#xff0c;团队整体的分…

autowired java_Java 基础之Autowired 是否是自动注入

Java 基础之Autowired 是否是自动注入相信很多人对Autowired 注解理解不深入&#xff0c;或者是认为此注解就是spring的自动注入。相信看完本篇文章&#xff0c;你会有更加不一样的理解。首先我们先看下什么是手动注入&#xff1f;在我们的spring应用程序中&#xff0c;定义多个…

Eclipse进行可视化的GUI开发3大GUI插件

Eclipse进行可视化的GUI开发3大GUI插件 转自http://www.cnblogs.com/NationWoo/archive/2011/05/31/2065176.htmlEclipse并不自带GUI的可视化开发工具&#xff0c;那么如果要在Eclipse进行可视化的GUI开发&#xff0c;就需要依靠第三方的插件。 1. Visual Editor Eclipse官方提…

【BZOJ 4016】[FJOI2014]最短路径树问题

&#xff01; 卡时过了 为什么我的这么慢&#xff1f;姿势不对&#xff1f;&#xff1f;&#xff1f; -->谢 ws_fqk 我的Do&#xff08;num[i]&#xff09;应该用 DO(root) 找了半天的root居然没有用.... define的教训永远忘不了了&#xff01;&#xff01;&#xff01; 优化…

mongodb索引--从55.7秒到毫秒级别

从头开始&#xff0c;验证mongodb的索引的好处。(window7环境下) 下载mongodb服务器&#xff0c;并解压到d盘&#xff0c;并使用以下命令启动 mongod --dbpath D:\mongodb\datamongo客户端Robo 3T 去官网下载&#xff0c;安装准备数据&#xff0c;条数为1亿public static void …

汉字转16进制java_java实现汉字转unicode与汉字转16进制实例

本文实例讲述了java实现汉字转unicode与汉字转16进制的实现方法。分享给大家供大家参考。具体实现方法如下&#xff1a;一、汉字转unicodepublic static String toUnicode(String s){String as[] new String[s.length()];String s1 "";for (int i 0; i < s.len…

使用pytest对django项目单元测试

2019独角兽企业重金招聘Python工程师标准>>> 背景 使用django开发了个人博客&#xff0c;欲单元测试&#xff0c;后遍寻网络&#xff0c;然相关资料甚少&#xff0c;遂成此文&#xff0c;望对汝有所助 环境 pytestpytest-djangopytest-covpytest-htmldjangomixer测试…

jquery通知插件toastr

使用方法3个简单步骤对于其他API调用,看到演示。<link href"toastr.css" rel"stylesheet"/> <script src"toastr.js"></script> //显示一个信息没有标题 toastr.info(Are you the 6 fingered man?)其他选项/显示一个警告,没有…

1282. Game Tree

http://acm.timus.ru/problem.aspx?space1&num1282 简单博弈 注意题意的理解 代码&#xff1a; #include<iostream> #include<cstdio> #include<cstring> #include<string> #include<vector> #include<queue> #include<map> #i…

java web dao_JavaWeb项目,DAO应该怎么写?

有一张字段足够多的表&#xff0c;要对它进行各种各样的查询&#xff1a;根据字段A根据字段B&#xff0c;或者根据字段A和B&#xff0c;或者再加上字段C&#xff0c;然后可能还要加上分页&#xff0c;排序等等的逻辑。现在的项目的DAO层为了满足上面这些需要出现了很多参数列表…