私の物理コンピューターは、インターネットにアクセス可能なVPSへのIPsecトンネル(Strongswanを使用)を確立できるため、物理コンピューターのインターネットトラフィックは私のVPSを通過します。
また、物理マシンで実行されているVMでStrongswanをセットアップしようとしましたが、成功しました。予想どおり、私のVMはVPSを介してインターネットにアクセスできます。
私がやりたいのは、Strongswanを物理コンピューターで実行して、すべてのVM(192.168.122.0/24内)のトラフィックがVPSを通過するようにすることです。ただし、これはサイト間構成で実行できるはずです(例: https://www.strongswan.org/testing/testresults/ikev2/net2net-cert/ )。私はそれを動作させることができませんでした。私の問題がStrongswan構成にあるのか、それともVMネットワーク構成にあるのか、あるいはその両方にあるのか...
私の物理マシン上のipsec.conf:
config setup
charondebug="ike 2, cfg 2"
conn kvm-test
rightsubnet=0.0.0.0/0
keyexchange=ikev2
ike=aes256gcm128-sha512-modp8192!
esp=aes256gcm128-sha512-modp8192!
leftcert=client.pem
auto=add
right=123.123.123.123 # not my VPS's actual IP
rightcert=vpn_server.pem
leftsubnet=192.168.122.0/24
left=192.168.1.2
私のVPSのipsec.conf:
config setup
# strictcrlpolicy=yes
# uniqueids = no
conn %default
keyexchange=ikev2
leftfirewall=yes
auto=add
leftsubnet=0.0.0.0/0
left=123.123.123.123 # not my VPS's actual IP
ike=aes256gcm128-sha512-modp8192!
esp=aes256gcm128-sha512-modp8192!
conn kvm-test
leftcert=vpn_server.pem
rightcert=client.pem
rightsubnet=192.168.122.0/24
この構成では、接続は正常に確立されますが、VMのトラフィックは接続を通過しません。 ip route show table 220
何も表示されません。これは、上記のリンクの例とは異なり、何を配置すればよいかわかりません... ip route add table 220 default via 123.123.123.123 proto static
は機能しません。何かご意見は?
仮想化ソリューションが192.168.122.0/24からホストの物理IP(192.168.1.2)へのトラフィックをNATする場合は、それを回避し、IPsecポリシーに一致するトラフィックを受け入れるルールを追加する必要があります。たとえば( 詳細 ):
iptables -t nat -I POSTROUTING -s 192.168.122.0/24 -o eth0 -m policy --dir out --pol ipsec -j ACCEPT