/etc/strongswan/ipsec.conf

dfbn6 2026-04-19 vpn 1 0

RHEL 7 中配置 IPsec VPN 详解:从基础到实战部署指南

在企业网络环境中,虚拟私人网络(VPN)是实现远程安全访问、跨地域数据传输和站点间互联的重要技术,Red Hat Enterprise Linux 7(RHEL 7)作为广泛使用的服务器操作系统,其内置的 StrongSwan 和 Openswan 工具链为搭建 IPsec-based VPN 提供了强大支持,本文将详细介绍如何在 RHEL 7 系统中配置基于 IPsec 的站点到站点(Site-to-Site)或远程访问(Remote Access)型 VPN,涵盖环境准备、配置文件编写、防火墙设置以及故障排查等关键步骤。

确保系统满足基本要求:运行 RHEL 7 的服务器(建议最小化安装),具备静态公网 IP 地址,且已启用网络管理工具(如 NetworkManager 或传统 ifcfg 配置),安装必要的软件包:

sudo yum install -y strongswan strongswan-libcharon

StrongSwan 是当前推荐的 IPsec 实现,相比旧版 Openswan 更加稳定且支持现代加密算法,启动并启用服务:

sudo systemctl enable strongswan
sudo systemctl start strongswan

接下来是核心配置部分,IPsec 的配置文件位于 /etc/strongswan/ipsec.conf,主要包含两个部分:全局设置(conn %default)和具体连接定义(如 conn mysite)。

示例配置如下(适用于站点到站点场景):

    charondebug="ike 1, knl 1, cfg 1"
    uniqueids=yes
conn mysite
    keyexchange=ikev2
    ike=aes256-sha256-modp2048!
    esp=aes256-sha256!
    left=192.168.1.100
    leftid=@rhel7-vpn-server
    right=192.168.2.100
    rightid=@remote-site
    auto=start
    rekey=no
    dpdaction=restart

leftright 分别代表本地和对端的 IP 地址,leftidrightid 是用于身份验证的标识符,若使用证书认证,需配置 /etc/strongswan/ipsec.secrets 文件,存储预共享密钥(PSK)或私钥证书。

使用 PSK 认证时:

@rhel7-vpn-server @remote-site : PSK "your_pre_shared_key_here"

完成配置后,重新加载策略:

sudo ipsec reload
sudo ipsec up mysite

此时可通过 ipsec status 查看连接状态,若显示“established”,说明隧道已成功建立。

网络安全方面,必须开放 IPsec 所需端口(UDP 500 和 4500)至防火墙,使用 firewalld 命令:

sudo firewall-cmd --add-service=ipsec --permanent
sudo firewall-cmd --reload

对于远程访问型 VPN(即用户通过客户端接入内网),还需配置 IKEv2 证书或使用 EAP 身份验证机制,并结合 Radius 服务器进行用户认证,这通常涉及更复杂的证书颁发机构(CA)管理和客户端配置,但 RHEL 7 的强加密框架可轻松扩展。

定期监控日志(journalctl -u strongswan)有助于及时发现连接异常或性能瓶颈,常见问题包括密钥不匹配、NAT 穿透失败、证书过期等,可通过调整 dpdtimeout、启用 NAT-T(NAT Traversal)参数解决。

RHEL 7 上构建 IPsec VPN 不仅可靠,而且灵活,适合多种企业级应用场景,掌握其配置流程,不仅提升网络安全性,也为后续 SD-WAN、零信任架构等高级部署打下坚实基础。

/etc/strongswan/ipsec.conf

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