ubuntu10.4 server 配置VPN 安装pptp无法连接外网解决(转)

链接:http://www.ppkj.net/2011/04/30/ubuntu10-4-server-%E5%AE%89%E8%A3%85pptp%E6%97%A0%E6%B3%95%E8%BF%9E%E6%8E%A5%E5%A4%96%E7%BD%91%E8%A7%A3%E5%86%B3.html

PPTP是一个比较简单的VPN构建方式,但是很难找到比较全的说明文档。因此,记录一篇说明文档,详细记录架设VPN服务器以及总结一些其他比较容易遇到的问题。

安装PPTP
基本上安装pptp是比较简单的了,比如在我的CentOS6.4 x64上,只需要两个命令:

rpm -i http://poptop.sourceforge.net/yum/stable/rhel6/pptp-release-current.noarch.rpm
yum -y install pptpd

如果是Ubuntu的话,更加简单了:

apt-get install pptpd

配置IP地址
基本上程序的安装是全自动完成的了,下面需要进行一些简单的配置,编辑/etc/pptpd.conf ,在最后加入IP地址配置:

localip 10.0.0.1
remoteip 10.0.0.100-200

上面的IP地址是可以随便填的,ABC三类的内网地址都可以,主要兼顾其他地方的IP配置,不要出现IP冲突就可以了,后面的remoteip,默认从第一个10.0.0.100开始分配给客户,localip表示分配给服务器的内部网关地址。

配置客户端DNS
要配置客户端的dns,首先要确定配置文件,查看/etc/pptpd.conf中指定的option文件,如果没有指定,那就默认是/etc/ppp/pptpd-options,下面是我的默认配置文件,因此要修改/etc/ppp/pptpd-options.pptpd
在配置文件中加上:

ms-dns 202.96.128.86
ms-dns 202.96.128.166

这里配置成客户端所在地的DNS就好了。

配置VPN账号
然后是创建VPN的账号,账号保存在/etc/ppp/chap-secrets,我们打开编辑这个文件,按下面的格式加入自己的账号以及密码,依次为:账号,协议,密码,ip地址。

这里的ip地址如果明文表示静态分配,如果填*就表示动态分配。

启动服务
配置完毕,可以启动服务并且加入启动项了

service pptpd restart
chkconfig pptpd on

查看一下服务器是否在1723上面监听了

 配置系统转发
现在的VPN服务可以连上,但是不能通过VPN服务器进行转发,也就是不能够上网或者访问其他服务器等,需要开启系统转发和NAT。编辑系统配置文件/etc/sysctl.conf,设置如下值为1

net.ipv4.ip_forward = 1

如果未来ipv6普及了,估计应该就是改ipv6了,修改完毕之后要马上生效,使用命令

sysctl -p

配置防火墙转发

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j SNAT --to 115.115.115.115

其中第一种比较简单,自动伪装ip,第二种的10.0.0.0/24指的是VPN虚拟内网,而115.115.115.115代表外网地址,进行NAT。如果VPN服务器是用来代理上网的,仅有上面的配置会出现访问网站缓慢的情况,需要手动修改一下转发包的mss

iptables -A FORWARD -p tcp --syn -s 10.0.0.0/24 -j TCPMSS --set-mss 1356

这样就不会出现打不开网页的问题了,最后可以保存一下防火墙。

iptables-save

常见的问题
619错误
很多人在拨VPN的时候卡在验证用户名和密码,然后会出现619的错误,这种错误90%以上是由于客户端到服务器的网络中有设备不支持GRE协议或NAT-T造成的,最常见的是由于客户端的路由器等不支持造成的,在更换以后立马能拨上VPN。而这种错误在服务端的日志也有体现。例如

LCP: timeout sending Config-Requests

下面是双方加解密不一致的:

LCP terminated by peer (^O^XH-^@<M-Mt^@^@^@^@)

pptp需要用到的端口
pptp使用到的端口只有一个,那就是1723,网上有很多误人子弟的文章还说要开47端口,真是坑爹,因为GRE协议号是47,并不代表需要开47端口,因此如果是要映射端口的话,1723就完全够了,不要信网上的某些教程,如果使用了iptable来作为防火墙,需要加入规则

iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
iptables -A INPUT -p 47 -j ACCEPT

如果是在内网中,需要网关转发,那么网关需要如下配置:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 1723 -j DNAT --to SERVER_IP
iptables -t nat -A PREROUTING -i eth0 -p 47 -j DNAT --to SERVER_IP

如需详细文档,可参考:
http://poptop.sourceforge.net/dox/

时间: 2024-12-14 18:07:39

ubuntu10.4 server 配置VPN 安装pptp无法连接外网解决(转)的相关文章

Ubuntu下安装MySql并在外网连接

纯新手教程. 1.安装mysql apt-get install mysql-server mysql-client libmysqlclient15-dev 安装过程中会提示为数据库root账户设置密码,输入两边密码即可 2.进入 mysql mysql -uroot -p 3.重新设置mysql用户root的密码 GRANT ALL PRIVILEGES ON *.* TO [email protected] IDENTIFIED BY "123456"; 4.创建新数据库 pro

VMware虚拟机 安装centos7并设置静态ip 连接外网

首先下载VMware虚拟机:http://xzc.197746.com/VMware-Workstation-12.5.9.zip 然后下载centos7镜像:http://vault.centos.org/ 硬件:因为是在宿主机上运行虚拟化软件安装centos,所以对宿主机的配置有一定的要求.最起码I5CPU双核.硬盘500G.内存4G以上. 2.虚拟机准备 1.打开VMwear选择新建虚拟机 2.典型安装与自定义安装 典型安装:VMwear会将主流的配置应用在虚拟机的操作系统上,对于新手来很

机器人路由器连接外网时的配置

机器人路由器想连接外网,与云端进行一些图像识别,语音处理相关的操作.需要进行一下如下配置: 1.首先,假定路由器接通了外网,那么路由器里面一定有DNS服务器的IP地址.找到这个值. 2.在linux的 /etc/resolv.conf里面配置如下 namerserver     DNS服务器IP地址 3.  操作2其实只是临时配置,重启就没有了.一个简单的办法是在rc.local  中写入 echo "namerserver     DNS服务器IP地址". 4. 在/etc/netw

Hyper-V虚拟机配置内部网络固定IP 并且连接外网

2019/10/23 Hyper-V CentOS7 摘要:Hyper-V中的虚拟机CentOS7能固定IP,保证宿主机的Xshell始终只用同一个IP连接到该虚拟机 一.新建一个内部网络虚拟交换机 二.修改虚拟网卡IP地址 经过第一步后,网络连接中会出现刚刚新建的虚拟网卡InternalNat 1.打开 控制面板-网络和Internet-网络连接 2.找到刚刚新建出来的虚拟网卡 3.右击该网卡,属性-网络-Internet协议版本4(TCP/IPv4) 4.填写固定IP地址,我这里填写的是19

vmware 上ubuntu server连接外网

最近在自己的电脑上搞了个ubuntu server,自己做点小demo,当需要连接网络时问题来了,没法连接网络,网上有一些资料都是一笔带过,并不符合自己的情况,现在将我解决的过程记录下: 首先,在自己的windows电脑上cmd下输入ipconfig 注意这个ip,要在linux网络配置中ip网段要一样,然后在vmware 中打开虚拟网络编辑器界面,在""编辑""菜单下 因为我的虚拟机设置中网络适配器选的是NAT模式如下图,这个信息是在vmware左边栏中右键安装的

Win 10 连接公司VPN后不能上Internet外网

当前用户配置 %AppData%\Microsoft\Network\Connections\Pbk 与所有用户共享配置 %ProgramData%\Microsoft\Network\Connections\Pbk 找到 rasphone.pbk 文件 编辑当中 对应你vpn 链接的段落属性 IpPrioritizeRemote=0 取消 “从远程网络上使用默认网关” 修改设置后,然后连接VPN就能上外网又能办公了

linux配置网络详细解析,上外网

备注:具体操作详细解析见:http://www.wtoutiao.com/a/2362248.html 简要步骤: 一.在虚拟机选择网桥模式: 二.配制网络,使虚拟机和主机,虚拟机和虚拟机之间能够网络互通: 1.使用setup工具进行配置: 2.或者选择编辑文本进行配置: vi /etc/sysconfig/network-scripts/ifcfg-eth0 service network restart; //配置完成后,需重启网络才能生效: [[email protected] ~]$ c

在OpenStack里怎样配置Neutron,让虚拟机访问外网

http://blog.csdn.net/zhangli_perdue/article/details/50264681 OpenStack里虚机(或者叫instance)只有在分配floating IP后才能访问外网,那么需要怎样做配置才能达到目的呢? 1. 需要在网络节点上确定一个可以访问外网的物理网卡,这个网卡可以和管理网卡是一个.这里我们假定外网网卡和管理网卡是独立的,且外网网卡的名字叫做eth2. 2. 添加一个新的bridge br-ex,并将eth2作为port绑定到br-ex [

VMware虚拟机中的CentOS,RHEL..Linux NET方式配置静态IP让虚拟机上外网

首先说下为什么使用NET的方式共享主机上的外网,由于笔记本经常携带,而公司或者家里的网络都是DHCP的方式,使用桥接就不是很方便, 每次都需要改下地址,不利于环境的配置,及后面的服务搭建... 1.第一步,我们需要配置VMware,给你需要上网的虚拟机设置为NET方式. 2.第二步将当前的网络共享给VMnet8这块虚拟网卡,并配置这块网卡. 找到宿主机上当前处于活动状态的网卡通过属性-->共享 3.第三步,需要设置vmwavre的虚拟网络编辑器配置,菜单编辑-->虚拟网络编辑器,设置设置子网.