Linux下如何搭建VPN服务器(转)
VPN服务器的配置与应用
实验场景 通过将Linux配置VPN服务器允许远程计算机能够访问内网。

我的目的:
现在需要开发第三方接口,而第三方接口有服务器IP地址鉴权配置,这样在本地开发出来的程序每次都要发布到服务器上测试,如果是调试过程中每次这样比较麻烦,所以需要能直接通过VPN拨到这个服务器上,这个本地就可以直接开发调试了。
一、下载并安装VPN服务
1、下载所需安装包
输入:wget http://poptop.sourceforge.net/yum/stable/packages/dkms-2.0.17.5-1.noarch.rpm
输入:wget http://poptop.sourceforge.net/yum/stable/packages/kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm
输入:http://poptop.sourceforge.net/yum/stable/packages/pptpd-1.3.4-2.rhel5.x86_64.rpm
因为上面的包官方会经常升级变动,如果下载不到,则根据名称到 http://poptop.sourceforge.net/yum/stable/packages/ 下载
2、依次安装
● 安装gcc,这是c编译类库(如果服务器已经有则不需要安装)
yum -install gcc
如果服务器配置配置好yum,参考 http://www.linuxidc.com/Linux/2012-02/53577.htm 。



● 安装 dkms-2.0.17.5-1.noarch.rpm
rpm -ivh dkms-2.0.17.5-1.noarch.rpm

● 安装 kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm
rpm -ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm

● 安装 pptpd-1.3.4-2.rhel5.x86_64.rpm
rpm -ivh pptpd-1.3.4-2.rhel5.x86_64.rpm

二、配置VPN服务器
1、配置主配置文件
vi /etc/pptpd.conf
在最后追加内容:
debug
ppp /usr/sbin/pppd
option /etc/ppp/options.pptpd
localip 117.34.78.222
remoteip 192.168.0.2-4

2、配置账号文件
vi /etc/ppp/chap-secrets
编辑内容为(IP中*号代表所有):
# Secrets for authentication using CHAP
# client server secret IP addresses
用户名 pptpd 密码 *
用户名 pptpd 密码 192.168.0.3
用户名 pptpd 密码 192.168.0.4

3、启动服务
service pptpd start

4、查看端口 PPTP使用的1723端口侦听
netstat -ntpl

5、设置NAT并打开Linux内核路由功能
依次执行如下命令:
iptables -t nat -F
iptables -t nat -A POSTROUTING -s 192.168.0.2/24 -j SNAT --to 117.34.78.222
echo 1 > /proc/sys/net/ipv4/ip_forward

6、配置VPN自动启动
执行命令:ntsysv

7、设置iptables允许VPN连接(或禁用防火墙)
依次执行命令:
iptables -I INPUT -p tcp --dport 1723 -j ACCEPT
iptables -I INPUT -p tcp --dport 47 -j ACCEPT
iptables -I INPUT -p gre -j ACCEPT
三、使用VPN客户端接入
服务器IP地址就是我们上面配置的117.34.78.22,账号和密码也是配置文件中设置的(我上面用红色涂改液涂改掉的部分,那里自己配置即可),关于win7如何拨号连接VPN这里就不做详细说明了。
结束
Linux下如何搭建VPN服务器(转)的更多相关文章
- Linux下快速搭建DNS服务器
一.术语解释:TTL Time To Live 缓冲保留时间ORIGIN 属于哪个域@ 代指域IN 开头需要空格SOA 一行记录类型的开始参数:forwarders {} 指向自己无法解析的域名跳转到 ...
- linux 下安装 搭建 svn服务器
1.下载svn http://subversion.apache.org/download 下载完成后解压,执行 ./configure --prefix=/usr/svn 提示 configure: ...
- 绕过校园网的共享限制 win10搭建VPN服务器实现--从入门到放弃
一.开篇立论= =.. 上次说到博主在电脑上搭建了代理服务器来绕过天翼客户端的共享限制,然而经过实际测试还不够完美,所以本着生命不息,折腾不止的精神,我又开始研究搭建vpn服务器= =... (上次的 ...
- [Ubuntu] Ubuntu搭建VPN服务器pptpd
在 Ubuntu 上搭建 VPN 服务器的方法非常多,比较著名的有 PPTP, L2TP/IPSec 和 OpenVPN. 这三种方式中后两者的安全性比较好,但配置较麻烦.其中 OpenVPN 在 W ...
- CentOS 6.5下快速搭建ftp服务器[转]
CentOS 6.5下快速搭建ftp服务器 1.用root 进入系统 2.使用命令 rpm -qa|grep vsftpd 查看系统是否安装了ftp,若安装了vsftp,使用这个命令会在屏幕上显示vs ...
- Linux中用postfix搭建邮件服务器实战详解
Linux中用postfix搭建邮件服务器实战详解 postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件.Postfix试图更快.更容易管理.更安全,同时 ...
- CentOS 6.5下快速搭建ftp服务器
来源:Linux社区 作者:Linux CentOS 6.5下快速搭建ftp服务器 1.用root 进入系统 2.使用命令 rpm -qa|grep vsftpd 查看系统是否安装了ftp,若安装了v ...
- Linux下配置一个VNC服务器
在Linux下配置一个VNC服务器,并设置2个用户,要求其中一个用户登录时不需要输入密码. 然后在客户端使用ssh+vncview的方式访问. 1确认vnc安装 2配置vncserver 3测试vnc ...
- linux下svn 搭建
linux 下SVN搭建加自动提交更新到指定目录一.安装#yum install subversion yum安装SVN#mkdir -p /opt/svn/repos 创建s ...
随机推荐
- 软件开发之路、Step 1 需求分析
百度百科 需求分析 所谓"需求分析",是指对要解决的问题进行详细的分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后应输出什么.可以说,在软件工程当中的“需求分析” ...
- 2016温碧霞爱情《爱在深秋》HD720P.国语中字
导演: 林家威编剧: 林家威 / 李非 / 黄国兆主演: 温碧霞 / 谭耀文 / 赵炳锐 / 方皓玟 / 王建成类型: 爱情制片国家/地区: 香港语言: 汉语普通话上映日期: 2016-01-22(中 ...
- GEOS库学习之三:空间关系、DE-9IM和谓词
要判断两个多边形的关系,实际上属于几何图形空间关系判断.几何图形并不只有多边形一种,它包括点.线.面构成的任何图形,两两之间相互关系也有很多种,因此空间关系非常复杂.根据前人的研究,总结出了DE-9I ...
- [C++] 如何查看DLL有哪些函数
Visual Studio里面自带了一个工具 dumpbin. 打开VS的command line,输入dumpbin可以查看帮助. 我们查看导出函数的话,使用选项/EXPORTS. 如果函数太多,可 ...
- Ubuntu安装uget和aria2下载工具
Windows下的下载工具有迅雷,快车等.Ubuntu下也有强大的下载工具uget和aria2. 一.安装.uget和aria2都可以在“软件中心”中安装,但是版本太老啦,所以最好还是在终端中添加pp ...
- win7 多点触摸USB的触摸屏
USB.C 读取bCommon判断执行哪个动作 if (bCommon & rbRSUINT)//0x02 // Handle Resume interrupt { Usb_Resume(); ...
- 【原创】基于Memcached 实现用户登录的Demo(附源码)
一个简单的Memcached在Net中运用的一个demo.主要技术 Dapper+MVC+Memcached+sqlserver, 开发工具为vs2015+Sql 效果图如下: 登录后 解决方案 主要 ...
- Javascript基础系列之(一)JavaScript语法
javascript的语法 1.区分大小写 javascript中,变量.函数.运算符都区分大小写. 2.弱类型变量 定义变量只用 "var"关键字 var age = 25; v ...
- 【BZOJ 3223】文艺平衡树 模板题
就是打个翻转标记,下推标记时记得交换左右孩子指针,查询kth和中序遍历输出时也记得要下推标记同时交换指针,二者不可缺!←这是易错点 仿陈竞潇学长模板的代码: #include<cctype> ...
- XMLHTTPRequest对象不能跨域获取数据?!
写了一小段代码,是用XMLHTTPRequest对象来获取数据的,在本地服务器中,运行的很顺利,但是转向实际服务器(实质上就是转向http://gumball.wickedlysmart.com获取一 ...