Routing IPsec VPN dla podsieci VM


1

Mój fizyczny komputer jest w stanie ustanowić tunel IPsec (wraz z Strongswan) do mojego dostępnego do Internetu VPS, dzięki czemu ruch internetowy mojego fizycznego komputera przechodzi przez mój VPS.

Próbowałem także i udało mi się skonfigurować Strongswan na maszynie wirtualnej działającej na mojej maszynie fizycznej. Oczekuje się, że moja maszyna wirtualna może uzyskać dostęp do Internetu za pośrednictwem mojego VPS.

Chciałbym, aby Strongswan działał na moim fizycznym komputerze, dzięki czemu ruch wszystkich moich maszyn wirtualnych (w 192.168.122.0/24) przechodzi przez mój VPS. Myślę, że powinno to być możliwe w przypadku konfiguracji site-to-site (przykład tutaj: https://www.strongswan.org/testing/testresults/ikev2/net2net-cert/ ), jednak nie byłem w stanie zabierz to do pracy. Nie jestem pewien, czy mój problem dotyczy konfiguracji Strongswan, konfiguracji sieci maszyn wirtualnych, czy obu ...

ipsec.conf na mojej fizycznej maszynie:

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

ipsec.conf na moim VPS:

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

Przy tej konfiguracji połączenie jest ustanawiane pomyślnie, jednak ruch mojej maszyny wirtualnej nie przechodzi przez to. Powinienem zauważyć, że ip route show table 220nic nie pokazuje, co jest odmienne od powyższego przykładu i nie jestem pewien, co powinienem tam umieścić ... ip route add table 220 default via 123.123.123.123 proto staticnie działa. jakieś pomysły?


Czy Twoje rozwiązanie do wirtualizacji NAT generuje ruch z 192.168.122.0/24 do fizycznych adresów IP hostów (192.168.1.2)? Jeśli tak, musisz tego uniknąć i dodać regułę, która akceptuje ruch zgodny z polityką IPsec (patrz tutaj ).
ecdsa

ecdsa, wielkie dzięki - to działało! prześlij swój komentarz jako odpowiedź, a ja go zaakceptuję.
rantam0ct

Odpowiedzi:


0

Jeśli rozwiązanie wirtualizacji NAT generuje ruch z adresu 192.168.122.0/24 do fizycznego adresu IP hosta (192.168.1.2), należy tego uniknąć i dodać regułę, która akceptuje ruch zgodny z zasadami IPsec. Na przykład ( więcej szczegółów ):

iptables -t nat -I POSTROUTING -s 192.168.122.0/24 -o eth0 -m policy --dir out --pol ipsec -j ACCEPT
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.