文章目录
前言
找台vpn服务器好难,找台安全稳定的服务器更难,怎么办?自己搭!
开整:
步骤1:建立服务器
为了方便使用,拥有一台Linux服务器将非常理想。您可以使用SSH登录到服务器。如果您没有服务器,像AWS、Google Cloud或DigitalOcean等服务提供了免费的层级,您可以用于此目的。
ssh username@server_ip
进入全屏模式 退出全屏模式
将“username”替换为您实际用于登录服务器的用户名。
将“server_ip”替换为服务器的IP地址。如果您使用云服务,查看服务器仪表板。
步骤2:安装OpenVPN和Easy-RSA
OpenVPN将是我们的免费VPN解决方案,我将向您展示它支持多种加密协议的方式。让我们开始安装:
sudo apt update
sudo apt install openvpn
进入全屏模式 退出全屏模式
获取Easy-RSA:
sudo apt-get update
sudo apt-get install easy-rsa
进入全屏模式 退出全屏模式
步骤3:配置
生成服务器的证书和密钥:
cd /usr/share/easy-rsa
sudo ./easyrsa init-pki
sudo ./easyrsa build-ca
sudo ./easyrsa gen-req server nopass
sudo ./easyrsa sign-req server server
进入全屏模式 退出全屏模式
在此过程中,当提示时,您需要设置密码和服务器用户名。一旦签署完成,您将在终端上看到以下内容:
[]
现在服务器已经设置好,生成Diffie-Hellman密钥交换:
sudo openssl dhparam -out /etc/openvpn/dh.pem 2048
进入全屏模式 退出全屏模式
您的终端应该类似于此:
[]
现在您需要为加强的控制通道生成HMAC签名:
sudo openvpn --genkey secret /etc/openvpn/ta.key
进入全屏模式 退出全屏模式
步骤4:服务器配置
创建服务器配置文件 /etc/openvpn/server.conf 并加入以下行:
port 1194
proto udp
dev tun
ca /etc/openvpn/easy-rsa/pki/ca.crt
cert /etc/openvpn/easy-rsa/pki/issued/server.crt
key /etc/openvpn/easy-rsa/pki/private/server.key
dh /etc/openvpn/dh.pem
tls-auth /etc/openvpn/ta.key 0
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist /etc/openvpn/ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3
进入全屏模式 退出全屏模式
您可以使用Nano在Linux终端中编写文件:
cd /etc/openvpn/
sudo nano server.conf
进入全屏模式 退出全屏模式
输入配置文件行:
[]
然后按下CTRL + O,ENTER,然后按下CTRL + X,文件将被保存。
步骤5:启用IP转发
取消注释 /etc/sysctl.conf 中的以下行以启用IP转发:
[]
激活更改:
sudo sysctl -p
进入全屏模式 退出全屏模式
步骤6:防火墙配置
配置防火墙以允许VPN流量:
sudo ufw allow 1194/udp
sudo ufw allow OpenSSH
sudo ufw enable
进入全屏模式 退出全屏模式
步骤7:客户端配置
生成客户端密钥:
cd /usr/share/easy-rsa
sudo ./easyrsa gen-req client nopass
sudo ./easyrsa sign-req client client
进入全屏模式 退出全屏模式
在此过程中,您将再次输入用户名,并使用“user”作为占位符。然后,一旦提示,键入单词‘yes’,并输入我们在第3步中用于服务器证书和密钥设置的密码。
最后,在 /etc/openvpn/ 中创建名为 client.ovpn 的客户端配置文件:
client
dev tun
proto udp
remote your_server_ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
key-direction 1
remote-cert-tls server
tls-auth ta.key 1
data-ciphers AES-256-GCM:AES-128-GCM
verb 3
进入全屏模式 退出全屏模式
将客户端证书和密钥复制到您的本地计算机。
步骤8:连接到VPN
在您的本地计算机上使用OpenVPN 连接到您的VPN服务器:
openvpn --config client.ovpn
进入全屏模式 退出全屏模式