记一次vps上的openvpn服务器搭建
环境
Ubuntu 20.04.4 LTS
kvm 架构VPS
服务器配置不高
openvpn安装(服务端)
我比较懒,所以用的一键脚本安装的。
使用工具:
openvpn-install/README-zh.md at master · hwdsl2/openvpn-install (github.com)
下载安装脚本(注意辨别文件内容)
1 | wget -O openvpn.sh https://get.vpnsetup.net/ovpn |
运行脚本自定义安装
1 | sudo bash openvpn.sh |
没有绑定域名 N
UDP快,TCP稳定,两个自己选,我这里选了TCP
更改监听端口,不要使用默认端口,改大一点。
默认 2
等待十几秒,openvpn安装完成后会根据上述配置生成一个ovpn配置文件。
这个时候ifconfig看一下,会有一个tun0的新网卡,这是openvpn的虚拟网卡
光安装完还不够,还需要配置nat转发
1 | sudo sysctl -w net.ipv4.ip_forward=1 |
x.x.x.x为vps的公网ip地址,eth0为出网的网卡,请根据自己本机配置修改(一般可能是eth0,ens33,这个网卡的ip有的vps是内网ip,有的是公网ip)
第一条命令启用ip转发
第二条命令对来自 10.8.0.0/24
网段的出站流量进行源地址伪装(NAT),并将其通过 eth0
网卡发送到外网。
第三条命令对来自 10.8.0.0/24
网段的出站流量进行源地址转换(SNAT),并将源地址转换为指定的 IP 地址(x.x.x.x
)。
因为虚拟网卡没有直通外网,所以需要将此网卡的流量转发到出网网卡,达成以VPS公网ip出网
openvpn安装(客户端)
我是在win11安装openvpn。
版本为OpenVPN 2.6.12
下载地址:
Community Downloads - Open Source VPN | OpenVPN
一直下一步下一步即可。
然后将服务端安装时生成的ovpn文件双击点开,客户端软件会导入此配置文件,后续使用直接连接服务器即可。
踩坑
1.openvpn客户端下载错了
正确的版本是如下这个
不要下载这个:
OpenVPN Connect - 适用于 Windows 的客户端软件 |OpenVPN
这个连接不上服务器的,我的报错内容是
1 | socket_protect error |
2.nat转发没配置
nat转发没配置会导致的现象是:
你能够连接上openvpn,但是连接上之后访问不了外网,ping不通其他外网ip,只能ping通vps的ip。
说明流量没有被VPS转发出去,还在VPS里打转。