PPTP是点对点隧道协议,用于在公网上建立两个节点之间的专用用网络。普通的用户一般是通过拨号的方式,接入ISP提供的网络,由于国内的上网环境,是访问不了google的,所以必须首先要有一台可以上google的机器(一般是vps或者云主机,可以去淘宝上买),然后在那台机器上搭配PPTP协议服务端,本地电脑通过配置PPTP客户端去连接服务端,就可以实现本地机器访问google。这篇文章只是谈论PPTP如何上google,至于PPTP其他的用处不考虑。下面就具体来部署PPTP服务端。

  1  安装pptp

  # apt-get install pptpd

  2  安装之后配置pptp,首先查看本机ip和网卡信息

  # ifconfig

  

  eth0是外网的的网卡,下面的步骤要用的

  3  配置pptp的主配置文件,设置pptp内网地址,并配置地址池

  # vi /etc/pptpd.conf

  

  localip 是本机的局域网的IP地址,remoteip是ip地址池范围,这里用默认的就好了,将前面的注释符去掉就可以了

  4  设置pptp用于解析dns的服务器ip地址

  #vi /etc/ppp/pptpd-options

  

  在这里用来两个dns服务器,114.114.114.114是电信的,8.8.8.8是google的,国内解析的走电信的,国外的走google的

  注意: 我之前用的是这两个dns,但是碰到连上去之后不能访问谷歌,将上面的第一dns和第二dns调换就行了,出现问题的原因可能就是第一dns出现问题,第二dns没有在工作

  5  添加pptp登录用户

  # vi /etc/ppp/chap-secrets

  

  6 重启下pptpd服务

  # /etc/init.d/pptpd restart

  7  开启系统的路由转发功能

  # vi /etc/sysctl.conf

  将 net.ipv4.ip_forward=1

  重新读取sysctl配置

  #sysctl -p

  8 配置防火墙规则,没有安装iptables的话,先安装下

  开启路由转发规则

  # iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o  eth0 -j MASQUERADE

  保存规则

  # iptables-save  >/etc/iptables-rules

  编辑网卡,使得网卡每次重启自动加载防火墙规则

  # vi /etc/network/interfaces

  

  9 设置mtu,防止数据包过大,产生有些网站访问不了。正常设置为1200

  # iptables -A FORWARD -s 192.168.0.0/24 -p tcp -m tcp --tcp-flags SYN,RST     SYN -j TCPMSS --set-mss 1200

  保存规则

  # iptables-save  >/etc/iptables-rules

  

  10 设置pptp随系统自启动, 测试下pptp服务有没有开启,默认开启的端口是1723端口

  # update-rc.d pptpd enable

  # netstat -tuln | grep 1723

  pptp服务端配置到此结束,客户端的配置可以分为在windows和linux下,windows的客户端一进集成到系统,简单配置及可以了,暂时讨论。这里我配置的过程中出现619的错误,原来是我配置pptp的账户密码时填错了服务名将pptpd填成httpd,呵呵,这个错误也会发生。

  

  配置pptp的关键步骤

  1 安装服务

  2 配置内网地址池 解析dns服务器地址

  3 开启系统路由转发

  4 开启防火墙的NAT (类似将vps当成一个有NAT功能的路由器)

ubuntu 配置pptp的更多相关文章

  1. 在 Ubuntu 配置 PPTP Server

    本文在 Ubuntu 12.4 或 14 亲测有效. 建立 PPTP 服务器 首先安装 pptp 服务器. # apt-get install pptpd 然后配置 pptpd. # sudo vi ...

  2. ubuntu配置NFS

    ubuntu配置NFS: sudo apt-get install nfs-kernel-server 配置/etc/exports 例如:我们要将根目录下的 /opt/FriendlyARM/min ...

  3. ubuntu配置tftp服务

    ubuntu配置TFTP服务: TFTP是用来下载远程文件的最简单的网络协议,基于UDP协议.xinetd是新一代的网络守护进程服务程序,经常用于管理多种轻量型internet服务. sudo apt ...

  4. 关于ubuntu配置静态IP 无法正常上网的解决方案

    在ubuntu中配置静态IP后无法正常上网. 解决: 1.在终端执行 vim /etc/network/interfaces 在文件中加入如下内容,网关要写上,我开始一直无法上网就是因为没有配置网关 ...

  5. CentOS 6.3配置PPTP VPN的方法

    1.验证ppp 用cat命令检查是否开启ppp,一般服务器都是开启的,除了特殊的VPS主机之外. [root@localhost1 /]# cat /dev/ppp cat: /dev/ppp: No ...

  6. 转: ubuntu配置NFS,挂载开发板

    ====================================== 命令: 1. $sudo apt-get install nfs-kernel-server           (安装N ...

  7. Ubuntu配置和修改IP地址

    Ubuntu配置和修改IP地址 1.修改配置文件/etc/network/interfacesroot@ubuntu:~# sudo gedit /etc/network/interfaces 添加以 ...

  8. ubuntu 配置JDK环境变量

    ubuntu 配置JDK环境变量 (2011-11-25 16:45:59) 转载▼ 标签: ubuntu jdk 环境变量 杂谈 分类: Linux_Ubuntu_CentOs 过程如下: 1. 先 ...

  9. Ubuntu 用 pptp 建立 vpn 服务

    1.下载pptp sudo apt-get install pptpd 2.配置pptp 须要改动配置下面的文件: pptpd.conf文件:配置链接后的主机ip和能够分配的内存范围 vi /etc/ ...

随机推荐

  1. Java{0}占位符替换字符串

    Java{0}占位符替换字符串 public class Test { public static void main(String[] args) { System.out.println(Stri ...

  2. [Web 前端] 016 css 元素的转换

    三种元素之间的转换 display 属性是用来设置元素的类型及隐藏的 常用的属性有 none 元素隐藏且不占位置 block 元素以块元素显示 inline 元素以内联元素显示 inline-bloc ...

  3. Kosaraju算法 有向图的强连通分量

    有向图的强连通分量即,在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(strongly connected).如果有向图G的每两个顶点都强连通,称G是一个强连通图.非强连通图有向图的极 ...

  4. vue中如何实时修改输入的值

    vue中如何实时修改输入的值 经常看到需要对用户输入的值进行实时修改,有时是需要修改为指定的展示内容,有时候是用来校验,禁止用户输入非法数据,总之是一个常见的需求吧,只是自己一直没有特意去关注.思来想 ...

  5. 监听table滚动事件,滚动到底部时加载数据

    mounted() { this.$refs.scrollTable.addEventListener( 'scroll',(event) => { this.getDistance(event ...

  6. Git 安装使用及基础命令

    Git终端软件安装 1.下载windows上git终端,类似shell工具,下载地址:http://msysgit.github.io/ 2. 安装方法,打开文件,一路点击Next即可 3.安装完成, ...

  7. Scrapy抓取jobbole数据

    1.python版本3.6.1 2.python编辑器:JetBrains PyCharm 2.安装virtualenvwrapper-win pip3 install virtualenvwrapp ...

  8. Linux--shell交互输入与循环语句--06

    一.交互输入 1.命令用法:read a b c   -> aa bb cc read命令同时可以定义多个变量值:而输入的内容默认以空格为分隔符,将值输入到对应的变量中:如果默认值输入过多,最后 ...

  9. JMETER - BEANSHELL获取响应结果

    获取响应结果 添加后置处理器     //获取获取请求的返回值 String response = prev.getResponseDataAsString(); //日志打印获取请求的返回值 log ...

  10. csv导入数据

    1.关闭Neo4j服务器进程 2.删除graph.db数据库文件  /data/databases/  rm -rf graph.db 3.重新启动Neo4j服务器 4.数据导入import 5.wi ...