Exim4 relay not permitted

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
drunkenfreak
Posts: 4
Joined: 2005-11-16 21:17

Exim4 relay not permitted

Post by drunkenfreak » 2005-11-16 21:38

Hey,
hab 'nen riesiges Problem mit dem Mailsystem von debianhowto.de (exim4, vexim2, mysql, usw). Immer wenn ich eine Email versuch zu verschicken oder von einem anderen Account zu meinem Server schicke erhalte ich 'relay not permitted'. Das Problem trat nach einem Neustart des Vservers auf. Zuerst ist mir aufgefallen, dass mysqld.sock nicht gefunden werden konnte. War auch schnell geändert das Problem. Weitere Fehler sind dann in der Fakesession nicht aufgetreten (jedenfalls keine für mich erkennbaren):

Code: Select all

# exim4 -bh 1.2.3.4
**** SMTP testing session as if from host 1.2.3.4
**** but without any ident (RFC 1413) callback.
**** This is not for real!

>>> host in hosts_connection_nolog? no (option unset)
>>> host in host_lookup? yes (matched "*")
>>> looking up host name for 1.2.3.4
>>> IP address lookup using gethostbyaddr()
>>> IP address lookup failed: h_errno=1
LOG: no host name found for IP address 1.2.3.4
>>> host in host_reject_connection? no (option unset)
>>> host in sender_unqualified_hosts? no (option unset)
>>> host in recipient_unqualified_hosts? no (option unset)
>>> host in helo_verify_hosts? no (option unset)
>>> host in helo_try_verify_hosts? no (option unset)
>>> host in helo_accept_junk_hosts? no (option unset)
220 domain.org ESMTP Exim 4.50 Wed, 16 Nov 2005 21:22:31 +0100
ehlo there
>>> there in helo_lookup_domains? no (end of list)
>>> using ACL "acl_check_helo"
>>> processing "accept"
>>> check hosts = :
>>> host in ":"? no (end of list)
>>> accept: condition test failed
>>> processing "accept"
>>> check hosts = +relay_from_hosts
>>> gethostbyname2 looked up these IP addresses:
>>>   name=localhost address=127.0.0.1
>>> host in "localhost"? no (end of list)
>>> host in "+relay_from_hosts"? no (end of list)
>>> accept: condition test failed
>>> processing "drop"
>>> check condition = ${if match{$sender_helo_name}{<<ip des servers>>}{yes}{no} }
>>>                 = no
>>> drop: condition test failed
>>> processing "drop"
>>> check condition = ${if match{$sender_helo_name}{^[0-9].[0-9].[0-9].[0-9]}
{yes}{no} }
>>>                 = no
>>> drop: condition test failed
>>> processing "accept"
>>> accept: condition test succeeded
>>> host in pipelining_advertise_hosts? yes (matched "*")
>>> host in auth_advertise_hosts? yes (matched "*")
>>> host in tls_advertise_hosts? no (option unset)
250-domain.org Hello there [1.2.3.4]
250-SIZE 52428800
250-PIPELINING
250-AUTH PLAIN LOGIN CRAM-MD5
250 HELP
mail from: bla@asdf.org
250 OK
rcpt to: user@domain.org
>>> using ACL "acl_check_rcpt"
>>> processing "accept"
>>> check hosts = :
>>> host in ":"? no (end of list)
>>> accept: condition test failed
>>> processing "deny"
>>> check local_parts = ^.*[@%!/|] : ^\.
>>> lupus in "^.*[@%!/|] : ^."? no (end of list)
>>> deny: condition test failed
>>> processing "accept"
>>> check local_parts = postmaster
>>> lupus in "postmaster"? no (end of list)
>>> accept: condition test failed
>>> processing "accept"
>>> check domains = +local_domains
>>> domain.org in "@ : domain.org : domain.org"? yes (matched "@")
>>> domain.org in "+local_domains"? yes (matched "+local_domains")
>>> check verify = recipient
>>> >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>> routing user@domain.org
>>> domain.org in "@ : domain.org : domain.org"? yes (matched "@")
>>> domain.org in "! +local_domains"? no (matched "! +local_domains")
>>> calling virtual_domains router
>>> routed by virtual_domains router
>>> ----------- end verify ------------
>>> accept: condition test succeeded
250 Accepted
quit
221 domain.org closing connection
Smtp-Auth ist beim Client eingestellt. Mails die ich local mit 'mail' verschicke kommen problemlos überall an. Die Mails von 'cron' landen auch immer bei mir im Postfach. Nur die entfernten Server wollen einfach nicht angenommen werden; egal in welcher Richtung.Auf die Domain sind auch auch mx Einträge.

Hat noch einer 'ne Idee, woran es liegen könnte?

so long

felixs
Posts: 119
Joined: 2003-06-01 20:57

Re: Exim4 relay not permitted

Post by felixs » 2005-11-17 08:11

1. Hast du Exim neu gestartet nach der Konfigurationsänderung? (passiert mir gerne)
2. Starte Exim doch mal im Debug-Modus, also exim -bd -d+all <weitere Optionen, wenn nötig> 2>/tmp/debug.log

Anschließend versuchst du mal, Mails abzusetzen.
3. Einträge im reject.log/panic.log?

fs

drunkenfreak
Posts: 4
Joined: 2005-11-16 21:17

Re: Exim4 relay not permitted

Post by drunkenfreak » 2005-11-17 15:57

1. Natürlich
2.

Code: Select all

15:41:10  3572 Exim version 4.50 uid=0 gid=0 pid=3572 D=ffffffff
Berkeley DB: Sleepycat Software: Berkeley DB 4.2.52: (December  3, 2003)
Support for: iconv() IPv6 PAM Perl GnuTLS Content_Scanning Old_Demime
Lookups: lsearch wildlsearch nwildlsearch iplsearch cdb dbm dbmnz dnsdb dsearch ldap ldapdn ldapm mysql nis nis0 passwd pgsql
Authenticators: cram_md5 cyrus_sasl plaintext spa
Routers: accept dnslookup ipliteral iplookup manualroute queryprogram redirect
Transports: appendfile/maildir/mailstore/mbx autoreply lmtp pipe smtp
Fixed never_users: 0
15:41:10  3572 changed uid/gid: forcing real = effective
15:41:10  3572   uid=0 gid=0 pid=3572
15:41:10  3572   auxiliary group list: <none>
15:41:10  3572 --Malloc 0x811b6c0  8200        store.c  167 8200 16553
15:41:10  3572 ---1 Get 0x811b6c8    24       string.c  349
15:41:10  3572 ---1 Get 0x811b6e0    32     readconf.c 2679
[...]
15:41:11  3572 configuration file is /etc/exim4/exim4.conf
15:41:11  3572 log selectors = 00000ffc 00028800
15:41:11  3572 trusted user
15:41:11  3572 admin user
15:41:11  3572 ---1 Get 0x811bc30    16     readconf.c  686
15:41:11  3572 ---1 Get 0x811bc40    40       string.c  349
[...]
15:41:11  3572 originator: uid=0 gid=0 login=root name=root
15:41:11  3572 ---0 Get 0x8122300     8       daemon.c 1048
15:41:11  3572 ---0 Get 0x8122308    64         host.c  504
15:41:11  3572 ---0 Get 0x8122348    64         host.c  504
15:41:11  3572 ---0 Get 0x8122388     8       daemon.c 1169
15:41:11  3572 ---0 Get 0x8122390   160       daemon.c 1188
15:41:11  3572 ---1 Get 0x8121c78    24       string.c  349
15:41:11  3572 LOG: MAIN
15:41:11  3572   IPv6 socket creation failed: Address family not supported by protocol
15:41:11  3572 LOG: MAIN
15:41:11  3572   Failed to create IPv6 socket for wildcard listening (Address family not supported by protocol): will use IPv4
15:41:11  3572 LOG: MAIN
15:41:11  3572   socket bind() to port 25 for address (any IPv4) failed: Address already in use: waiting before trying again
Das ist alles. Hab in der Zeit versucht eine Mail von meinem Rechner über den Server zu verschicken und versucht eine an den Server zu schicken. Beides klappte wieder nicht

3. Nix rein garnix was nicht veraltet ist und bei dem Problem helfen würde (die reject.log wurde erst garnicht angelegt

so long

felixs
Posts: 119
Joined: 2003-06-01 20:57

Re: Exim4 relay not permitted

Post by felixs » 2005-11-17 17:13

DrunkenFreak wrote: 2.

Code: Select all

15:41:11  3572 LOG: MAIN
15:41:11  3572   IPv6 socket creation failed: Address family not supported by protocol
15:41:11  3572 LOG: MAIN
15:41:11  3572   Failed to create IPv6 socket for wildcard listening (Address family not supported by protocol): will use IPv4
15:41:11  3572 LOG: MAIN
15:41:11  3572   socket bind() to port 25 for address (any IPv4) failed: Address already in use: waiting before trying again
Das ist alles. Hab in der Zeit versucht eine Mail von meinem Rechner über den Server zu verschicken und versucht eine an den Server zu schicken. Beides klappte wieder nicht
Aus denen Logs geht hervor, dass Exim sich gar nicht an Port 25 binden konnte - vermutlich ist deine normale Exim-Instanz noch aktiv. Die müsstest du vorher beenden, damit die Debug-Instanz auch die Mailbehandlung macht.

Natürlich könnte auch das Problem sein, dass du parallel einen anderen Mailserver hast, der den Port 25 blockiert, so dass Exim gar nichts mehr machen kann?

fs

drunkenfreak
Posts: 4
Joined: 2005-11-16 21:17

Re: Exim4 relay not permitted

Post by drunkenfreak » 2005-11-17 18:27

Hab exim4 schon vorher gekillt. Einmal mit dem initscript und dann noch mal mit killall exim4. Das Problem besteht weiterhin. 'netstat' zeigt mir allerdings auch nichts an was auf dem Port läuft. Also gehe ich mal davon aus, dass kein anderes Programm den Port blockiert.
Komischerweise kann ich auch nachdem ich exim4 gekillt hab, noch mit 'telnet localhost 25' verbinden. Es wird mir angezeigt, dass exim läuft. Auch von 'nem anderen Rechner ist dies kein Problem. Irgendwo muss exim dann ja wohl noch laufen. Aber wie find ich den und wie kill ich den Prozess dann? 'ps aux' zeigt mir keine weiter Instanz an

so long

User avatar
Joe User
Project Manager
Project Manager
Posts: 11583
Joined: 2003-02-27 01:00
Location: Hamburg

Re: Exim4 relay not permitted

Post by Joe User » 2005-11-17 18:30

Code: Select all

pkill -u EXIMUSER
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.

felixs
Posts: 119
Joined: 2003-06-01 20:57

Re: Exim4 relay not permitted

Post by felixs » 2005-11-17 18:34

Höchst mysteriös. Wenn weder netstat noch ps was anzeigen, würde ich in Richtung rootkit schauen und zwar zu einen ziemlich guten, denn sonst müsstest du andere Fehler bemerkt haben.

Kannst du in main.log o.ä. (ev. /var/logs/maillog, mail.log, mail/*, syslog) pids von Exim-Prozessen finden? Ggf. diese pids direkt versuchen zu killen. Oder top und Filterung nach dem Exim-User.

fs

drunkenfreak
Posts: 4
Joined: 2005-11-16 21:17

Re: Exim4 relay not permitted

Post by drunkenfreak » 2005-11-17 19:12

Naja ich kann irgendwie absolut nichts finden wo die pid drin steht. Ich werd einfach mal den Hoster um 'nen Neustart bitten. Dann sollte es eigentlich wieder laufen. Hoffentlich...

so long