• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Wie schicke ich von einem Linux zum Anderen Mails?

admine

Ultimate Guru
Hallo Leute,

ich hatte grad so 'ne Idee mir auf mein Laptop Systemmails vom PC schicken zu lassen.
Hab geglaubt, so schlimm kann das doch nicht sein ... ist es aber scheinbar für so 'nen Postfix-DAU wie mich doch.

Was bisher geschah:

Ich habe in der /etc/aliases am PC meinen Laptop-User eingetragen:
Code:
root:           admine@reni2.leoni.de
User: admine; Host: reni2; Domain: leoni.de
Danach main.cf angepasst:
Code:
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
data_directory = /var/lib/postfix
mail_owner = postfix
unknown_local_recipient_reject_code = 550
debug_peer_level = 2
debugger_command =
         PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
         ddd $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = maildrop
html_directory = /usr/share/doc/packages/postfix-doc/html
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/packages/postfix-doc/samples
readme_directory = /usr/share/doc/packages/postfix-doc/README_FILES
relay_domains = $mydestination, hash:/etc/postfix/relay
virtual_alias_maps = hash:/etc/postfix/virtual
inet_protocols = ipv4
biff = no
mail_spool_directory = /var/mail
canonical_maps = hash:/etc/postfix/canonical
virtual_alias_domains = hash:/etc/postfix/virtual
relocated_maps = hash:/etc/postfix/relocated
transport_maps = hash:/etc/postfix/transport
sender_canonical_maps = hash:/etc/postfix/sender_canonical
masquerade_exceptions = root
masquerade_classes = envelope_sender, header_sender, header_recipient
myhostname = reni.leoni.de
mydomain = leoni.de
delay_warning_time = 1h
message_strip_characters = \0
program_directory = /usr/lib/postfix
inet_interfaces = all 
masquerade_domains = 
mydestination = $myhostname, $mydomain, localhost.$mydomain
defer_transports =
mynetworks_style = subnet
disable_dns_lookups = no
relayhost = 
content_filter = 
mailbox_command = 
mailbox_transport = 
strict_8bitmime = no
disable_mime_output_conversion = no
smtpd_sender_restrictions = hash:/etc/postfix/access
smtpd_client_restrictions = 
smtpd_helo_required = no
smtpd_helo_restrictions = 
strict_rfc821_envelopes = no
smtpd_recipient_restrictions = permit_mynetworks,reject_unauth_destination
smtp_sasl_auth_enable = no
smtpd_sasl_auth_enable = no
smtpd_use_tls = no
smtp_use_tls = no
smtp_enforce_tls = no
alias_maps = hash:/etc/aliases
mailbox_size_limit = 0
message_size_limit = 0
Postfix restartet und newaliases ausgeführt ... und glaubte, das reicht.

Nix ... Fehlermeldungen kommen:
Code:
Nov 17 21:46:01 reni postfix/smtp[10250]: 70FCD140642: to=<admine@reni2.leoni.de>, orig_to=<root@reni.leoni.de>, relay=none, delay=0.09, delays=0.05/0/0.04/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=reni2.leoni.de type=A: Host not found)
Experimentiert hab ich mit inet_interfaces, aber egal, was ich da eingetragen habe ... es brachte nix.
Bei $mydomain und wlan0 startet Postfix gar nicht, bei all schon.

Aber am Laptop kommt nix an.

Die beiden Kisten stehen natürlich im selben Netz und via ping auf FQDN kann ich das Laptop auch erreichen!
Namensauflösung erfolgt über die /etc/hosts.

Aber was hab ich vergessen?

EDIT: habe eben noch mynetworks = 127.0.0.0/8, 192.168.0.0/24 in der main.cf ergänzt ... leider keine Änderung.
 

TomcatMJ

Guru
Hast du auch nicht vergessen den passenden Port in der Firewall zu öffnen? Port 25 SMTP? Den Status "bounced" kriegt man nämlich nicht nur wenn der Host nicht zu finden ist sondern auch schonmal wenn der Port dicht ist auf dem anvisierten Host. ;) (Manchmal sieht man den Wald vor lauter Bäumen nicht, daher mal der simple Vorschlag das mal zu überprüfen)
 
OP
A

admine

Ultimate Guru
TomcatMJ schrieb:
Hast du auch nicht vergessen den passenden Port in der Firewall zu öffnen? Port 25 SMTP? Den Status "bounced" kriegt man nämlich nicht nur wenn der Host nicht zu finden ist sondern auch schonmal wenn der Port dicht ist auf dem anvisierten Host.
Die Firewalls auf beiden Linux-Kisten sind ausgeschaltet.
Es gibt eine Firewall auf dem Router, über den die Rechner miteinander verbunden sind, aber die sollte doch nur ziehen bei Anragen ins Internet.
 

abgdf

Guru
Kommen denn Mails auf dem Laptop an, die Du "normal", also per Hand (erstmal kmail, dann mailx) dorthin vom PC verschickst?
 
OP
A

admine

Ultimate Guru
Ich bin mir jetzt nicht ganz sicher was du meinst, aber das Verschicken einer Mail von Zeile kommt auch nicht an:
Code:
echo "Ich bin der Nachrichtentext" | mail "admine@reni2.leoni.de"
Fehlermeldung die Gleiche:
Code:
<admine@reni2.leoni.de>: Host or domain name not found. Name service error for
    name=reni2.leoni.de type=A: Host not found
Code:
Nov 18 18:40:39 reni postfix/qmgr[1927]: 8147D140482: from=<root@reni.leoni.de>, size=433, nrcpt=1 (queue active)
Nov 18 18:40:39 reni postfix/smtp[29856]: 8147D140482: to=<admine@reni2.leoni.de>, relay=none, delay=0.23, delays=0.11/0.03/0.09/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=reni2.leoni.de type=A: Host not found)
:(
 

TomcatMJ

Guru
Mal mit Telnet getestet was der Server so von sich gibt? http://www.postfix-howto.de/servertest.htm kann dabei hilfreich sein beim generellen Funktionstest
 
OP
A

admine

Ultimate Guru
TomcatMJ schrieb:
Mal mit Telnet getestet was der Server so von sich gibt? http://www.postfix-howto.de/servertest.htm kann dabei hilfreich sein beim generellen Funktionstest
Danke! Daran hab ich bisher noch nicht gedacht, aber ich werd's gleich testen.
 
OP
A

admine

Ultimate Guru
Folgendes hab ich getestet und dabei ist mir etwas aufgefallen:

Code:
reni:~ # netstat -an | grep LISTEN 
tcp        0      0 0.0.0.0:514             0.0.0.0:*               LISTEN      
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      
tcp        0      0 0.0.0.0:631             0.0.0.0:*               LISTEN      
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN      
tcp        0      0 0.0.0.0:513             0.0.0.0:*               LISTEN      
tcp        0      0 :::111                  :::*                    LISTEN      
tcp        0      0 :::631                  :::*                    LISTEN
Code:
admine@reni2:~> telnet reni.leoni.de 25
Trying 192.168.0.1...
Connected to reni.leoni.de.
Escape character is '^]'.
220 reni.leoni.de ESMTP Postfix
quit
221 2.0.0 Bye
Connection closed by foreign host.
Das funktioniert also ... ist aber genau die falsche Richtung ;)
Jetzt anders:
Code:
reni2:~> netstat -an | grep LISTEN
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      
tcp        0      0 :::111                  :::*                    LISTEN
Code:
admine@reni:~> telnet reni2.leoni.de 25
Trying 192.168.0.6...
telnet: connect to address 192.168.0.6: Connection refused

Was ich erkenne:
Am Laptop (reni2) das: 127.0.0.1:25 => kann mich nicht connecten - das ist doch bestimmt das Problem, oder? :???:
Am PC (reni) das: 0 0.0.0.0:25 => telnet funzt.

Nun ist's aber grad die Richtung PC => Laptop, den die Mails nehmen sollen.

EDIT:
Mails kommen aber auch vom Laptop zum PC nicht an:
Code:
echo "Ich bin der Nachrichtentext" | mail "admine@reni.leoni.de"
Log-File dazu:
Code:
Nov 18 20:16:45 reni2 postfix/pickup[7645]: 9D47D12059B: uid=1000 from=<admine>
Nov 18 20:16:45 reni2 postfix/cleanup[7844]: 9D47D12059B: message-id=<20111118191645.9D47D12059B@reni2.leoni.de>
Nov 18 20:16:45 reni2 postfix/qmgr[7644]: 9D47D12059B: from=<admine@reni2.leoni.de>, size=433, nrcpt=1 (queue active)
Nov 18 20:16:45 reni2 postfix/smtp[7846]: 9D47D12059B: to=<admine@reni.leoni.de>, relay=none, delay=0.4, delays=0.29/0.02/0.09/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=reni.leoni.de type=A: Host not found)
Genau das Gleiche ... jetzt hab ich gar keinen Plan mehr.
Kann mir bitte jemand helfen? Ihr schickt doch bestimmt auch Mails durchs lokale Netz ... oder? :roll:
 

TomcatMJ

Guru
Jo,sieht so aus als nehme dein Laptop (reni2) auf dem SMTP-Port nichts entgegen. Wohin soll der dortige Postfix die Mails weiterreichen? Einen IMAP-Daemon oder Pop3 oder simples Procmail? Wenn nämlich nichts definiert ist was als MDA (IMAP-Server, POP3 Server oder Procmail) dienen soll, dann weiss der MTA (der SMTP-Server, hier also Postfix) nicht wohin er die Mail reichen soll und nimmt daher eventuell erstmal gar nichts an. Wie mir bei einem nochmaligen Überflug deiner main.cf auffiel hast du dort noch gar keinen mailbox_transport definiert der als MDA fungieren könnte. Ganz ohne gehts aber nicht. Wenn du also keinen POP3 oder IMAP Sevrer auf dem Laptop fahren willst solltest du zumindest
Code:
mailbox_transport = procmail
dort setzen nachdem du zuerst sichergestellt hast daß procmail auf deinem Laptop installiert ist. (siehe auch unter http://www.postfix-howto.de/konfiguration/postfix.htm )

Edit:Tippfehler im Code-Block korrigiert, hier gehts um einen mailbox_transport nicht um getarnten Sport ;)
 
OP
A

admine

Ultimate Guru
@TomcatMJ
Das leuchtet ein! Daran hab ich noch nicht gedacht :eek:ps:
Die Mails sollen einfach in der lokalen Mailbox landen /var/spool/mail/admine.
Von da holt sie mein Claws-Mail ab.
Also nix POP3 od. IMAP, heißt also ich stürz mich auf procmail.

@spoensche
die gepostete main.cf ist vom PC ... am Laptop steht da natürlich
Code:
myhostname = reni2.leoni.de
DNS-Auflösung funzt hin wie her via /etc/hosts ... Namen nutze ich auch für andere Dienste (rlogin etc.)
 
OP
A

admine

Ultimate Guru
@TomcatMJ
wo bzw. an welchem Rechner muss ich denn eigentlich procmail konfigurieren?
Das Senden von Mails lokal am Laptop via Postfix funzt ja.
Muss procmail da am PC konfiguriert werden und in der main.cf eingetragen werden?

(Irgendwie hab ich grad den Überblick verloren :schockiert: )

Ich häng noch mal zum Über blick beide main.cf an.

main.cf vom Laptop:
http://nopaste.info/9fd26ff606.html

main.cf vom PC:
http://nopaste.info/3d0ffa4625.html
 

TomcatMJ

Guru
Der mailbox_transport gehört auf dem Rechner definiert auf dem die Mail landen soll, denn das dient dazu die eingehende Mail dem jeweiligen Benutzer verfügbar zu machen damit dieser sie abholen kann, ist also sozusagen derjenige der den Postsack annimmt und die Briefe sortieren soll. Dieser Dienst gibt alles auf einmal zurück wenn nichts da ist wohin er das Ganze sortieren kann und nur dann einzelnes zurück wenn er zwar sortieren aber den Empfänger dann nicht finden kann. In deinem Fall geht momentan ja alles auf einmal zurück mangels Info wohin es sortiert werden könnte.....
Ergo: In die main.cf deines Laptops gehört ein Eintrag für den mailbox_transport rein da dort ja die Empfängermailbox sein soll.
 
OP
A

admine

Ultimate Guru
TomcatMJ schrieb:
Ergo: In die main.cf deines Laptops gehört ein Eintrag für den mailbox_transport rein da dort ja die Empfängermailbox sein soll.
Danke!
Aber wenn ich das richtig sehe, brauch ich wieder 'ne procmailrc ... da steht dann was von cyrus ... *grrr* ... u.s.w.
Und verstehen tu ich's nicht.

Ich glaub, ich lass das ... wer braucht schon die Mails vom PC *grml* :/
 

abgdf

Guru
Ach, mach doch weiter! Dann hast Du wieder was gelernt.
Ich glaube, Du hast es bald (obwohl ich da in der Sache leider nicht weiterhelfen kann).

Gruß
 
OP
A

admine

Ultimate Guru
Nach Anlegen einer ganz einfachen procmailrc in /etc und dem Eintrag in der main.cf mailbox_transport = procmail
funktioniert nicht mal mehr die lokale Zustellung.

Code:
admine@reni2:~> cat /etc/procmailrc
MAILDIR=/var/spool/mail/admine
#LOGFILE=$HOME/.procmail/procmail.log
DEFAULT=${MAILDIR}

Das sind vermutlich zu wenig an Angaben, allerdings muss ich gestehen, weiß ich nicht, was fehlt.

Meldung in /var/log/mail:
Code:
Nov 19 10:50:02 reni2 postfix/qmgr[8070]: CFBE2120625: from=<root@reni2.leoni.de>, size=5011, nrcpt=1 (queue active)
Nov 19 10:50:02 reni2 postfix/pipe[8109]: CFBE2120625: to=<admine@reni2.leoni.de>, orig_to=<root>, relay=procmail, delay=0.48, delays=0.29/0.04/0/0.15, dsn=2.0.0, status=sent (delivered via procmail service)
Nov 19 10:50:02 reni2 postfix/qmgr[8070]: CFBE2120625: removed
Wenn ich das richtig sehe, dann ist die Übergabe an procmail erfolgt ... der hat nur nicht zugestellt :???:
 
OP
A

admine

Ultimate Guru
Das funktioniert jetzt:
Code:
admine@reni:~> telnet reni2.leoni.de 25
Trying 192.168.0.6...
Connected to reni2.leoni.de.
Escape character is '^]'.
220 reni2.leoni.de ESMTP Postfix
helo
501 Syntax: HELO hostname
helo reni2
250 reni2.leoni.de
mail from: admine@reni.leoni.de
250 2.1.0 Ok
rcpt to: admine@reni2.leoni.de
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
das ist meine Testnachricht ... los jetzt! Komm an!
.
250 2.0.0 Ok: queued as 2FEDF120625
quit
221 2.0.0 Bye
Connection closed by foreign host.
Und die Mail landete in /var/spool/mail/admine und damit in Claws-Mail.

Zuvor geändert am Laptop:
main.cf:
mailbox_command = /usr/bin/procmail
Eine /etc/procmailrc erstellt mit folgendem Inhalt:
Code:
MAILDIR=/var/spool/mail/admine
LOGABSTRACT=all
LOGFILE=$HOME/procmail.log
DEFAULT=${MAILDIR}

:0:
* rom.*@reni.leoni.de
/var/spool/mail/admine
Damit funzt das lokale Übermitteln der Systemmails und eben s.o. das mit telnet (nur, da bin ich ja im Prinzip schon auf dem Laptop vom PC aus :???: )
Aber Systemmails vom PC kommen noch nicht am Laptop an.

Wo könnte es denn noch hängen?
 

TomcatMJ

Guru
MIt dem Test per Telnet hast du getestet ob Zustellung von außer klappt,d.h. du warst sozusagen nun nicht mehr von innen sondern von außen am Laptop zugange, so wie es der PC auch tun würde wenn er es denn versuchen würde. Es scheint nun noch am PC zu haken. Ich muss nun aber erst noch paar Dinge erledigen,kann vermutlich gegen Spätnachmittag erst wieder weiterchecken ob ich noch paar Haken finde bei den bisher bekannten Konfigurationen...vielleicht hat ja inzwischen noch wer eine zündende Idee bzw. sieht den Haken? ;)

Bis denne,
Tom
 
OP
A

admine

Ultimate Guru
@TomcatMJ
Danke dir für deine bisherige Hilfe, hat mich ja doch schon ein Stück gebracht ;) Danke!
 
Oben