手把手教你新建VPN,从配置到安全使用全攻略
在当今远程办公、跨地域协作日益频繁的背景下,虚拟私人网络(Virtual Private Network,简称VPN)已成为企业与个人用户保障网络安全的重要工具,无论是访问公司内网资源、保护公共Wi-Fi下的隐私,还是绕过地理限制获取内容,建立一个稳定可靠的VPN连接都至关重要,本文将详细介绍如何新建一个基础但功能完整的VPN服务,适用于小型企业或个人用户。
明确你的需求:你是想搭建一个客户端-服务器架构的站点到站点(Site-to-Site)VPN,还是为单个设备(如笔记本电脑或手机)配置远程访问型(Remote Access)VPN?常见方案包括OpenVPN、WireGuard和IPsec等,对于大多数初学者而言,推荐使用OpenVPN——它开源、跨平台、文档丰富且社区支持强大。
第一步:准备环境
你需要一台运行Linux系统的服务器(如Ubuntu 20.04或CentOS 7),并确保其拥有公网IP地址,如果使用云服务商(如阿里云、AWS、腾讯云),请提前在安全组中开放UDP端口1194(OpenVPN默认端口),建议为服务器配置静态IP,避免重启后IP变更导致连接失败。
第二步:安装OpenVPN服务
登录服务器终端,执行以下命令:
sudo apt update sudo apt install openvpn easy-rsa -y
Easy-RSA用于生成证书和密钥,是OpenVPN身份认证的核心组件,复制证书模板到指定目录:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa
编辑vars文件,设置国家、组织名称等基本信息,然后执行:
./clean-all ./build-ca ./build-key-server server ./build-key client1 ./build-dh
这些命令会生成服务器证书、客户端证书及Diffie-Hellman参数,用于加密通信。
第三步:配置服务器端
在/etc/openvpn/目录下创建server.conf文件,内容如下:
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.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
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
保存后启动服务:
sudo systemctl enable openvpn@server sudo systemctl start openvpn@server
第四步:配置客户端
将之前生成的client1.crt、client1.key、ca.crt三个文件合并成一个.ovpn配置文件,内容示例:
client
dev tun
proto udp
remote your-server-ip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
comp-lzo
verb 3
将此文件导入Windows、macOS或Android/iOS上的OpenVPN客户端即可连接。
第五步:测试与优化
连接成功后,可通过访问http://ipinfo.io查看公网IP是否被隐藏,验证隧道生效,建议启用防火墙规则(如ufw)限制不必要的端口,定期更新证书以增强安全性。
新建一个VPN虽需一定技术门槛,但按步骤操作可快速掌握,安全始终是第一位的——不要使用弱密码、定期轮换密钥,并考虑结合双因素认证提升防护等级,掌握这项技能,你就能在任何地方安全畅游互联网。




