Skript um einen system-user einzurichten

  • Thread starter Thread starter blob
  • Start date Start date

B

blob

Guest
Hat jemand ein Skript, womit sich andere als System-User einrichten können ?

Wenn man den mail-service von usermin benutzen will, muss man sich vorher als System-User einrichten, das geht seinerseits wohl nur unter root - etwa durch Aufrufen von useradmin innerhalb webmin.

Hat jemand irgendein Skript was man in eine web-Seite einbauen kann, wo die Person einen User-Namen eingibt, wass dann einen entsprechenden system-user einrichtet ? Damit die Person eine mailbox erhält und unter usermin seine mails angucken kann ??
 
MOD: Full-Quote entfernt!

Nur useradd funktioniert bei mir. Und was mache ich, damit es beim Anklicken in meiner home-page mit root-Berechtigung läuft (mit sudo kommen lauter Rückfragen wie passwd) ?
 
Last edited by a moderator:
Nur useradd funktioniert bei mir. Und was mache ich, damit es beim Anklicken in meiner home-page mit root-Berechtigung läuft (mit sudo kommen lauter Rückfragen wie passwd) ?

Für sudo gibt es die Option "NOPASSWD". Du könntest auch das SUID-Bit setzen. Beides ist aber sehr gefährlich, denn dann kann jeder Angreifer sich User erstellen, auch mit der ID 0 (root-Rechte!). Das Script müsste dann schon sehr sicher sein und Du musst ausschliessen können, dass jemand zB. über den Apache einen Befehl absetzen kann.

Normalerweise programmiert man für solche Fälle einen Dienst, der als root läuft. Das Script erstellt den User dann über ihn. Im Dienst selbst kann man Überprüfungen anstellen, ob die User-ID beispielsweise über 1000 liegt.

Ich würde wenn immer möglich eine Lösung ohne System-User bevorzugen. Viele Dienste können die User ja mittlerweile aus einer MySQL-DB lesen.
 
Wenn man den mail-service von usermin benutzen will
Vieleicht erklärst Du besser, was Du eigendlich wirklich willst. Denn sonst raten wir an einem Problem rum, welches es gar nicht gäbe, wenn Du einen anderen Weg beschreiten würdest.

Denn wenn ich Dich richtig verstehe, willst Du lediglich einen Maildienst anbieten.
Dazu gibt es andere/geeignetere Programme (z.B. b1gmail) als Usermin.

huschi.
 
Sendmail funktioniert bei mir einwandtfrei, rein- und rausgehend, aber Ich will, dass die mails die in /var/spool/mail zusammengekegelt werden, für (am besten nur zu diesem Zweck anmeldbare) Benutzer in Postfächer getan werden, sodass jeder dieser Benutzer unter seinem Namen seine eigenen mails angucken kann -- einschliesslich, dass sich zu diesem Zweck neue Benutzer registrieren können.

Mit usermin geht das soweit gut, für diejenigen Benutzer, die schon registriert sind, wobei die Benutzer aber System-('unix')-Benutzer sein müssen, also normale Benutzer des Rechners und nicht nur ihrer Mailbox. So benutze ich das auch momentan. Soweit, sogut noch.

Probleme gibt es aber, wenn man sich neue Benutzer registrieren lassen will. Dazu müssen sich diese (etwa via Webmin oder sonstwie) unter root (oder mit sudo) anmelden, um sich selbst als System-User einzurichten.

Das hab ich bisher immer zugelassen und hat zuvor auch keine Probleme gegeben, ändere ich aber jetzt, einschliesslich dass ich Webmin abgestellt habe.

Daher suche ich eine Möglichkeit, wie sich x-beliebige neue Benutzer via Internet, ohne Sicherheitsrisiko, selbst als System-User einrichten zu können - oder aber, ein anderes Programm, womit sich irgendwie anders mailboxen und rauf-/runterladen von Dateien einrichten lässt einschliesslich Selbst-Registrierung neuer Benutzer (in letztem Fall kann ich dann ganz auf webmin+usermin verzichten)

<Achtung falls mir jemand helfen will, heute und wohl auch morgen läuft mein Server oft nicht, da ich alles umstelle>
 
Last edited by a moderator:
Daher suche ich eine Möglichkeit, wie sich x-beliebige neue Benutzer via Internet, ohne Sicherheitsrisiko, selbst als System-User einrichten zu können - oder aber, ein anderes Programm, womit sich irgendwie anders mailboxen und rauf-/runterladen von Dateien einrichten lässt einschliesslich Selbst-Registrierung neuer Benutzer (in letztem Fall kann ich dann ganz auf webmin+usermin verzichten)

Falls Du beispielsweise Postfix mit virtuellen Mailboxes verwendest, können die User in einer MySQL-Datenbank stehen. Dafür ein einfaches Frontend für die Useranmeldung zu programmieren ist mit PHP keine Kunst. Der grosse Vorteil: Die User sind keine Systemuser. Es kann sich also garantiert niemand einen zweiten Rootaccount erstellen.

Für FTP gibt es auch MySQL-Authentifizierung, ich verwende proftpd.

Falls Du Interesse hast, kann ich gern die Konfig-Files und das DB-Layout posten. Ist wirklich sehr einfach. Ein passendes Frontend habe ich bis jetzt noch nicht entwickelt, ich muss so selten User eröffnen das ich das schneller direkt über MySQL oder phpmyadmin mache.
 
Gut, so wissen wir endlich was Du haben willst.
Und ich wiederhole mich deshalb:
Dazu gibt es andere/geeignetere Programme (z.B. b1gmail) als Usermin.
Siehe einfach mal nach: b1gmail
Es gibt davon auch noch eine ältere kostenlose Version.

Es gibt auch noch andere Webmailer-Scripte, die aber schwieriger zu administrieren sind: squirrelmail, horde/imp.

huschi.
 
Nur abschließend, zumal andere Leser mit demselben Problem vielleicht mit der Suchfunktion diese Frage finden:

Bei der neuen Version 1.31 von Webmin wurde nun eingebaut (bzw funktioniert nun richtig) daß folgende Vorgehensweise möglich ist:

/ einen webmin-user einrichten, zBsp mkuser , diesem nur das Modul useradmin zuordnen, dafür selbe (webmin-)Berechtigungen wie root, aber keine IP-Zugangs-Beschränkung (anders als bei root, den ich hier auf 127.0.0.1 beschränke)
/ useradmin als anonym zugängliches Modul für usermin anlegen, anonymer Zugang wie für user mkuser . In module-config wählen, ob man einem neuen e-mail Benutzer sich als webmin- oder als unix(System)-Benutzer anzumelden erlauben will
/ Dann kann man in seiner home-page, zur Registrierung eines neuen e-mail-users, www ... : 8080/useradmin/edit_user.copy.cgi , verlinken. In dieser Kopie von edit_user.cgi ändert man nur, daß nach Klicken des OK's nicht (wie normalerweise) zur Auflistung aller nunmehr vhd. Benutzer gesprungen wird (was anonyme/beliebige Benutzer nichts angeht) sondern zu einer Seite zBsp mit der Meldung 'Ihr e-mail wurde eingerichtet' mit seinerseits link zur Benutzung der neuen Mailbox (also www ... : 8081 = usermin , wobei man dieses so einstellt daß bei Aufruf von anderswo als 127.0.0.1, nur das Modul 'read mail' [ggf noch 'hoch/runterladen von Dateien'] angezeigt wird).

Das funktioniert jetzt problemlos in meinem site.
 
Last edited by a moderator:

Back
Top