配置StrongSwan用于建立IPsec VPN隧道的步骤如下:

安装StrongSwan

确保你的系统有以下依赖项安装:

sudo apt-get install -y strongswan strongswan-ipsec-tools

生成预共享密钥(PSK)

使用strongswan工具生成PSK:

strongswan --genpsk mysecrets

将生成的密钥文件保存,例如mysecrets.rsa

配置服务器端配置文件

创建或编辑strongswan.conf文件(通常位于/etc/strongswan/etc/strongswan.d/目录下):

%define DEFAULT_LOGLEVEL = debug
%define DEFAULT_SYSLOG_TAG = netpriv
%define IKE_SA = yes
%define AH = yes
%define ESP = yes
%define PFS = no
%define D-HOP = yes
%define NATT = no
%define FMWE = yes
# 预共享密钥
define PSK = "mysecrets"
define PSK_ID = "myid@mydomain"
# 服务器IP和端口
define SERVER_IP = "server-ip"
define SERVER_PORT = 59000
# IKE参数
define IKE_AUTH_METHOD = psk
define IKE_PSK = "%PSK%"
define IKE_ID = "%PSK_ID%"
define IKE_GK = IPADDRESS
define IKE_GQ = IPADDRESS
define IKE_NATTrunc = yes
define IKE_V1 = yes
# IPsec参数
define IPsec_Host = "localhost"
define IPsec_LCL = "tun"
define IPsec_RR = "server-ip/24"
# 路由
define IPsec_Route = "192.168.1./24"

配置客户端配置文件

创建或编辑客户端配置文件,例如strongswan-clients.conf

# 客户端配置
strongswan { version=5.1.1; }
%define DEFAULT_LOGLEVEL = debug
%define DEFAULT_SYSLOG_TAG = netpriv
%define IKE_SA = yes
%define AH = yes
%define ESP = yes
%define PFS = no
%define D-HOP = yes
%define NATT = no
%define FMWE = yes
# 预共享密钥
define PSK = "mysecrets"
define PSK_ID = "myid@mydomain"
# 客户端IP和端口
define CLIENT_IP = "client-ip"
define CLIENT_PORT = 59000
# IKE参数
define IKE_AUTH_METHOD = psk
define IKE_PSK = "%PSK%"
define IKE_ID = "%PSK_ID%"
define IKE_GK = IPADDRESS
define IKE_GQ = IPADDRESS
define IKE_NATTrunc = yes
define IKE_V1 = yes
# IPsec参数
define IPsec_Host = "localhost"
define IPsec_LCL = "tun"
define IPsec_RR = "server-ip/24"

启用并测试服务

sudo ipsec --up strongswan

运行后,查看状态:

sudo ipsec --status

客户端连接测试

在客户端运行:

sudo ipsec --up strongswan

然后尝试连接到服务器:

sudo ipsec --connect

额外配置(可选)

  • D-HOP:在服务器配置中添加:

    %define D-HOP = yes
    define DH_P = 2048
    define DH_B = -q
    define DH_pass = "your-dh-passphrase"
  • NATTraversal:如果需要:

    %define NATT = yes

连接测试

在服务器和客户端运行ipsec verify

ipsec verify

后续优化

  • 调整密钥长度和握手频率。
  • 定期监控状态:ipsec status
  • 考虑使用证书(PKI)而不是PSK。

安全注意事项

  • 定期更换密钥。
  • 检查日志文件:ipsec --debug trace.
  • 保护私密密钥和证书。

完成以上步骤后,你应该能够成功建立一个安全的IPsec VPN隧道。

服务器配置

扫码添加小飞机VPN网络工具官方微信

扫码添加小飞机VPN网络工具官方微信

400-638-2751
扫码添加小飞机VPN网络工具官方微信

扫码添加小飞机VPN网络工具官方微信

网站地图