OpenVZ - SMTP - telnet - приведенное к таймауту Соединение

У меня есть проблема с 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
1
задан 10 May 2015 в 04:22
1 ответ

Правило маскарада неверно:

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
1
ответ дан 4 December 2019 в 00:10

Теги

Похожие вопросы