在Ubuntu下搭建VPN服务器的方法

VPN是什么?中文翻译叫做:虚拟专用网络。功能是,在公用网络上建立专用网络,进行加密通讯。

适用的场合:

1.你的公司网络在一个局域网,不能外部访问。有一天你外出度假了,想访问一下公司的内部网络,外网是不能直接访问的。如果公司的网络有一台主机设置了VPN,你就可以通过连上这台VPN主机,来访问公司内部网络啦。

2.如果你的主机是在国外,你可以在这台主机上配置VPN,然后你的电脑连上VPN之后就可以翻墙啦。

3.某台服务器(如游戏服务器)限制了一些IP连接到它上面,这时你配置VPN,连上VPN之后,就可以继续访问那台服务器咯。

4.etc…

我们以Ubuntu为例,说一下怎样配置VPN服务器。

1、用root账户登陆服务器

2、安装PPTPD

apt-get install pptpd

3、编辑pptpd.conf文件

vi /etc/pptpd.conf
取消注释下面内容

 localip 192.168.0.1
 remoteip 192.168.0.234-238,192.168.0.245
这几句的意思是:当外部计算机通过pptp联接到vpn后所能拿到的ip地址范围和服务器的ip地址设置。

4、添加用于登陆的账户

vi /etc/ppp/chap-secrets
格式如下:

# client server secret IP addresses
root  pptpd  123456  *
从左到右依次是用户名,自己指定。服务器,填写pptpd,密码,自己指定。IP,填*即可。中间用空格分别隔开。

5、设置DNS解析,编辑pptpd-options文件

vi /etc/ppp/pptpd-options
找到ms-dns,取消掉注释,并修改DNS地址,这里我推荐大家用

Google DNS 8.8.8.8 和 8.8.4.4

更改为如下内容
ms-dns 8.8.8.8
ms-dns 8.8.4.4

6、开启转发

vi /etc/sysctl.conf
取消注释以下内容

net.ipv4.ip_forward=1              //这句话意思是:打开内核IP转发

更新一下配置

sudo sysctl -p
7、安装iptables并设置

apt-get install iptables
sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
后面这句话作用是:立刻让LINUX支持NAT(platinum)

8、重新启动服务

/etc/init.d/pptpd restart
9、大功告成,VPN服务器就这么配置好了。

接下来,利用IP地址,刚才设置的VPN账号和密码,就可以连你的VPN啦。

遇到的问题解决如下:

速度如果太慢的话:
/sbin/iptables -I FORWARD -p tcp --syn -i ppp+ -j TCPMSS --set-mss 1356

sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
这条规则上面需要再增加一条,否则搭建好以后,是访问不出去的。

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 你的公网IP
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

时间: 2025-01-19 08:14:33

在Ubuntu下搭建VPN服务器的方法的相关文章

如何在Ubuntu下搭建tftp服务器

  今天开始调试arm的板子,要通过tftp下载到板子上,所以又要配置tftp服务器,真的烦死了- (本人酷爱装系统,所以经常都要搞配置) 因为之前已经在Ubuntu下搭建过很多次tftp服务器了,但是一直记不住那一个配置文件的名字(记性太差),所以每次都要百度. 可是每次百度出来的结果都不一样,而且出入很大,有的过程相当的繁琐,不仅很麻烦,而且搞到最后还没有配置成功.所以干脆写个日志记下来. tftp服务器最简单安装配置1.安装tftp-server sudo apt-get install

详解Linux下搭建VPN服务器(CentOS、pptp)_Linux

本文介绍在安装CentOS操作系统的Xen VPS上,如何搭建PPTP VPN服务.包括PPTP的安装.配置,以及相应的iptables规则.本文暂时不涉及PPTP流量控制的部分,等抽空学明白了FreeRADIUS,再来写续篇.2011年7月20日更新:在安全建议这一部分,增加了使用不同的IP地址,分别提供VPN服务和Web等其他常规服务,以及使用不同IP地址时如何书写iptables规则的内容. 写在前面 在Godaddy一美元COM域名的怂恿下,这几天先是拿到了这个gnailuy.com,然

在Linux下搭建Git服务器的方法详解_相关技巧

前言 GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用. 我打算自己搭建git服务器.虽然目前已经有很不错的git工具,如github,coding.net等,但是为了安全,减少限制和开销,还是放在自己的服务器为好.下面给出安装配置的过程,有问题欢迎讨论和交流,我会及时回复的. 第一步 安装git:可以通过命令的方式快速安装,不同的linux的安装方法可能不

在Windows Server 2008 R2服务器下架设VPN服务器的方法_win服务器

系统环境: Windows Server 2008 R2 Enterprise 6.1.7600.16385 RRAS 5.2.0000 NPS 6.1.7600.16385 测试目的:架设VPN服务器并通过VPN访问内部网络 操作步骤: 1.在服务器管理器中添加角色"网络策略和访问服务",并安装以下角色服务: 下一步直到安装完成. 2.在 开始->管理工具->路由和远程访问 中打开RRAS,简陋的界面如下: 点击服务器状态,可看到目前只有一台服务器(就是本机).以我的计算

在WINXP下建立VPN服务器的方法_服务器

最近想在WinXP上创建一个VPN服务器,在网上找了找,找到了相关资料,转来贴之. 利用WINXP不需要第三方软件,可以直接构建一个VPN服务器,如果没有采用SOFTETHER,虚拟HUB的必要的话,要实现VPN,可以直接用WINXP来实现.     接下来,我们以WINXP操作系统,宽带连接来构建一个虚拟专用网络.     第一步: VPN服务器的建立     右单击,网上邻居,选属性,打开网络连接属性. 在"网络任务"里选择,创建一个新的连接. 打开新建连接向导. 然后,点 下一步

Ubuntu下搭建web服务器

一.开始安装MySQL5 sudo apt-get install mysql-server mysql-client 二.安装Apache2 Apache2的是作为一个Ubuntu的软件包,因此我们可以直接用下面命令安装它: sudo apt-get install apache2 现在,您的浏览器到127.0.0.1,你应该看到Apache2的测试页的内容   Apache的默认文档根目录是在Ubuntu上的/var/www目录 ,配置文件是/ etc/apache2/apache2.con

Ubuntu下搭建Java开发环境方法详解

具体安装步骤及问题: 本文以当前用户帐号安装和配置为例,不像切换root帐号那么麻烦,偶尔还会有权限问题. 1.安装jdk 1.6 我安装的是jdk-6u45-linux-x64.bin,在Ubuntu上安装rpm挺费事,.bin文件直接安装就ok.jdk 1.6版本还是很不错的,关键是要和"工作大环境"相统一.要稳定不要最新,新版不一定是好的,附上:jdk官方下载地址. 下载后,打开终端(ctrl+alt+t),进入到下载的文件目录,再执行命令安装到指定目录,如我的jdk安装目录为:

ubuntu下搭建nfs服务器

1.首先查看系统中是否安装了nfs服务,命令为:dpkg -l | grep nfs  2. 如果没有安装如上文件 则在线安装nfs服务和客户端及端口映射程序 命令为: apt-get install nfs-kernel-server nfs-common portmap  在这里的portmap被rpcbind替代 3.安装好后修改 共享的配置文件,命令为:vim /etc/exports 图中的白色未注释的部分是我自己添加的共享目录/rootnfs    *---允许访问的网段,也可以是i

如何使用pptp在ubuntu下搭建动态ip的vpn

问题描述 如何使用pptp在ubuntu下搭建动态ip的vpn 刚接触linux和vpn,很多东西搞不明白,按照百度的资料操作也有很多东西搞不懂,现在也没搭出来,希望各位指教 已有条件是这样的 用来作为服务器的电脑系统为ubuntu 14.04.3,内网ip为192.168.1.100,外网为动态ip 准备使用pptp进行搭建 问题主要是以下几点 1.看到的资料都需要把dns设置为google的8.8.8.8和8.8.4.4,可我只需要国内的远程登录.还需要设置境外的dns么?如果需要设置境内的