ssmtp als root geht als user nicht

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
KuLu
Beiträge: 2
Registriert: 13.01.2018 18:45:27

ssmtp als root geht als user nicht

Beitrag von KuLu » 16.01.2018 00:06:55

Hallo Zusammen

nachdem ich diese Forum sowie Google und Co durchgestöbert haben, und für mich keine Lösung gefunden habe,
habe ich mich entschlossen, mein Problem in diesem Forum vorzustellen.

## User haben keinen Zugriff auf ssmtp ##

Hintergrund:
Ich habe mit 3 Einplatinen-Rechner (Bananpi) und einem XP-Rechner ein Testumgebung mit Debian 7 realisiert.
bestehend aus einem DNS/Web-server, einem Mailserver und 2 Clients (xp/debian7)

Ziel ist es ein absolut minimalistische Umgebung zu bauen, um ein optimale Leistung zu erreichen.
(Debian7 armhf ist direkt über debootstrap erstellt.)
Workflow
Formular -> Mailversandt über ssmtp (Web) -> Mailserver -> Client (Thunderbird)

Als root habe ich kann ich von jedem Rechner alle anderen erreichen (ping/dig/host/nslookup).
Der Webserver hat ein SSL-zertifikat und ist auch erreichbar.
CGi-Scripte können aufgerufen und und solange die Ausgabe auf dem Bildschirm des Client ist, auch verarbeitet und ausgegeben werden.

Soweit ist alles ist alles in Ordnung.

Wenn ich ein Formular verschicken will, kommt die Fehlermeldung mail.domain.de kann nicht gefunden werden.

Nun gut, Fehlersuche
Ich habe diverse Scripte ausprobiert - immer die gleiche Fehlermeldung

Ok - eine Stufe kleiner

Als root kann ich das klassische Testmail vom Web-Rechner versenden, und "pling" taucht es in Thunderbird auf.
# echo "Testing...1...2...3" | ssmtp user0@<domain>.de

versuche ich es als User(www-data/...../..... , wird der Befehl nicht gefunden.
$ echo "Testing...1...2...3" | ssmtp user@<domain>.de
-su: ssmtp: Kommando nicht gefunden.

wenn ich den Pfad hinzu gebe
$ echo "Testing...1...2...3" | /usr/sbin/ssmtp user0@<domain>.de
ssmtp: Cannot open mail.<domain>.de:465

nun zu meinem Anliegen

wie muß Ich Debian einrichten, ohne neue Programme zu installieren
a.) daß ich als User Zugriff auf ssmtp bekomme
b.) das ich den mail.<domain>.de erreichen kann

wie schon beschrieben, als root geht es.

im Voraus schon vielen Dank


Gruß KuLu

breakthewall
Beiträge: 507
Registriert: 30.12.2016 23:48:51

Re: ssmtp als root geht als user nicht

Beitrag von breakthewall » 16.01.2018 03:12:14

Warum wird noch Debian Wheezy verwendet? Es sind kaum noch 3 Monate, dann endet der LTS-Support und dann war es das mit Updates.

Und der Grund weshalb ein regulärer Nutzer keinen Zugriff darauf bekommt, liegt an den Dateirechten. Nur Root kann Inhalte von /usr/sbin lesen und ausführen. Das Programm wird unter anderem auch Rootrechte benötigen, da ein regulärer Nutzer auf die Ports 1-1000 keinen Zugriff hat. Lösbar wäre das indem man die Dateirechte von ssmtp via chmod ändert, und Suid-Rechte vergibt, auch wenn das nicht ratsam ist. Man könnte es aber auch dabei belassen, und ssmtp nur als Root ausführen. Sollte es dabei Sicherheitsbedenken geben, ließe sich ssmtp auch isoliert via Sandbox ausführen, indem das Programm zwar mit Rootrechten gestartet wird, jedoch danach wieder seine Privilegien verliert. Gibt es besondere Gründe weshalb ssmtp als regulärer Nutzer gestartet werden soll?

NAB
Beiträge: 5502
Registriert: 06.03.2011 16:02:23
Lizenz eigener Beiträge: MIT Lizenz

Re: ssmtp als root geht als user nicht

Beitrag von NAB » 16.01.2018 04:50:56

breakthewall, ich glaube, du übertreibst da etwas mit deinen Bedenken ...

Aber bei näherer Betrachtung ist das Problem recht interessant.

Debian sagt, die Gruppe "mail" sei nicht dazu gedacht, von Usern direkt genutzt zu werden:
https://wiki.debian.org/SystemGroups

Und dann sagt Debian, man soll Nutzer von ssmtp in die Gruppe "mail" stecken:
https://wiki.debian.org/sSMTP

Ja, was denn nun?

Immerhin bringt Google einen gleich zurück zum debianforum.de:
https://wiki.debianforum.de/Mit_sSMTP_M ... der_leiten
KuLu? Dein Google ist kaputt :wink:

Und in Scripten immer mit vollem Pfad!
Never change a broken system. It could be worse afterwards.

"No computer system can be absolutely secure." Intel Document Number: 336983-001

KuLu
Beiträge: 2
Registriert: 13.01.2018 18:45:27

Re: ssmtp als root geht als user nicht

Beitrag von KuLu » 21.01.2018 08:07:44

Hallo breakthewall, NAB

danke für die Antwort

Ich hebe dann die Namesauflösung mit hostname geprüft:
hostname, hostname -f, hostname -d

als root
-> wird alles aufgelöst

als "user" in meinem Falle "www-data":
hostname -> i.O
hostname -f -> hostname: name or service not known
hostname -d -> hostname: name or service not known

wenn ich den Pfad dazugebe <etc/hostname> kommt die Meldung /etc/hostname: Permission denied.

Ich habe es auch an einem Desktop-Rechner getesten -> die gleiche Ausgabe

Braekthewall hat die Optionen und die Konsequenzen sehr gut beschrieben.

In Rücksprache mit meinem Kollegen wollen wir nicht in den Rechten herumpfuschen, da wir nicht wissen, welche Löcher wir aufmachen.

Kennt Ihr eine Alternative, wie wir die Formulardaten (www-data) auf dem Webrechner mit ssmtp durchschleifen können?

gruß KuLu

TMTYD
Beiträge: 70
Registriert: 06.11.2017 06:38:26

Re: ssmtp als root geht als user nicht

Beitrag von TMTYD » 21.01.2018 09:37:16

schau mal hier vllt hiflt dir das weiter

https://wiki.debianforum.de/Mit_sSMTP_M ... revaliases

Antworten