内网穿透(openvpn)

environment:

两台服务器:
本地服务器(local):centos7
具备公网ip 的云服务(cloud)centos7
通过内网穿透给两服务器创建一个网络通道
使用工具openvpn或frps,推荐openvpn,frps不知为何会占用很大的资源

(三)通过内网穿透给两服务器创建一个网络通道(openvpn)

通过`openvpn`创建完成网络通道后,通过`ifconfig`了解到虚拟局域网内:
cloud:10.0.0.1
local:10.0.0.6

cloud作为服务端,local作为客户端

1.生成证书
1.1 用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/		# 进入文件夹
1.2 配置vars文件

1.png

对以上参数进行修改(没有实际意义,可以随便写)

· 对第二个KEY_EMAIL要注释掉,否则会覆盖

完成后执行命令

source vars #使刚刚设置的环境变量生效
./clean-all

执行后会在当前目录下生成一个keys文件夹,并且后面生成的证书都在这个文件夹中

1.3 生成根证书
./build-ca

keys目录下会多出ca.crtca.key两个文件

  • ca.crt:根证书
  • ca.key:根密钥
1.4 生成服务端证书
./build-key-server server

后面按着填便好,且都是y

完成会在keys下生成两个文件server.crtserver.key,即证书和密钥

1.5 生成客户端证书
./build-key client

同上操作,最后在keys文件夹下生成client.crtclient.keyclient.csr三个文件

1.6 生成密钥交换文件
./build-dh 

同上,最后在keys文件夹下生成dh2048.pem的文件

2. 配置服务端
2.1 安装OpenVPN
yum install -y openvpn
2.2 在/etc/openvpn下创建keys目录
mkdir /etc/openvpn/keys
2.3 将证书拷贝至/etc/openvpn/keys目录下
cp {ca.crt,server.crt,server.key,dh2048.pem} /etc/openvpn/keys/
2.4 创建服务端配置文件

将安装OpenVPN时自带的server.conf文件拷贝到/etc/openvpn

cp /usr/share/doc/openvpn/sample/sample-config-files/server.conf /etc/openvpn/
2.5 属性修改

修改为tcp连接

2.png
3.png

修改相关证书和密钥位置

7.png

配置转发规则

4.png

修改拒绝服务攻击证书

5.png

修改加密模式

6.png

注释掉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

8.png

之后通过ip addr可见到,已经生成了一个虚拟网卡,并且分配了网段地址

9.png

3.配置客户端(默认已有openvpn)
3.1 下载证书、密钥、配置文件

创建文件夹

mkdir /path/openvpn

将刚生成的client.keyclient.crtca.crt/etc/openvpn/keys/ta.key/usr/share/doc/openvpn/sample/sample-config-files/client.conf都黏贴到新建文件夹下(保证是同一文件夹,因为配置文件默认加载同一目录下的其他内容,没在同一文件夹下则报not found

3.2 修改客户端配置文件client.conf

同上修改连接方式为tcp

修改加密模式

cipher AES-256-CBC -> cipher AES-256-GCM

根据自己需要修改配置文件路径

3.3 启动连接测试

/path/openvpn目录下测试连接命令

openvpn ./client.ovpn

如下则启动成功

10.png

3.4 设置后台启动
openvpn --daemon --config /path/openvpn/client.ovpn

也要在openvpn目录下

完成后使用命令ip addr则可以见到分配ip10.0.0.6

最后两边互相ping一下,就测试完成了

查看openvpn运行状态

ps -ef | grep 'openvpn'
kill pidId		# 停止运行
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值