[Postfixbuch-users] mailserver gehackt?

Jens Kruse j.kruse at econnex.de
Mi Jun 9 15:18:14 CEST 2004


Hallo!

Heute morgen lief mein /var voll und siehe da, seit gestern abend waren 
mehrere GB mails über meinen Server 'raus geschickt worden :-(((

Ich setze ein Postfix 1.x auf Debian Woody ein (ständig aktualisiert 
falls notwendig). Bisher waren Relayen für hosts mit 'pop-before-smtp' 
erlaubt, es gab keine Probleme. Konfigänderungen hat es nicht gegeben, 
warum wurde die Maschine nun geknackt?

[] ich hatte bisher einfach nur Glück
[] es gibt einen Postfix Bug, der mir noch nicht bekannt war/ist
[] ich habe mein Postfix falsch konfiguriert

Hier die entsprechenden Konfigs:

main.cf

> # smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
> smtpd_banner = $myhostname ESMTP
> setgid_group = postdrop
> biff = no
> 
> # appending .domain is the MUA's job.
> append_dot_mydomain = no
> mydomain = domain-kiel.de
> myhostname = mailserver.domain-kiel.de
> alias_maps = hash:/etc/aliases
> alias_database = hash:/etc/aliases
> myorigin = /etc/mailname
> mydestination = domain-kiel.de, mailserver.domain-kiel.de, localhost.domain-kiel.de, localhost
> # relayhost =
> relayhost = smtp.tng.de
> # mynetworks = 127.0.0.0/8
> mynetworks = 127.0.0.0/8, hash:/var/lib/pop-before-smtp/hosts
> mailbox_command = procmail -a "$EXTENSION"
> mailbox_size_limit = 0
> recipient_delimiter = +
> 
> # Nur von lokalem Rechner (mailserver) Post annehmen
> inet_interfaces = localhost,1.2.3.4
> 
> smtpd_recipient_restrictions =
>         check_sender_access hash:/etc/postfix/access,
>         check_recipient_access hash:/etc/postfix/access,
>         permit_sasl_authenticated,
>         permit_mynetworks,
> #       permit_mydomain,
> #       reject_non_fqdn_recipient,
> #       check_client_access hash:/etc/postfix/pop-before-smtp,
>         check_client_access hash:/var/lib/pop-before-smtp/hosts,
> #       permit_maps_rbl,
> #       permit_mx_backup,
>         check_relay_domains
> 
> 
> # Aktiviert STARTTLS wenn Postfix Server ist:
> smtpd_use_tls = yes
> 
> # Loggt (nicht) in den Received-Zeilen:
> smtpd_tls_received_header = no
> 
> #
> smtpd_tls_key_file = /etc/postfix/key.pem
> smtpd_tls_cert_file = /etc/postfix/cert.pem
> smtpd_tls_CA_file = /etc/postfix/CAcert.pem
> 
> body_check = regexp:/etc/postfix/body_checks
> 

master.cf

> # ==========================================================================
> # service type  private unpriv  chroot  wakeup  maxproc command + args
> #               (yes)   (yes)   (yes)   (never) (50)
> # ==========================================================================
> # smtp    inet  n       -       -       -       -       smtpd
> smtp    inet  n       -       n       -       -       smtpd -v
> #628      inet  n       -       -       -       -       qmqpd
> pickup    fifo  n       -       -       60      1       pickup
> cleanup   unix  n       -       -       -       0       cleanup
> qmgr      fifo  n       -       -       300     1       qmgr
> #qmgr     fifo  n       -       -       300     1       nqmgr
> rewrite   unix  -       -       -       -       -       trivial-rewrite
> bounce    unix  -       -       -       -       0       bounce
> defer     unix  -       -       -       -       0       bounce
> flush     unix  n       -       -       1000?   0       flush
> smtp      unix  -       -       -       -       -       smtp
> showq     unix  n       -       -       -       -       showq
> error     unix  -       -       -       -       -       error
> local     unix  -       n       n       -       -       local
> virtual   unix  -       n       n       -       -       virtual
> lmtp      unix  -       -       n       -       -       lmtp
> #
> # Interfaces to non-Postfix software. Be sure to examine the manual
> # pages of the non-Postfix software to find out what options it wants.
> # The Cyrus deliver program has changed incompatibly.
> #
> cyrus     unix  -       n       n       -       -       pipe
>   flags=R user=cyrus argv=/usr/sbin/cyrdeliver -e -m ${extension} ${user}
> uucp      unix  -       n       n       -       -       pipe
>   flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
> ifmail    unix  -       n       n       -       -       pipe
>   flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
> bsmtp     unix  -       n       n       -       -       pipe
>   flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -d -t$nexthop -f$sender $recipient
> scalemail-backend unix  -       n       n       -       2       pipe
>   flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}
> 

access:

> domain-kiel.de   OK
> hanmail.net     550 We're fighting against SPAM!
> yahoo.ie        550 We're fighting against SPAM!
> yahoo.com       550 We're fighting against SPAM!
> netzero.net     550 We're fighting against SPAM!
> tw      550 We're fighting against SPAM!
> hinet.net       550 We're fighting against SPAM!
> 21cn.com        550 We're fighting against SPAM!
> tom.com         550 We're fighting against SPAM!
> cox.net         550 We're fighting against SPAM!
> doctor179.adsldns.org   550 We're fighting against SPAM!
> mail15.com              550 We're fighting against SPAM!
> rul3z.de                550 We're fighting against SPAM!

Wie gesagt: Bisher war relayen nur für authentifizierte user möglich, 
jetzt funzt es mit einem 'telnet mailserver 25' ohne Probleme :-(((
Ich bin mir nicht sicher, ob meine main.cf die ist, für die ich sie 
halte; IDS und logs meinen aber, das sie nicht korrumpiert ist ...

* Wo fange ich an zu suchen, bzw noch wichtiger:
* Wie bringe ich postfix wieder sicher zum Laufen? (derzeit ist der 
mail-Server down)

Danke für Eure schnellstmöglichen Hinweise!!!

Gruß, Jens




Mehr Informationen über die Mailingliste Postfixbuch-users