open(薇恩)虚拟专用network

服务概念:
虚拟专用网络,实际就是在网络中开辟一条虚拟专用线路

应用分类:
1.主机远程访问***服务
2.企业网络之间***服务
3.互联网公司多IDC机房之间***服务

传输数据协议方式:
PPTP 终端与终端之间建立
L2TP:二层隧道协议 L2TP可以提供隧道验证,而不是PPTP则不支持隧道验证
IPsec 保证数据包加密特性 特殊封装技术
SSL 保证数据包加密通讯方式 对数据信息进行加密(公钥-证书 私钥-钥匙)

服务架构原理:
利用虚拟专用网络,实现让外网主机获取架构中内网地址信息,实现利用内网地址进行数据传递
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
服务架构环境
windows主机 外网主机 10.0.0.1 (模拟公网地址)
v*nserver主机 10.0.0.63(模拟公网地址) 172.16.1.41(模拟私网地址)
web01 172.16.1.7 (模拟私网地址)
PS:确保每台主机时间做好正确同步

服务部署过程
第一个历程:下载安装所需软件程序

yum install -y openv*n easy-rsa

open薇P恩: 服务程序软件包
easy-rsa: 可以用于生成证书(公钥)和秘钥信息 == 类似于 ssh-keygen 生成了私钥和公钥信息

第二个历程:创建服务端所需的证书和密钥信息

cp -r /usr/share/easy-rsa/  /etc/openv*n/     
	cp  /usr/share/doc/easy-rsa-3.0.6/vars.example  /etc/openv*n/easy-rsa/3.0.6/vars   --- 企业公司信息记录文件
	cd /etc/openv*n/easy-rsa/3.0.6/
./easyrsa init-pki    --- 创建一个保存证书和秘钥信息目录环境
	Your newly created PKI dir is: /etc/openv*n/easy-rsa/3.0.6/pki
# 创建服务端ca证书 ??公钥??
	./easyrsa build-ca  nopass
	/etc/openv*n/easy-rsa/3.0.6/pki/ca.crt
# 创建服务端证书 类似服务端公钥和私钥
	./easyrsa gen-req openv*n nopass
	/etc/openv*n/easy-rsa/3.0.6/pki/private/openv*n.key    --- 生成秘钥信息
	./easyrsa sign server openv*n
	/etc/openv*n/easy-rsa/3.0.6/pki/issued/openv*n.crt     --- 生成证书文件信息
# 生成Diffie-Hellman数据文件
	./easyrsa  gen-dh                                      --- 生成密钥交换文件
	/etc/openv*n/easy-rsa/3.0.6/pki/dh.pem
=========================================================
	总结:以上操作完毕,生成以下文件信息
	cp /etc/openv*n/easy-rsa/3.0.6/pki/ca.crt  /etc/openv*n/server
	cp /etc/openv*n/easy-rsa/3.0.6/pki/private/openv*n.key  /etc/openv*n/server
	cp /etc/openv*n/easy-rsa/3.0.6/pki/issued/openv*n.crt   /etc/openv*n/server
	cp /etc/openv*n/easy-rsa/3.0.6/pki/dh.pem    /etc/openv*n/server
	=========================================================

第三个历程:编写open配置文件
cp /usr/share/doc/openv
n-2.4.8/sample/sample-config-files/server.conf /etc/openv
n/
vim /etc/openv
n/server.conf

[root@v*n openv*n]# grep  ^[a-Z]  server.conf 
local 10.0.0.41
port 1194
proto tcp
dev tun
ca /etc/openv*n/server/ca.crt
cert /etc/openv*n/server/openv*n.crt
key  /etc/openv*n/server/openv*n.key  # This file should be kept secret
dh /etc/openv*n/server/dh.pem
topology subnet
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 172.16.1.0 255.255.255.0"
keepalive 10 120
cipher AES-256-CBC
persist-key
persist-tun
status /var/log/openv*n-status.log
log-append /var/log/openv*n.log
verb 3
mute 20

解释

25 local 10.0.0.63    --- 设置V*N服务监听地址信息
	32 port 1194          --- 设置服务端口号码,默认是1194
	35 proto tcp          --- V*N链路通讯协议使用TCP协议,保证数据传输安全性
	53 dev tun            --- 使用隧道进行传输数据
    78 ca /etc/openv*n/server/ca.crt
    79 cert /etc/openv*n/server/openv*n.crt
	80 key /etc/openv*n/server/openv*n.key
	85 dh /etc/openv*n/server/dh.pem
	92 topology subnet    --- 识别正确掩码信息
	101 server 10.8.0.0 255.255.255.0          --- 设置一个客户端和v*n服务端进行直连通讯地址
	141 push "route 172.16.1.0 255.255.255.0"  --- 项客户端推送一个内网网段路由条目信息
    231 keepalive 10 120  --- TCP长连接超时时间
    244 ;tls-auth ta.key 0      --- !!! 一定要关闭tls功能
	287 status /var/log/openv*n-status.log     --- 生成一个openv*n服务状态日志信息文件
	297 log-append   /var/log/openv*n.log      --- 生成一个openv*n服务运行日志信息文件
	315 ;explicit-exit-notify 1 --- !!! 一定关闭此功能

第四个历程:启动服务程序(守护进程方式启动)

# vim /usr/lib/systemd/system/openv*n.service
    [Unit]
    Description=openv*n service
    After=network-online.target
    Wants=network-online.target
    
    [Service]
    Type=forking
    User=root
    Group=root
    ExecStart=/usr/sbin/openv*n --daemon --config /etc/openv*n/server.conf
    ExecStop=/bin/kill -9 $MAINPID
    Restart=on-failure
    PrivateTmp=true
    
    [Install]
    WantedBy=multi-user.target

systemctl daemon-reload
systemctl start openvn
systemctl enable openv
n

================================================================
	openv*n 服务第一个大坑:服务无法启动
	第一步:利用命令测试配置文件信息是否正确
	        openv*n /etc/openv*n/server.conf
			netstat -lntup|grep 1194
	第二步:查看配置文件配置信息
	第三步:确认编写启动文件是否正确
	================================================================

windows主机配置部署过程(***客户端部署过程)
第一个历程:下载open 客户端软件并安装

D:\Program Files (x86)\OpenV*N\config     --- 在此目录中可以进行客户端配置

提示:是在config目录中,可以不是子目录中,只要是在config中就可以
第二个历程:生成客户端证书和密钥文件

cd /etc/openv*n/easy-rsa/3.0.6/
	./easyrsa gen-req client01  nopass
	/etc/openv*n/easy-rsa/3.0.6/pki/private/client01.key
  
    ./easyrsa sign client client01
	/etc/openvp*n/easy-rsa/3.0.6/pki/issued/client01.crt

整理客户端目录中数据文件

cp /etc/openv*n/easy-rsa/3.0.6/pki/private/client01.key  /etc/openv*n/client/
cp /etc/openv*n/easy-rsa/3.0.6/pki/issued/client01.crt   /etc/openv*n/client/
cp /etc/openv*n/easy-rsa/3.0.6/pki/ca.crt  /etc/openv8n/client

第三个历程:将客户端证书或者密钥文件导到Windows中

cd /etc/openv*n/client/
	sz -y  client01.key client01.crt ca.crt

在Windows中生成配置文件
openn程序目录下–\sample-config — 获取client.ovn 放入到 – config目录相应子目录中
在这里插入图片描述
复制到如下图:
在这里插入图片描述
其余的客户端文件是在linux中生成导出到这儿的

第四个历程:编写修改客户端配置文件
编写client.ov*n客户端配置文件

client
dev tun
proto tcp
remote 10.0.0.63 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client01.crt
key client01.key
cipher AES-256-CBC
verb 3

第五个历程:启动open 客户端程序
双击运行Windows主机上 openVNgui程序 --右下角找到运行openvn图标 — 右键进项连接
在这里插入图片描述
在这里插入图片描述

第六个历程:进行测试验证:
验证一:进行10.0.0.1地址测试

在这里插入图片描述
验证二:进行ping内网地址
在这里插入图片描述
确认01:服务端内网主机是否开启配置回指路由信息
在这里插入图片描述
确认02:确认openV*N是否开启内核转发功能
在这里插入图片描述
部署过程遇到的坑:

确认证书和私钥文件是否创建正确
如果私钥或证书文件创建有异常  ---  将pki目录删除 重新创建pki目录生成证书和私钥文件
发布了189 篇原创文章 · 获赞 17 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/weixin_42506599/article/details/104644439
今日推荐