在当今远程办公日益普及的背景下,如何安全、稳定地访问公司内网资源成为许多企业与个人用户的刚需,Linux作为开源、灵活且高度可定制的操作系统,是搭建虚拟私人网络(VPN)的理想平台,本文将详细介绍如何在Linux服务器上部署并配置OpenVPN服务,实现安全可靠的远程访问。

确保你有一台运行Linux系统的服务器(推荐CentOS 7/8或Ubuntu 20.04以上版本),具备公网IP地址,并已安装基础开发工具(如gcc、make等),若使用云服务商(如阿里云、腾讯云、AWS),需开放UDP端口1194(OpenVPN默认端口)和防火墙规则允许入站流量。

第一步:安装OpenVPN及相关依赖
以Ubuntu为例,执行以下命令:

sudo apt update
sudo apt install openvpn easy-rsa -y

Easy-RSA用于生成证书和密钥,是OpenVPN身份认证的核心组件。

第二步:配置证书颁发机构(CA)
进入Easy-RSA目录,初始化PKI环境:

make-cadir /etc/openvpn/easy-rsa
cd /etc/openvpn/easy-rsa

编辑vars文件,设置国家、组织等信息,然后执行:

source ./vars
./clean-all
./build-ca

这一步会生成根证书(ca.crt),用于后续所有客户端和服务端的身份验证。

第三步:生成服务器证书和密钥

./build-key-server server

输入提示信息后,生成server.crt和server.key,同时生成Diffie-Hellman参数(增强加密强度):

./build-dh

第四步:配置OpenVPN服务端
复制模板配置文件到/etc/openvpn/目录:

cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn/

修改关键参数:

  • port 1194:指定监听端口
  • proto udp:使用UDP协议提高传输效率
  • dev tun:创建虚拟隧道接口
  • ca ca.crtcert server.crtkey server.key:引用证书路径
  • dh dh.pem:引入Diffie-Hellman参数
  • push "redirect-gateway def1 bypass-dhcp":强制客户端流量走VPN
  • push "dhcp-option DNS 8.8.8.8":指定DNS服务器

第五步:启动服务并设置开机自启

systemctl enable openvpn@server
systemctl start openvpn@server

第六步:为客户端生成证书和配置文件
在Easy-RSA目录下执行:

./build-key client1

生成客户端证书后,将ca.crt、client1.crt、client1.key打包成.ovpn文件,供客户端导入使用。

测试连接——在Windows或手机端使用OpenVPN Connect应用导入配置文件即可接入,整个过程无需额外付费软件,完全基于开源技术,既安全又经济。

通过上述步骤,你不仅掌握了一套完整的Linux VPN部署方案,还理解了TLS加密、证书管理、路由控制等核心概念,无论你是IT管理员还是技术爱好者,这套方法都值得收藏实践。

手把手教你用Linux搭建安全高效的VPN服务,从零开始配置OpenVPN  第1张

VPN加速器|半仙VPN加速器-免费VPN梯子首选半仙VPN