CentOS搭建V~P~N服务,实现虚拟专用网络
什么是V-P-N
V-P-N即虚拟专用网络,它的功能是:在公用网络上建立专用网络,进行加密通讯。
V-P-N网关通过对数据包的加密和数据包目标地址的转换实现远程访问。V-P-N有多种分类方式,主要是按协议进行分类。
V-P-N可通过服务器、硬件、软件等多种方式实现。本文记录的是 Linux 系统下V-P-N服务器的搭建。
实验环境
- VMware Workstations
- 一台最小化安装的CentOS7,内网IP(仅主机模式):192.168.50.128,外网IP(NAT模式):192.168.204.133
- 一台Windows7,内网IP(仅主机模式):192.168.50.129
检查网络连通性
CentOS上执行以下命令:
# 检查centos到windows之间的网络连通性
ping -c 4 192.168.50.129
# 检查centos到互联网的网络连通性
ping -c 4 www.baidu.com
安装pptpd软件包
yum install -y epel*
yum install -y ppp pptpd
修改配置文件options.pptpd
vim /etc/ppp/options.pptpd
查找ms-dns
选项,解除本行注释,同时修改NDS地址
修改配置文件pptpd.conf
vim /etc/pptpd.conf
查找ppp
选项,解除本行注释
查找localip
选项和remoteip
选项
其中localip
代表虚拟专用网络的本机地址,remoteip
代表虚拟专用网络客户端的地址池
修改chap-secrets
配置文件,添加登录用户
vim /etc/ppp/chap-secrets
其中,client
代表用户名,secret
表示密码,IP addressses
表示允许登录的IP地址(*代表不限制登录IP)
启动服务
systemctl restart pptpd
systemctl status pptpd
关闭防火墙
setenforce 0
systemctl stop firewalld.service
systemctl disable firewalld.service
firewall-cmd --state
开启Linux的路由功能
iptables -A FORWARD -i ens37 -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ens33 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
cat /proc/sys/net/ipv4/ip_forward
解释(ens37
为内网网卡,ens33
为外网网卡):
第一条命令:让发送至内网网卡的数据全部通过
第二条命令:修改数据报头信息
第三条命令:开启Linux的路由功能
第四条命令:查看是否启用了路由功能,1代表启用,0代表禁用
具体命令需要根据自己的网卡名称进行修改
设置开机自启
将 开启Linux路由功能 的命令写成shell脚本
vim /root/nat.service
添加如下内容(具体命令需要根据自己的网卡名称进行修改):
#!/bin/bash
iptables -A FORWARD -i ens37 -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ens33 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
cat /proc/sys/net/ipv4/ip_forward
添加可执行限权
chmod +x /root/nat.service
将脚本添加到开机自启目录
echo -e "/bin/bash /root/nat.service" >> /etc/rc.local
chmod +x /etc/rc.local
添加pptpd服务开机自启
systemctl enable pptpd
Windows7上配置连接V_P_N
右击网络
,选择属性
设置新的连接或网络
连接到工作区
填写V-P-N服务器的IP地址(即V-P-N服务器的内网IP)
输入用户名密码,点击连接
查看连接状态
查看IP信息(可见V-P-N连接分配的IP地址)
检查互联网的连通性
访问网页
本文链接:https://www.cnblogs.com/connect/p/linux-service-virtual-private-network.html
CentOS搭建V~P~N服务,实现虚拟专用网络的更多相关文章
- DevOps之虚拟专用网络VPN
唠叨话 关于德语噢屁事的知识点,仅提供专业性的精华汇总,具体知识点细节,参考教程网址,如需帮助,请留言. <虚拟专用网络VPN(Virtual Private Network)> 关于虚拟 ...
- 基于centos搭建微信小程序服务,配置及数据库等
基于centos搭建小程序, ps:请提前20天准备将域名备案,申请ssl证书 实验上机地址:https://cloud.tencent.com/developer/labs/lab/10004 准备 ...
- CentOS搭建NAT和DHCP服务,实现共享上网
什么是NAT? NAT(Network address translation)即网络地址转换,作为一种过渡解决手段,可以用来减少对全球合法IP地址的需求.简单的说,NAT就是在内部专用网络中使用内部 ...
- Open虚拟专用网络
目录 一:OpenVPN虚拟网络专用 1.简介: 2.OpenVPN的作用 3.远程访问VPN服务 4.OpenVPN两种类型的VPN体系结构 5.全面解析OpenVPN执行流程 6.Openvpn定 ...
- 虚拟专用网络VPN
寒假回到家里需要下载论文,怎样才能访问学校图书馆的数据库呢?解决方法是学校图书馆在内网中架设一台VPN服务器,VPN服务器有两块网卡,一块连接内网,一块连接公网.然后就可以通过互联网找到VPN服务器, ...
- 基于CentOS搭建VNC远程桌面服务
系统要求:CentOS 7.2 64 位操作系统 安装.启动 VNC VNC 远程桌面原理 名词解释: Xorg:在 Linux 用户中非常流行,已经成为图形用户程序的必备条件,所以大部分发行版都提供 ...
- 基于 CentOS 搭建 WordPress 个人博客
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 腾讯云提供了开发者实验室帮助用户搭建 WordPress 个人博客,教程内容如下,用户可以点击开发者实验室快速上机完成实验. 准备 LNMP ...
- centos 搭建 git 服务端和客户端
centos 搭建git需要设置远程服务端和客户端.远程代码存放在服务端,多个客户端可以共享和维护服务端代码. 一.服务端主机 1.创建ssh,大部分默认已经安装,有ssh就跳过 yum instal ...
- centos搭建dns服务
原文:(https://www.myjinji.top/articles/2020/04/02/1585800289945.html)[https://www.myjinji.top/articles ...
随机推荐
- Tensorflow激活函数
注意: 1.大多情况下使用Relu激活函数这种激活函数计算快,且在梯度下降中不会卡在plateaus(平稳段),对于大的输入,也不会饱和. 2.logistic function和hyperbloic ...
- SQL Server的一个不显眼的功能 备份文件的分割
SQL Server的一个不显眼的功能 备份文件的分割 当完整备份数据库的时候,我们有时候可能会遇到一种极端情况,比如服务器上C,D,E三个盘符都只剩下5G空间了 但是如果要完整备份业务库需要12G的 ...
- 使用Anemometer基于pt-query-digest将MySQL慢查询可视化
最近玩MySQL,发现了一个很不错的工具,可以把MySQL慢查询可视化,方便我们去找出和分析慢询语句,搭建的步骤不多,但网上详细教程比较少,说得也不够详细,一不小心,估计得蛋痛一会,哈哈 Percon ...
- java 基础one ---运算符and流程控制
首先java这个了解下java的基础 首先java文件都是以.java结尾的 然后 他所有的内容都是有一个入口的就是放在了public static void main(String [] args ...
- Linux 小知识翻译 - 「Linux」和病毒
据说,「Linux」系统上的病毒要远远少于Windows系统上病毒.从2种系统的普及度来看,这是很显然的, 「Linux」的使用人群很少,所以「Linux」上的病毒的扩散时,受害的范围也不大. 但是, ...
- MATLAB数值分析实验
1.用Newton迭代法求方程 的第一个正根. 作者:凯鲁嘎吉 - 博客园http://www.cnblogs.com/kailugaji/ newton.m: function x1=newto ...
- while else 结构体(自测)
while else : while循环被break打断,则不执行与while并列的else程序. count = 0 while count <= 5: count = count + 1 i ...
- [java大数据面试] 2018年4月百度面试经过+三面算法题:给定一个数组,求和为定值的所有组合.
给定一个数组,求和为定值的所有组合, 这道算法题在leetcode应该算是中等偏下难度, 对三到五年工作经验主要做业务开发的同学来说, 一般较难的也就是这种程度了. 简述经过: 不算hr面,总计四面, ...
- 阿里巴巴Web前端面试的一道JS题目,求解答!!!
题目大概是这种: function outer(){ return inner; var inner = "a"; function inner(){}; inner = 9; } ...
- Eclipse字体最好
改变字体 windows->Preferences->General->Appearance->Colors and Fonts 右边选择Java ->Java Edit ...