在企业网络架构中,虚拟私有网络(VPN)是保障远程访问安全、实现跨地域站点互联的重要技术手段,Red Hat Enterprise Linux(RHEL)作为广泛应用于生产环境的稳定操作系统,其自带的 StrongSwan 和 Openswan 工具链提供了成熟可靠的 IPsec 协议支持,本文将详细介绍如何在 Red Hat 系统上搭建一个基于 IPsec 的站点到站点(Site-to-Site)VPN 隧道,涵盖安装、配置、防火墙设置及故障排查等关键步骤。
确保你已准备两台运行 RHEL 7/8 的服务器(或虚拟机),分别位于不同地理位置或子网中,Server A(公网IP:203.0.113.10)和 Server B(公网IP:198.51.100.20),它们需能通过公网互相通信,并拥有各自的私有网段(如 192.168.1.0/24 和 192.168.2.0/24)。
第一步是安装 StrongSwan,登录到每台服务器后,执行以下命令:
sudo yum install -y strongswan
安装完成后,编辑主配置文件 /etc/ipsec.conf,定义两个连接(conn)块,分别代表本地和远程端点,示例内容如下:
config setup
charondebug="ike 1, knl 1, cfg 1"
uniqueids=yes
conn site-to-site
left=203.0.113.10
leftsubnet=192.168.1.0/24
right=198.51.100.20
rightsubnet=192.168.2.0/24
authby=secret
ike=aes256-sha256-modp2048
esp=aes256-sha256
keylife=20m
rekey=yes
auto=start
注意:left 和 right 分别指向本机和对端公网IP;leftsubnet 和 rightsubnet 是各自内网网段,使用 authby=secret 表示采用预共享密钥(PSK)认证,后续需在 /etc/ipsec.secrets 中定义。
接下来编辑 /etc/ipsec.secrets 文件,添加共享密钥:
0.113.10 198.51.100.20 : PSK "your_strong_pre_shared_key_here"
保存后,赋予适当权限:
sudo chmod 600 /etc/ipsec.secrets
第三步,启用并启动服务:
sudo systemctl enable ipsec sudo systemctl start ipsec
若使用 firewalld(Red Hat 默认防火墙),还需开放 IPsec 相关端口:
sudo firewall-cmd --permanent --add-port=500/udp sudo firewall-cmd --permanent --add-port=4500/udp sudo firewall-cmd --reload
启动隧道:
sudo ipsec up site-to-site
此时可通过 ipsec status 查看状态,确认连接是否成功建立,建议在两端都执行此命令,观察是否有“established”状态。
为验证连通性,可在 Server A 的内网主机 ping Server B 的内网 IP(如 192.168.2.1),应能正常通信,若失败,请检查日志:journalctl -u ipsec.service,常见问题包括密钥不匹配、防火墙未放行、路由未正确配置(需手动添加静态路由)。
推荐使用 strongswan statusall 查看详细连接信息,包括加密算法、会话ID、生命周期等,便于性能调优与排错。
Red Hat 上搭建 IPsec VPN 是一项实用技能,尤其适合需要安全互联多分支机构的企业,通过合理配置 StrongSwan,结合系统级服务管理与网络策略,即可构建高可用、可审计的私有隧道,熟练掌握此流程,不仅提升运维效率,也为构建零信任网络打下坚实基础。

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






