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服务器(转)的更多相关文章

  1. Linux下快速搭建DNS服务器

    一.术语解释:TTL Time To Live 缓冲保留时间ORIGIN 属于哪个域@ 代指域IN 开头需要空格SOA 一行记录类型的开始参数:forwarders {} 指向自己无法解析的域名跳转到 ...

  2. linux 下安装 搭建 svn服务器

    1.下载svn http://subversion.apache.org/download 下载完成后解压,执行 ./configure --prefix=/usr/svn 提示 configure: ...

  3. 绕过校园网的共享限制 win10搭建VPN服务器实现--从入门到放弃

    一.开篇立论= =.. 上次说到博主在电脑上搭建了代理服务器来绕过天翼客户端的共享限制,然而经过实际测试还不够完美,所以本着生命不息,折腾不止的精神,我又开始研究搭建vpn服务器= =... (上次的 ...

  4. [Ubuntu] Ubuntu搭建VPN服务器pptpd

    在 Ubuntu 上搭建 VPN 服务器的方法非常多,比较著名的有 PPTP, L2TP/IPSec 和 OpenVPN. 这三种方式中后两者的安全性比较好,但配置较麻烦.其中 OpenVPN 在 W ...

  5. CentOS 6.5下快速搭建ftp服务器[转]

    CentOS 6.5下快速搭建ftp服务器 1.用root 进入系统 2.使用命令 rpm -qa|grep vsftpd 查看系统是否安装了ftp,若安装了vsftp,使用这个命令会在屏幕上显示vs ...

  6. Linux中用postfix搭建邮件服务器实战详解

    Linux中用postfix搭建邮件服务器实战详解 postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件.Postfix试图更快.更容易管理.更安全,同时 ...

  7. CentOS 6.5下快速搭建ftp服务器

    来源:Linux社区 作者:Linux CentOS 6.5下快速搭建ftp服务器 1.用root 进入系统 2.使用命令 rpm -qa|grep vsftpd 查看系统是否安装了ftp,若安装了v ...

  8. Linux下配置一个VNC服务器

    在Linux下配置一个VNC服务器,并设置2个用户,要求其中一个用户登录时不需要输入密码. 然后在客户端使用ssh+vncview的方式访问. 1确认vnc安装 2配置vncserver 3测试vnc ...

  9. linux下svn 搭建

    linux 下SVN搭建加自动提交更新到指定目录一.安装#yum install subversion       yum安装SVN#mkdir -p /opt/svn/repos       创建s ...

随机推荐

  1. 处理程序“ExtensionlessUrlHandler-Integrated-4.0”在其模块列表

    IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Integrated-4.0解决办法 IIS上部署MVC网站,打开后ExtensionlessUrlHandler-Int ...

  2. Qt——正则表达式

    在项目中经常会遇到对字符串进行操作的情况,我们可以直接使用QString的一些函数,但QT提供了一个更加强大的类——QRegExp,使用正则表达式来操作字符串. 先说说我最近遇到的几个问题: 1.对输 ...

  3. Linux第13周学习笔记

    网络编程 客户端-服务器编程模型 每个网络应用都是基于客户端-服务器模型. 一个应用是由一个服务器进程和一个或者多个客户端进程组成. 服务器管理某种资源,并通过操作资源来为客户端提供某种服务. 基本操 ...

  4. html 空格-有趣的试验

    首先,先给大家看一组demo <input /> <input type="submit" /> 展示效果: 为什么会出现空格呢?input不是行内元素吗? ...

  5. 需要中文版《The Scheme Programming Language》的朋友可以在此留言(内附一小段译文)

    首先给出原著的链接:http://www.scheme.com/tspl4/. 我正在持续翻译这本书,大概每天都会翻译两小时.若我个人拿不准的地方,我会附上原文,防止误导:还有些不适合翻译的术语,我会 ...

  6. java并发:中断一个正在运行的线程

    要使任务和线程能安全可靠地停止,并不是一件很容易的事情,java没有提供任何机制来安全地终止线程,那么我们该怎么办呢? 下面我们先来了解一下java中的中断机制: java中断机制是一种协作机制,也就 ...

  7. android之显示数据库信息

    关键字 ListView adapter MVC 在android开发中也使用到了MVC架构,其中的xml布局文件就是V,M就是我们定义好的javabean类,而控制器就是就是适配器类adapter ...

  8. WCF入门 (13)

    前言 公司略无聊,周三前同事推荐跳槽,于是会去更新了一下简历,突然发现,快一年了,我竟然想不出我可以往简历上添加点什么值得自豪的东西.下午和小伙伴聊了一会天,他告诉我,可以往简历上写上“英语口语水平有 ...

  9. Redis——分布式简单使用

    Redis简介:Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. Redis安装:参考博客http://www ...

  10. try throw catch异常处理机制

    /*本程序实现分块查找算法  又称索引顺序查找     需要注意的是分块查找需要2次查找  先对块查找  再对块内查找    2013.12.16    18:44*/ #include <io ...