我最初在 ServerFault 上问过这个问题,但什么也没得到。希望这里有一些OpenBSD专家
尝试在 LAN 上的两台主机之间使用 IPSEC。不涉及VPN
使用 OpenBSD 5.8(在 VirtualBox 中)。我更喜欢使用 OpenBSD 对 IPSEC 的内置支持,而不是第三方。
两个主机:(10.0.2.10
主机“A”)和10.0.2.11
(主机“B”)
他们可以在尝试设置 IPSEC 之前互相 ping/ssh。
将 A 复制/etc/iked/local.pub
到 B/etc/iked/pubkeys/ipv4/10.0.2.10
将 B 复制/etc/iked/local.pub
到 A/etc/iked/pubkeys/ipv4/10.0.2.11
双方:
echo "ikev2 esp from any to any" > /etc/iked.conf
chmod 640 /etc/iked.conf
echo "ipsec=YES" > /etc/rc.conf.local
echo "iked_flags=" >> /etc/rc.conf.local
检查配置:
/sbin/iked -n
Configuration OK
我很困惑下一步该做什么。我想我需要进行设置/etc/ipsec.conf
,但我只找到了 IKEv1 文档。
重新启动两台机器。没有错误。说 iked 守护进程已启动。如果我将公钥重命名为任何名称,仍然可以互相 ping 通,因此 IPSEC 似乎不起作用。
- 我还需要配置什么?
- 是否有 IPSEC 和 iked 的日志?如果有,在哪里可以找到它们?
- 配置后如何判断 IPSEC 是否正常工作,而不查看机器之间的数据包?
更新:
我在没有 IKED 的情况下让 IPSEC 工作(我想?):
/etc/ipsec.conf
:
flow esp from 10.0.2.10 to 10.0.2.11
esp transport from 10.0.2.10 to 10.0.2.11 \
spi 0xCAFEBABE:0xCAFEBABE \
authkey 0x64CHARHEX:0x64CHARHEX \
enckey 0x64CHARHEX:0x64CHARHEX
十六进制需要全部大写
chmod 640 /etc/ipsec.conf
ipsecctl -F (delete config)
ipsecctl -f /etc/ipsec.conf (load config)
ipsecctl -s all -v (show config)
我更喜欢使用 IKE 的自动密钥。我能做些什么?