在企业网络环境中,虚拟私人网络(VPN)是实现远程安全访问、跨地域分支机构互联的关键技术之一,Red Hat Enterprise Linux 6(RHEL 6)作为一款广泛应用于服务器环境的稳定操作系统,虽然已进入生命周期维护阶段(EOL于2024年),但在许多遗留系统中依然运行良好,本文将详细介绍如何在 RHEL 6 系统上使用 openswan 实现 IPsec 基于预共享密钥(PSK)的站点到站点(Site-to-Site)IPsec VPN 配置,帮助网络工程师完成基本但关键的网络加密通信部署。

确保你的 RHEL 6 主机具备以下前提条件:

  • 已安装 openswan 软件包(可通过 yum install openswan 安装)
  • 两台 RHEL 6 主机分别位于不同网络段(192.168.1.0/24 和 192.168.2.0/24)
  • 两个公网 IP 地址(用于 NAT 或直接路由访问)
  • 合理规划 IPsec SA(Security Association)参数(如加密算法、认证方式)

第一步:配置主配置文件 /etc/ipsec.conf
该文件定义了全局策略和连接规则,示例内容如下:

config setup
    protostack=netkey
    plutodebug=all
    dumpdir=/var/run/pluto/
    nat_traversal=yes
    virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12
conn my-vpn
    type=tunnel
    authby=secret
    keyingtries=3
    rekey=no
    left=1.1.1.1          # 本地公网IP
    leftsubnet=192.168.1.0/24
    right=2.2.2.2         # 对端公网IP
    rightsubnet=192.168.2.0/24
    auto=start
    ike=aes256-sha1-modp1024
    esp=aes256-sha1

注意:leftright 是各自主机的公网 IP,而 leftsubnetrightsubnet 是内部私有网段。ikeesp 指定加密套件,建议使用 AES-256 + SHA1 组合以兼顾安全性与兼容性。

第二步:设置预共享密钥
编辑 /etc/ipsec.secrets 文件,添加如下行:

1.1.1 2.2.2.2 : PSK "your_strong_pre_shared_key_here"

这里,“your_strong_pre_shared_key_here” 应是一个长度至少 16 字符的随机字符串,避免弱密钥带来的安全隐患。

第三步:启动并测试服务
执行以下命令加载配置并启动 IPsec:

service ipsec start
ipsec auto --add my-vpn
ipsec auto --up my-vpn

若无报错,可使用 ipsec status 查看当前状态是否为“installed”或“active”,在两端主机上 ping 对端内网地址(如 192.168.2.1)应能通,说明隧道已建立成功。

第四步:故障排查
常见问题包括:

  • IKE 协商失败:检查防火墙是否开放 UDP 500(IKE)和 UDP 4500(NAT-T)
  • 密钥不匹配:确认两边 /etc/ipsec.secrets 中 PSK 完全一致
  • 路由缺失:确保两端主机正确配置静态路由指向对方子网(可用 route add -net 192.168.2.0/24 gw 1.1.1.1 添加)

最后提醒:RHEL 6 已停止官方支持,建议尽快迁移到 RHEL 8/9 或 CentOS Stream,以获得持续的安全更新和新功能支持(如 strongSwan 更现代的实现),在过渡期间,掌握传统 IPsec 配置仍是网络工程师必备技能,尤其对维护老旧业务系统至关重要。

通过本文实践,你不仅能在 RHEL 6 上搭建一个稳定可靠的站点间加密通道,还能深入理解 IPsec 协议栈的工作机制,为后续学习更复杂的 SD-WAN、TLS-VPN 或零信任架构打下坚实基础。

RHEL 6 中配置 IPsec VPN 的完整指南,从基础到实战部署  第1张

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