网络梯子

可在电脑、手机、平板等多种设备上稳定运行,安装便捷、连接简单,满足办公协作、在线学习、视频会议、影音娱乐、网页浏览等多种网络应用需求。

如何在Linux VPS上搭建VPN服务器,详细指南

dfc3544223 2026-07-02 网络梯子 1 0

在当今互联网环境中,隐私和安全问题日益受到关注,使用VPN(虚拟专用网络)可以加密网络流量,保护数据安全,并绕过地域限制,本文将详细介绍如何在Linux VPS(虚拟专用服务器)上搭建VPN服务器,帮助用户实现安全、稳定的远程连接。


准备工作

在开始搭建VPN服务器之前,需要准备以下内容:

  1. 一台Linux VPS(推荐使用Ubuntu/Debian或CentOS)。
  2. SSH访问权限(用于远程管理服务器)。
  3. root或sudo权限(用于安装和配置VPN服务)。
  4. 一个稳定的网络环境(确保VPS可以正常访问互联网)。

常见的VPS提供商包括:

  • DigitalOcean
  • Linode
  • Vultr
  • AWS Lightsail

选择合适的VPN协议

常见的VPN协议包括:

  1. OpenVPN(开源、稳定,支持TCP/UDP)。
  2. WireGuard(高性能、轻量级,适合移动设备)。
  3. IPSec/L2TP(兼容性强,但配置较复杂)。

本文以OpenVPN为例进行讲解,因其兼容性强且安全性高。


安装OpenVPN并配置服务器

1 更新系统并安装依赖

sudo apt update && sudo apt upgrade -y  # Ubuntu/Debian
sudo yum update -y  # CentOS

2 安装OpenVPN和Easy-RSA(用于证书管理)

sudo apt install openvpn easy-rsa -y  # Ubuntu/Debian
sudo yum install openvpn easy-rsa -y  # CentOS

3 设置证书颁发机构(CA)

make-cadir ~/openvpn-ca
cd ~/openvpn-ca

编辑vars文件,修改证书信息(如国家、组织等):

nano vars

生成证书:

source vars
./clean-all
./build-ca
./build-key-server server
./build-dh
openvpn --genkey --secret keys/ta.key

4 配置OpenVPN服务器

将生成的证书复制到OpenVPN目录:

cd ~/openvpn-ca/keys
sudo cp ca.crt server.crt server.key ta.key dh2048.pem /etc/openvpn/

从示例配置生成服务器配置文件:

gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz | sudo tee /etc/openvpn/server.conf

修改server.conf以适配你的网络:

sudo nano /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"
push "dhcp-option DNS 8.8.8.8"
keepalive 10 120
tls-auth ta.key 0
cipher AES-256-CBC
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3

5 启用IP转发(让VPN客户端访问互联网)

sudo nano /etc/sysctl.conf

取消注释或添加:

net.ipv4.ip_forward=1

应用更改:

sudo sysctl -p

6 配置防火墙(UFW或iptables)

允许OpenVPN端口(默认1194/UDP):

sudo ufw allow 1194/udp
sudo ufw allow OpenSSH
sudo ufw enable

或使用iptables:

sudo iptables -A INPUT -p udp --dport 1194 -j ACCEPT
sudo iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
sudo iptables-save > /etc/iptables/rules.v4

7 启动OpenVPN服务

sudo systemctl start openvpn@server
sudo systemctl enable openvpn@server

生成客户端配置文件

1 创建客户端证书

cd ~/openvpn-ca
source vars
./build-key client1

2 生成客户端配置文件

从示例配置生成:

gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/client.conf | tee ~/client1.ovpn

修改client1.ovpn

client
dev tun
proto udp
remote your_server_ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
cipher AES-256-CBC
comp-lzo
verb 3
<ca>
[粘贴ca.crt内容]
</ca>
<cert>
[粘贴client1.crt内容]
</cert>
<key>
[粘贴client1.key内容]
</key>
<tls-auth>
[粘贴ta.key内容]
</tls-auth>
key-direction 1

3 下载配置文件并连接

使用SCP或SFTP下载.ovpn文件到本地设备,然后用OpenVPN客户端导入即可连接。


测试VPN连接

  1. 在客户端导入.ovpn文件并连接。
  2. 检查IP是否已更改:
    curl ifconfig.me
  3. 确保所有网络流量通过VPN:
    ping 8.8.8.8

常见问题排查

  • 连接失败:检查防火墙、端口是否开放。
  • DNS泄漏:确保push "dhcp-option DNS"配置正确。
  • 速度慢:尝试更换协议(如TCP改UDP)或优化服务器位置。

通过本文,你已成功在Linux VPS上搭建OpenVPN服务器,并配置客户端连接,VPN不仅能提升隐私保护,还能访问受限内容,未来可考虑:

  • 部署WireGuard提升性能
  • 使用脚本自动化管理(如openvpn-install
  • 启用双因素认证(2FA)增强安全性

希望本指南对你有所帮助! 🚀

如何在Linux VPS上搭建VPN服务器,详细指南

猜你喜欢

136-7528-4917 扫描微信 935566554 935566554@qq.com