lok*_*aro 3 linux ssh ipsec rhel7
我在基本操作系统之上创建了两个 VM,并在两个 VM 之间启用了 IPSec。现在的问题是,一旦 IPsec 启动并在两个 VM 之间建立 SA,我就无法通过基本操作系统 ping 或 ssh 到 VM,但 VM 可以相互 ping。据我所知,IPsec 只在指定的 IP 之间创建一个隧道,即来自 IP A 的用于 IP B 的数据包被加密,而来自 IP A 的所有其他数据包可以在不加密的情况下通过。我在这里错过了什么吗?使用的配置文件是:
conn example
left=192.168.54.220
leftcert=CA_Server
leftsubnet=192.168.54.1/24
leftsendcert=always
leftrsasigkey=%cert
right=192.168.54.221
rightca=%same
rightrsasigkey=%cert
rightsubnet=192.168.54.1/24
rightcert=CA_Client
authby=rsasig
ikev2=permit
auto=start
Run Code Online (Sandbox Code Playgroud)
IPsec 仅在指定的 IP 之间创建隧道,即从 IP A 发送到 IP B 的数据包被加密,而来自 IP A 的所有其他数据包可以不加密地通过。我在这里错过了什么吗?
是的。IPSec 在两个指定端点之间创建隧道,left和right。但是使用该隧道的流量,即加密的流量,是在两个指定的网络之间,leftsubnet并且rightsubnet。在您的情况下,两个路由子网彼此相同,这是行不通的。
如果您想要的是将 A 到 B 的流量在 A 加密并在 B 解密,反之亦然,您可以通过设置leftsubnet为left的地址来告诉 S/WAN ,在您的情况下192.168.54.220/32(掩码很重要),并通过在您的情况下,设置rightsubnet为 beright的地址192.168.54.221/32。