[Postfixbuch-users] sendende IP
Michael Poeltl
michael.poeltl at univie.ac.at
So Aug 27 20:01:42 CEST 2006
Hallo Liste,
hoffentlich gelingt es mir jetzt, mein Problem fuer euch klar genug zum
Ausdruck zu bringen ... ich bemueh mich :-)
ich habe zwei domains auf meinem mailserver
der mailserver steht in der DMZ - die public-IP's werden durchgenattet
mail.domain1.at hat 10.0.0.4
mail.domain2.at hat 10.0.0.6
(domain1 und domain2 sind fuer die Darstellung hier platzhalter fuer die
richtigen domains)
beide domains sind virtuelle
im master.cf hab; ich den Eintrag
# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
127.0.0.1:smtp inet n - n - 10 smtpd
# for mail.hofr.at
10.0.0.6:smtp inet n - n - - smtpd
-o myhostname=mail.domain2.at
-o myorigin=domain2.at
# for mail.opentech.at
10.0.0.4:smtp inet n - n - - smtpd
-o myhostname=mail.domain1.at
-o myorigin=domain1.at
--------------------------------------------
hier die ifconfig-Ausgabe des servers in der DMZ
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:50:BA:AC:96:77
inet addr:10.0.0.2 Bcast:10.255.255.255 Mask:255.0.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:669887 errors:0 dropped:0 overruns:0 frame:0
TX packets:590047 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:133623237 (127.4 Mb) TX bytes:322466548 (307.5 Mb)
Interrupt:10 Base address:0xa000
eth0:0 Link encap:Ethernet HWaddr 00:50:BA:AC:96:77
inet addr:10.0.0.3 Bcast:10.255.255.255 Mask:255.0.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:10 Base address:0xa000
eth0:1 Link encap:Ethernet HWaddr 00:50:BA:AC:96:77
inet addr:10.0.0.4 Bcast:10.255.255.255 Mask:255.0.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:10 Base address:0xa000
eth0:2 Link encap:Ethernet HWaddr 00:50:BA:AC:96:77
inet addr:10.0.0.5 Bcast:10.255.255.255 Mask:255.0.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:10 Base address:0xa000
eth0:3 Link encap:Ethernet HWaddr 00:50:BA:AC:96:77
inet addr:10.0.0.6 Bcast:10.255.255.255 Mask:255.0.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:10 Base address:0xa000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:2670 errors:0 dropped:0 overruns:0 frame:0
TX packets:2670 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:356250 (347.9 Kb) TX bytes:356250 (347.9 Kb)
----------------
eingehende mails (adressen fuer domain1 genauso wie fuer domain2) werden ganz
bravoroes in die Maildir der user zugestellt -
wenn ich aber vom LAN aus mails ueber den eigenen mailserver senden moechte -
dann passiert folgendes
egal ob mit telnet oder mit einem MUA wie thunderbird oder kmail -
wenn ich z.B. ueber mail.domain1.at (10.0.0.4 in DMZ) senden moechte, dann
hebt auch mail.domain1.at ab, der dann die Kommunikation mit dem entfernten
mailserver uebernimmt -
NUR, und das ist der springende Punkt meines Problems - der mailserver will
die mails mit source-IP 10.0.0.2 senden (nicht mit 10.0.0.4) - wenn ich ueber
den anderen senden moechte, dann ebenfalls ueber 10.0.0.2 hinaus, und nicht
ueber 10.0.0.6 ... ich war ganz von den Socken, dass das so ist
wie bringe ich das system dazu, email von mail.domain1.at mit 10.0.0.4 zu
senden, und emails von mail.domain2.at mit 10.0.0.6 (ich brauche diese
Unterscheidung fuer meine firewall-Regeln) ... da von beiden domains ueber
10.0.0.2 gesendet wird und ich 10.0.0.2 auf der firewall mittels POSTROUTING
nur einer domain zuweisen kann, so wird derzeit nur mit einer domain
gesendet, naemlich mit mail.domain1.at, wie es dann auch im header der
ankommenden mail beim entfernten user (z.B. bei mir auf der uni) zu sehen
ist ... wa hab' ich da wieder falsch gemacht? Mir kommt es fast so vor, als
wuerde mir ein parameter bislang vollends entgangen sein
# cat /etc/hosts
127.0.0.1 localhost
10.0.0.2 www.domain2.at www
10.0.0.4 mail.domain1.at
10.0.0.4 smtp.domain1.at
10.0.0.3 www.domain1.at
10.0.0.6 mail.domain2.at
10.0.0.6 smtp.domain2.at
Es ist doch der smtp auch fuers Senden von email verantwortlich, oder? Deshalb
dachte ich, dass die Eintraege in der master.cf eigentlich reichen sollten .
hier noch die Ausgabe von postconf -n
alias_database = hash:/etc/postfix/aliases
alias_maps = hash:/etc/postfix/aliases
biff = no
body_checks = regexp:/etc/postfix/body_checks
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
debug_peer_level = 2
disable_vrfy_command = yes
error_notice_recipient = postmaster at domain1.at
header_checks = regexp:/etc/postfix/header_checks
home_mailbox = Maildir/
html_directory = no
inet_interfaces = all
mail_owner = postfix
mailq_path = /usr/bin/mailq
manpage_directory = /usr/man
mydestination = localhost.$mydomain, localhost
myhostname = mail.domain1.at
mynetworks = 10.0.0.0/8, 192.168.1.0/24, 127.0.0.0/8
myorigin = domain1.at
newaliases_path = /usr/bin/newaliases
proxy_interfaces = 10.0.0.6 10.0.0.4
queue_directory = /var/spool/postfix
readme_directory = no
relayhost =
sample_directory = /etc/postfix
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
smtpd_banner = $myhostname ESMTP
smtpd_data_restrictions = reject_multi_recipient_bounce permit
smtpd_helo_required = yes
smtpd_recipient_limit = 100
smtpd_recipient_restrictions = reject_non_fqdn_recipient
reject_non_fqdn_sender reject_unknown_sender_domain
reject_unknown_recipient_domain permit_mynetworks warn_if_reject
reject_sender_login_mismatch reject_unauth_destination
check_recipient_access hash:/etc/postfix/roleaccount_exceptions
reject_non_fqdn_hostname reject_invalid_hostname check_helo_access
pcre:/etc/postfix/helo_checks check_sender_mx_access
cidr:/etc/postfix/bogus_mx reject_rbl_client relays.ordb.org
reject_rbl_client proxies.relays.monkeys.c reject_rbl_client
proxies.blackholes.easynet.nl reject_rbl_client zombie.dnsbl.sorbs.net
reject_rbl_client cbl.abuseat.org reject_rbl_client http.dnsbl.sorbs.net
reject_rbl_client socks.dnsbl.sorbs.net reject_rbl_client
misc.dnsbl.sorbs.net reject_rbl_client dul.dnsbl.sorbs.net
reject_rhsbl_sender dsn.rfc.ignorant.org permit_sasl_authenticated
permit
unknown_local_recipient_reject_code = 550
virtual_alias_domains = hash:/etc/postfix/virtual_alias_domain
virtual_alias_maps = hash:/etc/postfix/virtual_mailbox_aliases
hash:/etc/postfix/virtual
virtual_gid_maps = static:1100
virtual_mailbox_base = /home/virtual_mailboxes/courier
virtual_mailbox_domains = domain2.at mail.domain2.at domain1.at
mail.domain1.at smtp.domain2.at
virtual_mailbox_limit = 0
virtual_mailbox_maps = hash:/etc/postfix/virtual_mailbox_recipients
virtual_uid_maps = static:1100
(gehoert smtp.domain2.at eh auch in virtual_mailbox_domains aufgelistet, oder
gehoerte es in virtual_alias_domains? da bin ich mir auch grad net so
sicher ...)
sorry, dass ich da wieder mit sowas daherkomme - aber ich fuercht, ich brauch
wieder ein paar schubbser in die richtige Richtung :-)
Vielen Dank!
Michael
Mehr Informationen über die Mailingliste Postfixbuch-users