赞
踩
environment:
两台服务器:
本地服务器(local):centos7
具备公网ip 的云服务(cloud)centos7
通过内网穿透给两服务器创建一个网络通道
使用工具openvpn或frps,推荐openvpn,frps不知为何会占用很大的资源
通过`openvpn`创建完成网络通道后,通过`ifconfig`了解到虚拟局域网内:
cloud:10.0.0.1
local:10.0.0.6
cloud作为服务端,local作为客户端
EasyRSA
工具生成证书# 工具下载
git clone https://github.com/bigcoder84/easy-rsa-old.git
unzip -d ./ easy-rsa-old-2.3.3.zip # 解压
cd easy-rsa-old-2.3.3/easy-rsa/2.0/ # 进入文件夹
vars
文件对以上参数进行修改(没有实际意义,可以随便写)
· 对第二个KEY_EMAIL要注释掉,否则会覆盖
完成后执行命令
source vars #使刚刚设置的环境变量生效
./clean-all
执行后会在当前目录下生成一个keys
文件夹,并且后面生成的证书都在这个文件夹中
./build-ca
keys
目录下会多出ca.crt
和ca.key
两个文件
./build-key-server server
后面按着填便好,且都是y
完成会在keys
下生成两个文件server.crt
和server.key
,即证书和密钥
./build-key client
同上操作,最后在keys
文件夹下生成client.crt
,client.key
,client.csr
三个文件
./build-dh
同上,最后在keys
文件夹下生成dh2048.pem
的文件
yum install -y openvpn
/etc/openvpn
下创建keys
目录mkdir /etc/openvpn/keys
/etc/openvpn/keys
目录下cp {ca.crt,server.crt,server.key,dh2048.pem} /etc/openvpn/keys/
将安装OpenVPN
时自带的server.conf
文件拷贝到/etc/openvpn
下
cp /usr/share/doc/openvpn/sample/sample-config-files/server.conf /etc/openvpn/
修改为tcp连接
修改相关证书和密钥位置
配置转发规则
修改拒绝服务攻击证书
修改加密模式
注释掉server.conf
的最后一行
# explicit-exit-notify 1
启用路由转发功能
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p # 检查是否修改成功
创建拒绝服务证书
cd /etc/openvpn/keys/
openvpn --genkey --secret ta.key
启动OpenVPN
cd /etc/openvpn/
openvpn --daemon --config server.conf
检测是否启动成功
netstat -lntup | grep 1194
之后通过ip addr
可见到,已经生成了一个虚拟网卡,并且分配了网段地址
创建文件夹
mkdir /path/openvpn
将刚生成的client.key
、client.crt
、ca.crt
、/etc/openvpn/keys/ta.key
、/usr/share/doc/openvpn/sample/sample-config-files/client.conf
都黏贴到新建文件夹下(保证是同一文件夹,因为配置文件默认加载同一目录下的其他内容,没在同一文件夹下则报not found
)
client.conf
同上修改连接方式为tcp
修改加密模式
cipher AES-256-CBC -> cipher AES-256-GCM
根据自己需要修改配置文件路径
在/path/openvpn
目录下测试连接命令
openvpn ./client.ovpn
如下则启动成功
openvpn --daemon --config /path/openvpn/client.ovpn
也要在openvpn
目录下
完成后使用命令ip addr
则可以见到分配ip10.0.0.6
最后两边互相ping一下,就测试完成了
ps -ef | grep 'openvpn'
kill pidId # 停止运行
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。