Saya memiliki beberapa host Ubuntu, masing-masing dengan lebih banyak mesin virtual Ubuntu. Salah satu mesin virtual adalah server SMTP kami. Pada host mesin virtual SMTP, semua panggilan SMTP dialihkan ke VM SMTP yang digunakan rinetd
dengan konfigurasi berikut:
aa.bb.cc.dd 25 172.16.1.5 25
aa.bb.cc.dd 465 172.16.1.5 465
aa.bb.cc.dd 587 172.16.1.5 587
aa.bb.cc.dd 993 172.16.1.5 993
aa.bb.cc.dd
adalah alamat IP publik dari host tempat SMTP VM duduk. 172.16.1.5
adalah alamat internal VM SMTP.
Masalah saya adalah, bahwa saya tidak dapat mengatur relai pada SMTP VM, karena server postfix pada SMTP VM menerima setiap panggilan dengan aa.bb.cc.dd sebagai alamat IP asal, jadi saya tidak dapat mengatur penyaringan saat menyampaikan, Saya ingin mengaktifkan relai hanya untuk beberapa alamat IP (untuk host kami yang lain).
Apakah ada kemungkinan untuk meneruskan panggilan SMTP ke SMTP1 VM, sehingga alamat IP pencipta disimpan?
sumber
ERR_NETWORK_CHANGED
di browser. Saya juga menambahkan LOG untuk melihat, bahwa aturan tercapai dan benar-benar tercapai, tetapi tidak diteruskan. Apa yang salah? Meja nat saya terlihat seperti:LOG tcp -- 0.0.0.0/0 94.231.88.101 tcp dpt:80 LOG flags 0 level 4
DNAT tcp -- 0.0.0.0/0 94.231.88.101 tcp dpt:80 to:172.16.2.201:80
ip_forward
? Silakan juga periksa kebijakan default / hasil untuk rantai FORWARD,iptables -L
. Sepertinya ini saat ini DROP (maka timeout). catatan: seperti sekarang jelas bahwa ini adalah host di internet, Anda harus berhati-hati dengan routing - pastikan Anda firewall dengan benar kalau tidak orang dapat mengakses VM tamu Anda.cat /proc/sys/net/ipv4/ip_forward
mengembalikan 1. Thefilter
tabel hanya memiliki aturan dasar, yaitu INPUT / FORWARD / OUTPUT (kebijakan ACCEPT). Saya bingung.iptables -t nat -A POSTROUTING -j MASQUERADE
, maka sistem target tercapai, tetapi tentu saja saya kehilangan IP sumber asli. Entah bagaimana, PREROUTING tidak berfungsi di antara dua antarmuka.