在当今高度互联的数字环境中,移动设备(如 iPhone)已成为个人和企业用户日常工作的核心工具,当用户需要在公共 Wi-Fi 或不安全网络环境下远程访问公司内部资源时,网络安全风险也随之增加,为了解决这一问题,使用虚拟私人网络(VPN)是一种行之有效的手段,本文将详细介绍如何在 Linux 服务器上搭建 OpenVPN 服务,并让 iPhone 设备安全、稳定地连接到该服务,从而实现远程办公或访问内网资源。
我们需要准备一台运行 Linux 的服务器(推荐 Ubuntu 20.04/22.04 LTS 或 CentOS Stream 9),确保该服务器具备公网 IP 地址,并开放 UDP 端口(默认为 1194),用于 OpenVPN 数据传输,安装 OpenVPN 和 Easy-RSA 工具包是第一步:
sudo apt update && sudo apt install openvpn easy-rsa -y
使用 Easy-RSA 初始化证书颁发机构(CA)并生成服务器证书与密钥:
make-cadir /etc/openvpn/easy-rsa cd /etc/openvpn/easy-rsa ./easyrsa init-pki ./easyrsa build-ca nopass ./easyrsa gen-req server nopass ./easyrsa sign-req server server
然后生成 Diffie-Hellman 密钥交换参数和 TLS 密钥(增强安全性):
./easyrsa gen-dh openvpn --genkey --secret ta.key
完成证书和密钥生成后,复制相关文件到 OpenVPN 配置目录,并创建服务器配置文件 /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/easy-rsa/pki/dh.pem
tls-auth ta.key 0
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log
verb 3
启动 OpenVPN 服务并设置开机自启:
sudo systemctl enable openvpn@server sudo systemctl start openvpn@server
Linux 服务器已成功部署 OpenVPN 服务,为 iPhone 准备客户端配置,在 Linux 服务器上生成客户端证书:
./easyrsa gen-req client1 nopass ./easyrsa sign-req client client1
将以下文件下载到本地电脑(或通过 scp 传输):
- ca.crt(根证书)
- client1.crt(客户端证书)
- client1.key(客户端私钥)
- ta.key(TLS 密钥)
在 iPhone 上,使用“配置描述文件”或第三方应用(如 OpenVPN Connect)导入这些文件,以 OpenVPN Connect 为例,点击“+”添加新连接,选择“配置文件”,导入上述证书和密钥文件,配置完成后,输入服务器公网 IP 地址(如 123.45.67.89),端口设为 1194,协议选 UDP。
连接成功后,iPhone 用户即可安全访问内网资源,同时数据加密传输,防止中间人攻击,可通过 iptables 或 ufw 设置防火墙规则,限制仅允许来自 OpenVPN 子网(10.8.0.0/24)的流量访问内网服务,进一步提升安全性。
Linux + OpenVPN 是一套成熟、开源且灵活的远程访问解决方案,对于希望在移动设备上安全访问内网的企业用户或自由职业者而言,本方案不仅成本低廉,而且具有良好的可扩展性和可控性,只需少量配置,即可实现从 iPhone 到企业内网的安全隧道。

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

