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,参考我另一篇博客有配置,或网上查找资料配置yum。



● 安装 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这里就不做详细说明了。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------
结束
VPN服务器的配置与应用的更多相关文章
- centos6.4安装配置vpn服务器步骤详解
centos6.4安装配置vpn服务器步骤详解,从安装VPN到配置VPN服务器.配置VPN服务器的路由转发功能,每一步都很详细 一.VPN服务器环境说明 操作系统:CentOS release ...
- Linux下如何搭建VPN服务器(转)
VPN服务器的配置与应用 实验场景 通过将Linux配置VPN服务器允许远程计算机能够访问内网. 我的目的: 现在需要开发第三方接口,而第三方接口有服务器IP地址鉴权配置,这样在本地开发出来的程序每次 ...
- suse linux 10 下配置vpn服务器(pptp)
一.安装所需的软件包: pptpd-*.rpm ppp-*.rpm pptp-*.rpm 一般情况下系统已经将pptp和ppp包安装好了,所以只需安装pptpd ...
- Linux (Ubuntu) 下配置VPN服务器
昨天网上找了下VPN的相关信息,居然各种撞墙,特别郁闷,自己不容易找到的东西,记录下VPN的配置信息 ubuntu 13.1下配置VPN ,采用PPTP实现, 第一步.安装pptpd,没有安装包记得 ...
- Linux安装配置VPN服务器
一.实验简介 VPN ,中文翻译为虚拟专有网络,英文全称是 Virtual Private Network .现在 VPN 被普遍定义为通过 一个公用互联网络建立一个临时的.安全的连接,是一条穿过混乱 ...
- 【已解决】新搭建的VPN服务器客户端无法正常连接
昨天花了一天的时间,终于把VPN服务器搭建好了.但是客户端却一直提示无法拨号成功.查看VPN日志如下:[root@localhost log]# tail -f messages Jun 13 14: ...
- Linux下搭建VPN服务器(CentOS、pptp)转
先说我搭建过程中出现的问题吧: 按照 教程搭建好之后出现了619错误,查看日志:/var/log/messages: Nov 20 09:46:20 localhost pptpd[7498]: GR ...
- ubuntu 搭建PPTP VPN服务器
上一篇文章介绍了如何在Ubuntu服务器上搭建IPSEC L2TP VPN服务器.继续介绍如何在Ubuntu服务器上搭建PPTP VPN服务器. 首先安装以下所需包 #apt-get install ...
- 绕过校园网的共享限制 win10搭建VPN服务器实现--从入门到放弃
一.开篇立论= =.. 上次说到博主在电脑上搭建了代理服务器来绕过天翼客户端的共享限制,然而经过实际测试还不够完美,所以本着生命不息,折腾不止的精神,我又开始研究搭建vpn服务器= =... (上次的 ...
随机推荐
- Redis-秒杀场景应用
Redis Util实现 package test.jedis; import java.util.List; import java.util.Set; import redis.clients.j ...
- 基于vs2005以上版本Qt程序发布的注意事项(讲了manifest的问题)
最近发现了一个非常恼人的程序deployment的问题,估计大家有可能也会遇到,特此memo. 问题的出现我觉得主要还是微软搞的花头太多, 一个不知所谓的manifest文件让本来简单的程序发布变得困 ...
- Qt与VS2005/2008的完美配合(自己编译Qt4.5.1的详细步骤)
介绍 用过Linux的人想必都知道Qt(不是QuickTime,呵呵)这个名称,KDE就是用Qt写的,我也是接触Linux后才认识它的. Qt原先是奇趣科技TM(Trolltech)的产品,由Haav ...
- clang: error: no such file or directory: 报错
clang: error: no such file or directory: '/Users/KuaiYong/Desktop/svn/gamebox_v1.2/SettingViewContro ...
- Appium-001-测试开发环境搭建(Android - Win7)
随着移动端 App 测试自动化的兴起,为更好的控制产品质量,越来越多的中大型公司开始了移动端的自动化测试.Appium 自动化测试技术也是我很早之前就想学习的一门技术,却一直没有比较空余的时间来学习( ...
- 将option添加到select框
var select=document.createElement("select"); select.setAttribute("class","f ...
- Java学习——变量类型
Java有3类变量 局部变量 成员变量(实例变量) 类变量(静态变量) 局部变量 局部变量声明在方法.构造方法或者语句块中: 局部变量在方法.构造方法.或者语句块被执行的时候创建,当它们执行完成后,变 ...
- SQLserver 表字段修改语句
增加字段 ) 删除字段 ALTER TABLE table_NAME DROP COLUMN column_NAME 修改字段类型 ALTER TABLE table_name ALTER COLUM ...
- mantis 安装问题
1. 邮件 修改 config_defaults_inc.php $g_administrator_email = 'mantis@pooy.net'; $g_webmaster_email = 'm ...
- jquery-mockjax初试
1. 原理 jquery-mockjax是用于mock 前台ajax向后台请求的返回数据. 原理很简单 在你js代码要发送ajax请求的地方断点一下,然后比较在[引入jquery-mockjax] 和 ...