CentOS 7下配置IPsec VPN,从零搭建安全远程访问通道

dfbn6 2026-04-11 vpn 11 0

在现代企业网络架构中,安全可靠的远程访问是保障业务连续性的关键环节,IPsec(Internet Protocol Security)作为一种广泛支持的网络层安全协议,能够为数据传输提供加密、完整性验证和身份认证功能,对于使用 CentOS 7 操作系统的管理员来说,通过 IPsec 配置一个安全的虚拟私有网络(VPN),可以实现远程员工或分支机构与内网的安全通信,本文将详细介绍如何在 CentOS 7 系统上部署并配置基于 StrongSwan 的 IPsec IKEv2 客户端/服务器环境。

确保系统已更新至最新状态,执行以下命令:

sudo yum update -y

接下来安装 StrongSwan,这是开源的 IPsec 实现,支持 IKEv1 和 IKEv2 协议:

sudo yum install -y strongswan

安装完成后,编辑主配置文件 /etc/ipsec.conf,定义连接参数,以下是一个基础的站点到站点(Site-to-Site)IPsec 配置示例:

config setup
    charondebug="ike 1, knl 1, cfg 1"
    uniqueids=no
conn %default
    ikelifetime=60m
    keylife=20m
    rekeymargin=3m
    keyingtries=1
    keyexchange=ikev2
    authby=secret
    left=%any
    leftcert=serverCert.pem
    right=%any
    rightid=@client.example.com
    rightauth=pubkey
    rightdns=8.8.8.8
conn mysite-to-site
    auto=start
    left=192.168.1.100
    leftsubnet=192.168.1.0/24
    right=203.0.113.50
    rightsubnet=192.168.2.0/24

此配置中,left 是本地服务器的公网IP地址,right 是对端(如分支机构或客户端)的公网IP,你需要根据实际环境修改这些值。

然后生成证书和密钥,StrongSwan 支持 X.509 数字证书认证,推荐使用 certtool 工具创建自签名证书:

sudo ipsec pki --gen --outform pem > caKey.pem
sudo ipsec pki --self --ca --in caKey.pem --dn "CN=MyCA" --outform pem > caCert.pem
sudo ipsec pki --gen --outform pem > serverKey.pem
sudo ipsec pki --pub --in serverKey.pem | ipsec pki --ca --in caCert.pem --dn "CN=Server" --outform pem > serverCert.pem

将证书放入 /etc/ipsec.d/certs/ 目录,并设置权限:

sudo cp caCert.pem /etc/ipsec.d/certs/
sudo cp serverCert.pem /etc/ipsec.d/certs/
sudo chown -R root:root /etc/ipsec.d/

配置共享密钥(或使用证书认证),若使用预共享密钥(PSK),编辑 /etc/ipsec.secrets 文件:

 PSK "your_pre_shared_key_here"

启动并启用服务:

sudo systemctl enable strongswan
sudo systemctl start strongswan
sudo systemctl status strongswan

检查状态是否正常,查看日志:

journalctl -u strongswan.service

至此,IPsec 安全隧道已建立,客户端可通过 IKEv2 协议连接,实现加密通信,此方案适用于企业办公、远程运维等场景,具有高安全性与良好兼容性,建议定期更新证书、监控日志并实施防火墙策略,确保长期稳定运行。

CentOS 7下配置IPsec VPN,从零搭建安全远程访问通道

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