У меня есть проблема с SMTP в моем контейнере OpenVZ.
Я создал контейнер OpenVZ Proxmox на выделенном сервере в OVH. Этот контейнер будет как почтовый сервер. Таким образом, я создаю на правилах "родительского сервера" передать порты контейнеру (IP: 192.168.0.100):
iptables -t nat -A PREROUTING -p tcp --dport 25 -j DNAT --to-destination 192.168.0.100:25
iptables -t nat -A PREROUTING -p tcp --dport 587 -j DNAT --to-destination 192.168.0.100:587
iptables -t nat -A PREROUTING -p tcp --dport 110 -j DNAT --to-destination 192.168.0.100:110
iptables -t nat -A PREROUTING -p tcp --dport 143 -j DNAT --to-destination 192.168.0.100:143
iptables -t nat -A PREROUTING -p tcp --dport 995 -j DNAT --to-destination 192.168.0.100:995
iptables -t nat -A PREROUTING -p tcp --dport 993 -j DNAT --to-destination 192.168.0.100:993
iptables -t nat -A POSTROUTING -s '192.168.0.0/24' -o vmbr0 -j MASQUERADE
Я могу получить письма, но я не могу отправить. Я могу отправить только к локальному домену - для теста, я использую calcparty.com.
В/etc/postfix/main.cf я установил:
inet_interfaces = all
Я могу сделать telnet localhost 25, но я не могу сделать telnet smtp.gmail.com. С "родительского сервера" я могу сделать telnet smtp.gmail.com 25.
Что я делаю неправильно?
root@mail:~# telnet smtp.gmail.com 25
Trying 64.233.166.108...
Trying 64.233.166.109...
Trying 2a00:1450:400c:c09::6d...
telnet: Unable to connect to remote host: Connection timed out
Файл-/etc/resolv.conf:
search mail.calcparty.com
nameserver 8.8.4.4
nameserver 8.8.8.8
nameserver 213.186.33.99
Правило маскарада неверно:
iptables -t nat -A POSTROUTING -s '192.168.0.0/24' -o vmbr0 -j MASQUERADE
Он говорит, что пакеты, идущие из интерфейса vmbr0 и из 192.168.0.0/24, должны быть masqueraded.
Но никакие пакеты никогда не будут соответствовать этому, потому что они не выходят из интерфейса vmbr0! Вместо этого они выходят из вашего физического интерфейса.
Измените это, чтобы вместо этого относиться к пакетам, выходящим через физический интерфейс, например:
iptables -t nat -A POSTROUTING -s '192.168.0.0/24' -o enp3s0f0 -j MASQUERADE