tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von Navy
ERLEDIGT
JA
ANTWORTEN
7
ZUGRIFFE
774
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    angelikamorgan angelikamorgan ist offline Mitglied Silber
    Registriert seit
    Sep 2003
    Beiträge
    89
    Hallo,

    ich habe auf meinem alten Rechner den Ubuntu-Server installiert.

    Mir ist nicht klar, welche Dienste als Root und welche als "normaler" User gestartet werden müssen.

    z.B. möchte ich folgende Dienste und Programme starten:

    - apache webserver
    - apache tomcat

    Tomcat werde ich nicht via apt-get installieren. Sondern händig unter /opt

    Wann soll man Dienste als root starten und wann als "normaler" User ?

    Gruß
    Angelika
    Geändert von angelikamorgan (05.08.09 um 09:40 Uhr)
     

  2. #2
    Avatar von Dr Dau
    Dr Dau Dr Dau ist offline ich wisch hier durch
    Registriert seit
    Feb 2005
    Ort
    hinterm Mond gleich Links
    Beiträge
    6.160
    Blog-Einträge
    4
    Hallo!

    Wie es mit Tomcat aussieht weiss ich nicht, aber ich denke mal dass es der gleiche Benutzer ist wie für Apache.
    Unter Debian (Ubuntu ist ja ein Abkömmling davon) gibt es für Apache einen eigenen Benutzer in einer eigenen Gruppe.
    Benutzer und Gruppe sind jeweils "www-data".
    Theoretisch sollte aber auch jeder andere Benutzer und jede andere Gruppe möglich sein.
    Ausprobiert habe ich es aber noch nie, daher würde ich eher beim Standard (www-data) bleiben.

    Gruss Dr Dau
     
    Schri-Schra-Schrödi *g*
    mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
    Dinge, die mit Tabellen besser klappen als mit CSS
    Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
    Meine Links zum Thema Linux (Last update: 29.10.2011)
    Kein Busen ist so flach wie das Niveau dieser Party!
    ----
    Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
    ----
    Ich habe 3 Kinder und kein Geld!
    Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)

  3. #3
    Avatar von Navy
    Navy Navy ist offline Freiwillige Serverwehr
    tutorials.de Administrator
    Registriert seit
    Jul 2003
    Ort
    Montreal (Quebec)
    Beiträge
    1.667
    Zitat Zitat von Dr Dau Beitrag anzeigen
    Hallo!
    Benutzer und Gruppe sind jeweils "www-data".
    Theoretisch sollte aber auch jeder andere Benutzer und jede andere Gruppe möglich sein.
    Ausprobiert habe ich es aber noch nie, daher würde ich eher beim Standard (www-data) bleiben.
    Nein. Das sind die Benutzer, unter denen der Hauptprozess forkt. Gestartet werden die Daemons als root und zwar über die Initscripte, die bei Debian und dessen Derivaten unter /etc/init.d/ liegen.

    Der Hauptprozess eines Daemons läuft meistens unter der UID vom root, da er hier alle benötigen Ressourcen ohne die Einschränkungen eines normalen Users belegen kann. Da die Daemons aber clever programmiert sind, forken sie meistens Childprozesse unter einem User, der eben keine Allmacht hat.
    kuddeldaddeldu bedankt sich. 
    Navy

    --
    Echtzeithilfe unter irc.tutorials.de #tutorials.de

  4. #4
    Avatar von Dennis Wronka
    Dennis Wronka Dennis Wronka ist offline Soulcollector
    Registriert seit
    Apr 2002
    Ort
    Hong Kong
    Beiträge
    12.296
    Blog-Einträge
    231
    Zitat Zitat von Navy Beitrag anzeigen
    Gestartet werden die Daemons als root...
    Nur mal ganz kurz zur Erlaeuterung warum das so ist: So ein Dienst muss einen Port oeffnen, das kann nicht jeder dahergelaufene User, sondern eben nur root.
    Obwohl man das nun auch wieder genauer erlaeutern muss, denn die Aussage gilt nur fuer alle aktuellen (mir bekannten/in letzter Zeit mal ausprobierten) Linux-Distributionen.

    Mit Hilfe von POSIX-Capabilities naemlich sollte sich auch dieses Problem umgehen lassen, nur werden diese bislang so gut wie garnicht eingesetzt.
    Darum sind auch Befehle wie ping (ja ping!) und passwd weiterhin SetUID root, auch wenn's garnicht noetig waer...
     
    PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
    Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
    __________________
    EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
    EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
    __________________
    Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
    __________________
    Zitat Zitat von Friedrich Nietzsche
    Man muss noch Chaos in sich haben, um einen tanzenden Stern gebaeren zu koennen.

  5. #5
    angelikamorgan angelikamorgan ist offline Mitglied Silber
    Registriert seit
    Sep 2003
    Beiträge
    89
    Hallo Zusammen,

    danke erst einmal für euere Antworten


    Ein konkretes Beispiel.

    Ich habe "Apache Tomcat" von "http://tomcat.apache.org" gesaugt und entpackt.
    In dem Ordner "bin" befindet sich ein start Script.

    Ich habe nun die Möglichkeit, den Tomcat-Dienst als "normaler" User oder als Root zu starten.

    So wie ich das bis jetzt verstanden habe, soll man Dienste (sofern möglich) IMMER als "normaler" user starten.
    Grund: Solche Dienste können Bugs aufweisen. Wird ein Programm via Root gestartet, kann ein böser Mensche die Lücke ausnutzen und via Root-Rechte auf das System zugreifen.
    Ist das Programm (Dienst) nicht als Root gestartet worden, kann der böse Mensch nicht gleich per Root auf das System zugreifen.

    Stimmt diese Aussage ?

    Falls ja, woran kann ich erkenne, ob ein Programm (Dienst) per Root oder User gestartet werden kann bzw. muss ?
    Apache lässt sich z.B. nur als Root starten. Das habe ich erst gemerkt, als Apache sich beschwert hat und Root-Rechte angefordert hat.

    Tomcat lässt sich z.B. als User starten.

    Gruß
    Angelika
     

  6. #6
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.806
    Blog-Einträge
    5
    Zitat Zitat von Dennis Wronka Beitrag anzeigen
    Nur mal ganz kurz zur Erlaeuterung warum das so ist: So ein Dienst muss einen Port oeffnen, das kann nicht jeder dahergelaufene User, sondern eben nur root.
    Das trifft nur auf die Well Known Ports (0-1023) zu. Ports ab 1024 können auch von normalen Benutzer geöffnet werden.

    Grüße, Matthias
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  7. #7
    Avatar von Dennis Wronka
    Dennis Wronka Dennis Wronka ist offline Soulcollector
    Registriert seit
    Apr 2002
    Ort
    Hong Kong
    Beiträge
    12.296
    Blog-Einträge
    231
    Ja, okay. Haette ich erwaehnen sollen. Aber die meisten Dienste laufen ja gerade in dieser Port Range, von ein paar Ausnahmen (z.B. MySQL) mal abgesehen.
     
    PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
    Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
    __________________
    EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
    EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
    __________________
    Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
    __________________
    Zitat Zitat von Friedrich Nietzsche
    Man muss noch Chaos in sich haben, um einen tanzenden Stern gebaeren zu koennen.

  8. #8
    angelikamorgan angelikamorgan ist offline Mitglied Silber
    Registriert seit
    Sep 2003
    Beiträge
    89
    Ich fasse zusammen.

    Es gilt die Faustregel:

    Ports bis 1023 MÜSSEN als Root gestartet werden:
    Ports ab 1024 KÖNNEN sowohl als Root als auch als User gestartet werden.

    Danke für die Erklärung !
    Angelika
     

Ähnliche Themen

  1. wann Config-Datei, wann Registry?
    Von XtremeCJ im Forum Coders Talk
    Antworten: 1
    Letzter Beitrag: 27.11.10, 12:16
  2. Wann sollte man DIV, wann TABLE einsetzen?
    Von trench140 im Forum HTML & XHTML
    Antworten: 5
    Letzter Beitrag: 18.08.08, 12:14
  3. Root Server startet nicht mehr
    Von kevkev im Forum Linux & Unix
    Antworten: 2
    Letzter Beitrag: 08.12.05, 14:32
  4. Antworten: 0
    Letzter Beitrag: 26.06.05, 15:01
  5. telnet root root jaja
    Von jccTeq im Forum Linux & Unix
    Antworten: 0
    Letzter Beitrag: 10.01.05, 12:40