Vreau să public intern un server SMTP (IP 10.0.0.10) care se află în spatele unui tunel VPN pe serverul meu intern (192.168.0.12) folosind lebăda puternică
. Ale mele lebăda puternică
rulează într-un container docker.
Pentru asta vreau serverul meu intern 192.168.0.12
pentru a asculta portul său 25 și pentru a redirecționa traficul către serverul tunelizat de pe același port 10.0.0.10:25
.
Până acum am încercat să folosesc iptables, dar fără succes.
net.ipv4.ip_forward
este activat atât pe gazdă, cât și pe containerul docker!
Ale mele iptables-salvare
pe 192.168.0.12
după ce strongswan este conectat la tunel: (și da, pot face ping la 10.0.0.10 de la 192.168.0.12)
# Generat de iptables-save v1.8.4 pe vineri, 23 iulie 09:55:05 2021
*filtru
:INPUT ACCEPT [0:0]
: FORWARD ACCEPT [0:0]
: ACCEPT IEȘIRE [0:0]
-A INPUT -s 10.0.0.0/16 -d 192.168.0.10/32 -i eth0 -m policy --dir in --pol ipsec --reqid 1 --proto esp -j ACCEPT
-A IEȘIRE -s 192.168.0.10/32 -d 10.0.0.0/16 -o eth0 -m policy --dir out --pol ipsec --reqid 1 --proto esp -j ACCEPT
COMMIT
# Finalizat vineri, 23 iulie 09:55:05 2021
# Generat de iptables-save v1.8.4 pe vineri, 23 iulie 09:55:05 2021
*nat
:ACCEPTAREA PRE-ROUTARE [0:0]
:INPUT ACCEPT [0:0]
: ACCEPT IEȘIRE [2:1600]
: POSTROUTING ACCEPT [2:1600]
:DOCKER_OUTPUT - [0:0]
:DOCKER_POSTROUTING - [0:0]
-A IEȘIRE -d 127.0.0.11/32 -j DOCKER_OUTPUT
-A POSTROUTING -d 127.0.0.11/32 -j DOCKER_POSTROUTING
-A DOCKER_OUTPUT -d 127.0.0.11/32 -p tcp -m tcp --dport 53 -j DNAT --to-destination 127.0.0.11:45165
-A DOCKER_OUTPUT -d 127.0.0.11/32 -p udp -m udp --dport 53 -j DNAT --to-destination 127.0.0.11:53306
-A DOCKER_POSTROUTING -s 127.0.0.11/32 -p tcp -m tcp --sport 45165 -j SNAT --to-source :53
-A DOCKER_POSTROUTING -s 127.0.0.11/32 -p udp -m udp --sport 53306 -j SNAT --to-source :53
COMMIT
comanda ip r
ieșire:
implicit prin 192.168.16.1 dev eth0
192.168.16.0/20 dev eth0 proto kernel scope link src 192.168.16.10 # aceasta este o rețea internă Docker pentru serviciile mele
192.168.0.10/30 dev eth1 proto kernel scope link src 192.168.0.12
Am încercat diverse comenzi ca acestea:
iptables -t nat -A PREROUTING -p tcp --dport 25 -j DNAT --to-destination 10.0.0.10:25
iptables -t nat -A POSTROUTING -p tcp -d 10.0.0.10 --dport 25 -j SNAT --to-source 192.168.0.12
dar fără succes.
Nu pot oferi nicio informație despre ip r
a gazdei nici a iptables-salvare
.
ce fac greșit?