Ubuntu配置openVPN服务端和客户端

CentOS停服之后(CentOS 7停服之后该怎么安装软件呢?),有些常用的服务要迁移到Ubuntu上。我们刚刚测试了如何在Ubuntu中手搓一个自动创建Easy-RSA证书的脚本(在Ubuntu系统手撸一个自动创建SSL证书的SHELL脚本),接下来,就可以试试配置服务端和客户端了。

服务端的配置跟CentOS应该是差不多,我们先看一下。

首先检查软件,Ubuntu默认安装了openVPN软件。

跟CentOS一样(配置优化:将openVPN的配置文件合4为1),检查openVPN的安装路径,没有发现server.conf配置文件。

那就手工创建一个,因为配置文件中包含证书文件信息,我们再验证一下上次的脚本信息可用性。

证书生成没有问题,然后我们将证书文件复制到/etc/openvpn/server/路径下。

cp /usr/share/easy-rsa/pki/ca.crt /etc/openvpn/server/ca.crt
cp /usr/share/easy-rsa/pki/issued/ttserver.crt /etc/openvpn/server/ttserver.crt
cp /usr/share/easy-rsa/pki/private/ttserver.key /etc/openvpn/server/ttserver.key
cp /usr/share/easy-rsa/pki/dh.pem /etc/openvpn/server/dh.pem

还是在/etc/openvpn/server/路径下,新建服务端配置文件server.conf,写入以下内容:

local 0.0.0.0
proto tcp
port 44331
dev tun
ca /etc/openvpn/server/ca.crt
cert /etc/openvpn/server/ttserver.crt
key /etc/openvpn/server/ttserver.key
dh /etc/openvpn/server/dh.pem
topology subnet
server 10.153.117.0 255.255.255.0
push “dhcp-option DNS 8.8.8.8”
push “redirect-gateway def1 bypass-dhcp”
duplicate-cn
keepalive 20 120
persist-key
persist-tun

检查服务配置文件openvpn.service,发现在/lib/systemd/system/下有一个配置文件,配置文件内容如下:

我们尝试直接修改这个配置文件,改成和CentOS系统中一样的配置。

接下来,重新加载服务试一下。

systemctl daemon-reload
systemctl restart openvpn

状态正常,查看端口监听状态:

检查ufw状态,可以参考命令指导添加规格或者直接禁用ufw(ufw命令简介)。

ufw不能配置NAT,使用iptables启用NAT,并使能本地转发功能。

iptables -t nat -A POSTROUTING -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
到这里,服务端配置就结束了,接下来,我们配置客户端(Ubuntu系统如何连接或断开openVPN)。

在网络设置的GUI界面,我们可以直接看到VPN的配置。

点击加号,可以看到系统默认支持openVPN和PPTP这两种VPN,我们本次选择上面的openVPN。

跟之前OpenWrt的客户端配置类似(OpenWrt配置openVPN客户端),需要选择认证方式并选中对应的证书文件。

点击Advanced可以查看高级配置,配置内容基本与OpenWrt的配置一致,在这里,我们需要调整一下网关的端口号配置,并点击“Apply”应用。

返回添加VPN页面,点击右上角的“Add”完成openVPN连接的创建。

回到网络配置页面,点击VPN连接后面的开关,发起连接。

连接成功后,可以看到右上角状态栏显示了一个VPN图标。

查看网络信息,虚拟网卡tun0获取到了一个10.153.117.2/24的IP地址。

查看路由信息。

OpenVPN下发的路由优先级优于默认路由,流量经服务端进行转发,可以正常访问网络。

测试成功!

声明:文中观点不代表本站立场。本文传送门:https://eyangzhen.com/419257.html

(0)
联系我们
联系我们
分享本页
返回顶部