公网远程操作很不安全,因此决定使用内网互通模式,虽然阿里云有自带的vpn,但是太贵了,身为运维的我,一定要为公司省钱,只能想想法子,自己搭建一套内网vpn使用
环境:
阿里云vpc网络的ecs
办公网使用的ikuai 软路由
系统是centos8
网络:该服务器 10.81.184.196/16, 该网段内有好多阿里云服务器,其中一台ip为 10.81.184.186,本次就是办公网可以与 10.81.184.186 互通
要求:办公网使用内网可以随意访问阿里云服务器
-
搭建openvpn服务
-
添加路由表
-
配置openvpn内网访问策略
-
在ikuai添加阿里云内网访问路由
搭建步骤
1.搭建openvpn服务
dnf install epel-release -y
dnf install openvpn easy-rsa -y
配置
cd /etc/openvpn/
rm -rf client/* rm -rf easy-rsa/
cp -r /usr/share/easy-rsa/3.0.8/ /etc/openvpn/easy-rsa
cp -r /usr/share/doc/easy-rsa/vars.example /etc/openvpn/easy-rsa/vars
生成证书
cd /etc/openvpn/easy-rsa/
./easyrsa init-pki
./easyrsa build-ca nopass #输入 vpn.dvcloud.xin
创建服务器证书
./easyrsa gen-req server nopasss #输入 vpn.dvcloud.xin
./easyrsa sign server server #输入 yes
创建 Diffie-Hellman
./easyrsa gen-dh
openvpn --genkey --secret ta.key
cp -r ta.key /etc/openvpn/
创建客户端证书
#Monday,Tuesday、Wednesday、Thursday、Friday、Saturday 、Sunday
cd /etc/openvpn/client/
rm -rf easy-rsa/
\cp -r /usr/share/easy-rsa/3.0.8/ /etc/openvpn/client/easy-rsa
\cp -r /usr/share/doc/easy-rsa/vars.example /etc/openvpn/client/easy-rsa/vars
cd /etc/openvpn/client/easy-rsa/
./easyrsa init-pki
./easyrsa gen-req client nopass #输入 Monday
cd /etc/openvpn/easy-rsa/
find pki -name "client*" -delete
./easyrsa import-req /etc/openvpn/client/easy-rsa/pki/reqs/client.req client
./easyrsa sign client client #输入 yes
整理证书
mkdir /etc/openvpn/certs
\cd /etc/openvpn/certs
\cp /etc/openvpn/easy-rsa/pki/dh.pem .
\cp /etc/openvpn/easy-rsa/pki/ca.crt .
\cp /etc/openvpn/easy-rsa/pki/issued/server.crt .
\cp /etc/openvpn/easy-rsa/pki/private/server.key .
# one two three four five
整理客户端
mkdir /etc/openvpn/client/Monday
cd /etc/openvpn/client/Monday
cp /etc/openvpn/easy-rsa/pki/ca.crt .
cp /etc/openvpn/easy-rsa/pki/issued/client.crt .
cp /etc/openvpn/easy-rsa/pki/private/ca.key .
cp /etc/openvpn/ta.key .
cp /etc/openvpn/client/easy-rsa/pki/private/client.key .
#服务器配置如下
[root@devops openvpn]# grep '^[^;|^#]' /etc/openvpn/server/server.conf
port 31393
proto udp
dev tun
ca /etc/openvpn/certs/ca.crt
cert /etc/openvpn/certs/server.crt
key /etc/openvpn/certs/server.key
dh /etc/openvpn/certs/dh.pem
server 192.168.60.0 255.255.255.0
push "route 10.81.0.0 255.255.0.0"
client-to-client
duplicate-cn
keepalive 10 120
tls-auth /etc/openvpn/ta.key 0
cipher AES-256-CBC
comp-lzo
persist-key
persist-tun
status openvpn-status.log
log-append openvpn.log
verb 3
mute 20
explicit-exit-notify 1
打开ip转发功能
vim /etc/sysctl.conf
#增加下行到文件中
net.ipv4.ip_forward = 1
#然后执行命令
sysctl -p
启动服务
systemctl start openvpn-server@server.service
可以看的,openvpn的网络是 192.168.60.0 255.255.255.0 ,推送的路由是 10.81.0.0 255.255.0.0 ,10.81.0.0 255.255.0.0这个路由就是阿里云ecs vpc网络段
2.添加路由表
路由表下一跳填写 阿里云服务器搭建openvpn的ecs实例
3.配置openvpn内网访问策略
这个需要在安全组进行配置
打开被访问服务器的安全组,添加openvpn访问路由的ip
4.在ikuai 添加openvpn 客户端配置
保存之后,通过本地电脑访问
发现可以正常访问,第一条是ikuai路由器网关,第二条是openvpn 网关,第三条是目标服务器地址
openvpn管理平台可以参考该文章:openvpnas安装,可视化远程连接控制_第九系艾文的博客-CSDN博客