随着远程办公需求的日益增长,企业对安全、稳定的远程访问方案提出了更高要求,CentOS 6.5 虽然已进入维护阶段(EOL),但在一些老旧系统或特定工业场景中仍被广泛使用,本文将详细介绍如何在 CentOS 6.5 上搭建一个基于 IPsec + L2TP 的 VPN 服务,以实现安全、可靠的远程接入。
环境准备
确保服务器运行的是 CentOS 6.5(内核版本建议为 2.6.x),并具备公网 IP 地址,登录服务器后,执行以下命令更新系统包:
yum update -y
安装必要的开发工具和依赖库:
yum groupinstall "Development Tools" -y yum install kernel-devel openssl-devel libnl-devel xl2tpd iptables-services -y
配置 IPsec(Openswan)
IPsec 是用于加密数据传输的核心协议,我们使用 Openswan(较旧但兼容 CentOS 6.5),首先安装 openswan:
yum install openswan -y
编辑 /etc/ipsec.conf 文件,添加如下内容:
config setup
plutostart=no
protostack=netkey
dumpdir=/var/run/pluto/
nat_traversal=yes
interfaces=%defaultroute
uniqueids=yes
conn l2tp-psk
rightsubnet=vhost:%priv
left=%defaultroute
leftid=@your_server_ip
right=%any
rightauth=esp
rightmodecfg=%any
rightdns=8.8.8.8,8.8.4.4
authby=secret
pfs=yes
auto=add
type=transport
keylife=1h
rekey=yes
ike=aes256-sha1-modp1024
esp=aes256-sha1
接着配置预共享密钥(PSK):
vim /etc/ipsec.secrets
添加一行:
%any %any : PSK "your_pre_shared_key"
配置 L2TP 服务(xl2tpd)
安装并配置 xl2tpd 作为 L2TP 接入点:
yum install xl2tpd -y
编辑 /etc/xl2tpd/xl2tpd.conf:
[global]
port = 1701
access control = no
[lns default]
ip range = 192.168.100.100-192.168.100.200
local ip = 192.168.100.1
require chap = yes
refuse pap = yes
require authentication = yes
name = l2tpserver
ppp debug = yes
pppoptfile = /etc/ppp/options.l2tpd
length bit = yes
配置 PPP(点对点协议)
创建 /etc/ppp/options.l2tpd:
ipcp-accept-local
ipcp-accept-remote
noauth
refuse-pap
refuse-chap
refuse-mschap
ms-dns 8.8.8.8
ms-dns 8.8.4.4
asyncmap 0
auth
crtscts
lock
modem
proxyarp
lcp-echo-interval 30
lcp-echo-failure 4
用户认证与防火墙设置
创建用户账户(如需动态分配):
useradd -m -s /bin/bash vpnuser passwd vpnuser
启用 IP 转发和 NAT:
echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf sysctl -p
配置 iptables 规则:
iptables -A INPUT -p udp --dport 500 -j ACCEPT iptables -A INPUT -p udp --dport 4500 -j ACCEPT iptables -A INPUT -p udp --dport 1701 -j ACCEPT iptables -A FORWARD -s 192.168.100.0/24 -d 0.0.0.0/0 -j ACCEPT iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o eth0 -j MASQUERADE service iptables save
启动服务
service ipsec start service xl2tpd start chkconfig ipsec on chkconfig xl2tpd on
至此,VPN 服务已部署完成,客户端可使用 Windows 或 iOS/Android 的 L2TP/IPsec 连接方式,输入服务器 IP、用户名密码及预共享密钥即可连接,此方案虽基于旧系统,但稳定性强,适合对安全性要求较高的传统网络环境,建议后续逐步迁移到 CentOS 7+ 或 Alpine Linux 等现代平台以获得更好支持与性能。

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






