在现代企业网络架构中,安全可靠的远程访问是保障业务连续性的关键环节,IPsec(Internet Protocol Security)作为一种广泛使用的网络安全协议,能够为数据传输提供加密、认证和完整性保护,对于运行CentOS 7的服务器来说,通过配置IPsec VPN可以实现跨公网的安全通信,尤其适用于分支机构互联或远程办公场景,本文将详细介绍如何在CentOS 7系统上使用StrongSwan这一开源IPsec实现方案,搭建一个稳定且可扩展的IPsec VPN服务。

确保你的CentOS 7服务器已安装并更新至最新状态,执行以下命令安装必要的依赖包:

sudo yum update -y
sudo yum install -y strongswan iptables-services firewalld

编辑StrongSwan主配置文件 /etc/strongswan.conf,设置全局参数,如日志级别和插件加载项,通常默认配置已足够满足基本需求,但可以根据需要调整,创建IPsec策略配置文件,路径为 /etc/ipsec.d/ipsec.conf如下:

config setup
    charondebug="ike 1, knl 1, cfg 1"
    uniqueids=yes
conn %default
    keylife=20m
    rekey=yes
    keyingtries=3
    ikelifetime=60m
    left=%any
    right=%any
    auto=add
conn my-vpn
    type=tunnel
    authby=secret
    leftid=@server.example.com
    rightid=@client.example.com
    leftsubnet=192.168.1.0/24
    rightsubnet=192.168.2.0/24
    ike=aes256-sha256-modp2048!
    esp=aes256-sha256!
    dpdaction=restart
    dpddelay=30s

上述配置定义了一个名为my-vpn的连接,支持AES-256加密与SHA-256哈希算法,并启用Dead Peer Detection(DPD)机制以提高稳定性。leftright分别代表服务器端和客户端的身份标识,必须与证书或预共享密钥(PSK)匹配。

/etc/ipsec.secrets 中添加预共享密钥,格式为:

@server.example.com @client.example.com : PSK "your_strong_pre_shared_key_here"

注意:请使用高强度密码作为PSK,避免被暴力破解。

配置完成后,启动并启用StrongSwan服务:

sudo systemctl enable strongswan
sudo systemctl start strongswan
sudo ipsec restart

为了使防火墙允许IPsec流量(UDP端口500和4500),需配置iptables或firewalld,使用firewalld:

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

在客户端设备(如Windows、iOS或Android)上配置IPsec连接,输入服务器IP地址、预共享密钥及本地子网信息即可建立隧道,测试时可通过ping或SSH验证连通性。

基于CentOS 7的IPsec VPN不仅成本低廉,而且安全性高、灵活性强,合理规划网络拓扑与安全策略,能有效支撑远程办公、站点间互联等多样化应用场景,建议结合证书认证进一步增强身份验证机制,构建更健壮的企业级安全网络环境。

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

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