基于 UDP 端口的 IPsec 隧道选择

基于 UDP 端口的 IPsec 隧道选择

我有 2 台 Linux 主机,每台主机有 2 个服务,X 和 Y。X
服务通过 UDP 端口 x 进行通信。Y
服务通过 UDP 端口 y 进行通信。
我想加密通信。

我知道如何使用 ipsec-tools 在两台主机之间建立单个 UDP 封装的 IPsec 隧道(我的网络不允许在 IP 上使用 IPSec……)。

但是,如何设置具有不同 SPI 和密钥的 2 个 IPsec 隧道 - 一个用于 X 服务,另一个用于 Y 服务?

答案1

我不知道如何使用 ipsec-tools 进行配置,但是坚强的天鹅您可以使用left|rightprotoport选项来指定需要保护的单个 UDP 端口。

例子ipsec配置文件文件:

conn base
    right=ip.of.other.host
    forceencaps=yes
    ... (other options)
    auto=start

conn serviceX
    also=base
    leftprotoport=udp/x
    rightprotoport=udp/x

conn serviceY
    also=base
    leftprotoport=udp/y
    rightprotoport=udp/y

其中xy是您服务的端口。forceencaps强制使用 UDP 封装。

相关内容