在服务器上安装OpenVPN(以Ubuntu为例)

建立VPN(虚拟专用网络)通常涉及选择适合需求的VPN类型、配置服务器和客户端,并确保安全连接,以下是详细步骤和注意事项:


VPN的常见类型

  1. 远程访问VPN

    用于个人远程安全访问公司内网(如OpenVPN、IPSec)。

  2. 站点到站点VPN

    连接两个局域网(如企业分支机构间,常用IPSec或WireGuard)。

  3. 自建VPN vs 商业VPN服务

    自建:更高可控性,适合企业;商业服务(如NordVPN)适合个人隐私保护。


自建VPN步骤(以OpenVPN为例)

准备条件

  • 服务器:云服务器(如AWS、阿里云)或本地主机,需公网IP。
  • 操作系统:Linux(如Ubuntu/CentOS)。

安装与配置

sudo apt install openvpn easy-rsa
# 生成证书和密钥(CA、服务器/客户端证书)
make-cadir ~/openvpn-ca
cd ~/openvpn-ca
source vars
./clean-all
./build-ca          # 生成CA证书
./build-key-server server  # 服务器证书
./build-key client1 # 客户端证书
./build-dh          # Diffie-Hellman参数
openvpn --genkey --secret ta.key  # TLS-Auth密钥
# 复制文件到OpenVPN目录
cp ~/openvpn-ca/keys/{server.crt,server.key,ca.crt,dh2048.pem,ta.key} /etc/openvpn/
# 配置服务器(示例:/etc/openvpn/server.conf)
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"  # 客户端流量通过VPN
push "dhcp-option DNS 8.8.8.8"           # 推送DNS
keepalive 10 120
tls-auth ta.key 0
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
# 启用IP转发(如需VPN访问内网)
echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
# 启动OpenVPN
sudo systemctl start openvpn@server
sudo systemctl enable openvpn@server

配置客户端

  • 将生成的client1.crtclient1.keyca.crtta.key下载到客户端。
  • 创建客户端配置文件(如client.ovpn):
    client
    dev tun
    proto udp
    remote your_server_ip 1194  # 替换为服务器公网IP
    resolv-retry infinite
    nobind
    persist-key
    persist-tun
    ca ca.crt
    cert client1.crt
    key client1.key
    remote-cert-tls server
    tls-auth ta.key 1
    cipher AES-256-CBC
    verb 3
  • 使用OpenVPN客户端导入配置(如Windows的OpenVPN GUI或Android的OpenVPN Connect)。

其他VPN方案

  1. WireGuard(更轻量)

    # 服务器安装(Ubuntu)
    sudo apt install wireguard
    wg genkey | sudo tee /etc/wireguard/privatekey | wg pubkey | sudo tee /etc/wireguard/publickey
    • 配置示例(/etc/wireguard/wg0.conf):

      [Interface]
      PrivateKey = <服务器私钥>
      Address = 10.0.0.1/24
      ListenPort = 51820
      PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
      PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
      [Peer]
      PublicKey = <客户端公钥>
      AllowedIPs = 10.0.0.2/32
  2. IPSec VPN(如StrongSwan)

    适合企业级站点到站点连接,配置复杂但安全性高。


安全注意事项

  1. 防火墙规则
    • 放行VPN端口(如OpenVPN的UDP 1194,WireGuard的UDP 51820)。
      sudo ufw allow 1194/udp
  2. 证书管理

    定期轮换密钥,撤销不再使用的客户端证书。

  3. 日志监控
    • 检查/var/log/syslog或OpenVPN日志文件排查连接问题。

常见问题

  • 连接失败:检查服务器防火墙、路由表及客户端配置。
  • 速度慢:尝试更换协议(如TCP改UDP)或就近部署服务器。
  • DNS泄漏:客户端配置中强制使用VPN提供的DNS。

根据需求选择方案:个人用户推荐WireGuard(速度快),企业环境可能需要OpenVPN或IPSec,商业VPN服务则无需自建,直接下载应用即可。

在服务器上安装OpenVPN(以Ubuntu为例)

扫码下载轻舟VPN

扫码下载轻舟VPN

137-6924-5183
扫码下载轻舟VPN

扫码下载轻舟VPN