tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
9
ZUGRIFFE
416
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    caramba12321 caramba12321 ist offline blödefragensteller
    Registriert seit
    Jan 2005
    Ort
    Flensburg
    Beiträge
    259
    Hallo,

    ich habe am Wochenende mal angefangen einen Debian Etch Server aufzusetztem. Hatte vorher keine Vorkenntnisse. Es ist auch alles ganz gut geglückt, apache2+php5.2.2+mysql5.1+ftppro
    läuft alles astrein und ich fange an Unix sehr gut zu verstehen und bin ziemlich begeistert davon. Aber nun zu meinem Problem.

    Ich habe 2 Gruppen: ftpuser und ftprootuser
    der einzige unterschied zwischen den beiden gruppen ist nicht relevant. Ich möchte nun das alle User beider Gruppen volle Rechte(schreib+lese) im Verzeichnis /var/www haben, denn wenn ich jetzt mit einem user aus einen der beiden Gruppen z.B. versuche ein Verzeichnis zu erstellen kommt "permission denied".

    Ich hab auch schonmal gegoogelt und was mit "stickbit"(ka was das ist) gefunden, hat mir aber nicht sehr geholfen da da nichts erklärt war und ich nicht einfach so crap aus dem inet ausprobieren wollte.

    Vielleicht könnt ihr mir ja helfen.

    Gruss
    Caramba
     

  2. #2
    andy72 andy72 ist offline Mitglied Platin
    Registriert seit
    Oct 2006
    Ort
    München
    Beiträge
    655
    Du kannst folgendes versuchen:

    1.) Du gibst dem Verzeichnis /var/www die Gruppenrechte einer der beiden Gruppen mit
    Code :
    1
    
    chown -R ftpuser /var/www
    was aber zur Folge hat, dass der Apache sich muckieren wird, weil die/das Verzeichnis nicht mehr dem WWW-Server gehört,sondern einem anderen User und folglich das Ausführen von Scripts verhindern wird.

    Lösung 1.)
    Du gibst dem User des WWW-Servers (wahrscheinlich ist das der User nobody, apache oder www einen FTP-Login auf das Verzeichnis

    oder

    Lösung 2.)
    Du machst ein chmod auf das Verzeichnis /var/www was allen Schreibrechte gibt
    Code :
    1
    
    chmod -R 777 /var/www
    Was aber SEHR gefährlich ist in Produktiv-Umgebungen !

    oder

    Lösung 3.)
    Du nimmst die User,die zu den Gruppen ftpuser/ftprootuser gehören in die Gruppe des WWW-Server-Users auf (wahrscheinlich nogroup,www oder apache) und bist damit auf der sicheren Seite

    Editiere dazu die /etc/groups und füge die User per Hand dazu, odermach das im Gnome/KDE in der entsprechenden Benutzerverwaltung.

    Die Gruppe und den User, unter der der WWW-Server ausgeführt wird, findest du in der httpd.conf, die default in /etc/httpd oder /etc/apache2 liegen muss.

    LG
    Andy
    Geändert von andy72 (22.05.07 um 19:56 Uhr)
     

  3. #3
    caramba12321 caramba12321 ist offline blödefragensteller
    Registriert seit
    Jan 2005
    Ort
    Flensburg
    Beiträge
    259
    Danke hab ich soweit alles verstanden und deine Lösung hat bestens geklappt(habe mich für die 3. Lösung entschieen).
     

  4. #4
    caramba12321 caramba12321 ist offline blödefragensteller
    Registriert seit
    Jan 2005
    Ort
    Flensburg
    Beiträge
    259
    Sorry hatte mich vertan es ging wiel ich noch chmod 777 auf /var/www hatte.

    Also ich hab nun in /etc/apache2/apache2.conf nach User und Group gesucht und da steht. user: www-data und user: www-data
    nun hab ich in etc/group bei der gruppe www.data alle user aus den beiden Gruppen(ftpuser und ftprootuser) eingetragen und dann noch per chmod 775 /var/www (damit die gruppe auch schreiben darf) die Rechte gesetzt. Wenn ich nun mit einem User aus der Gruppe www-data ein Verzeichnis im Verzechnis /var/www erstellen möchte kommt immer noch die Fehlermeldung :"permission denied".

    Oder hab ich was falsch verstanden?

    Gruss
    Caramba

    edit: laut ls- l /var/ ist www/ user:root und group: root (falls das relevant ist)
     

  5. #5
    andy72 andy72 ist offline Mitglied Platin
    Registriert seit
    Oct 2006
    Ort
    München
    Beiträge
    655
    Du hast das schon richtig verstanden - bleibt die Frage, was da quer schlägt. Hast Du den Indianer (Apache) nach dieser Änderung mal neu gestartet ? Sollte zwar keinen Effekt haben, aber ich bin mir nicht ganz sicher.

    Was /var besagt, ist irrelevant, da /home auch root gehört, und jeder User kann in einem $HOME-Unterveichnis machen, was er will *g*
     

  6. #6
    caramba12321 caramba12321 ist offline blödefragensteller
    Registriert seit
    Jan 2005
    Ort
    Flensburg
    Beiträge
    259
    Ja hab ich, keine Verbesserung.
    Habe alles nochmal nachgeguckt und es ist alles soweit richtig.

    Gäbe es sonst noch eine andere sichere Lösung?
    Bzw wie wird sonst sowas gelöst?
     

  7. #7
    caramba12321 caramba12321 ist offline blödefragensteller
    Registriert seit
    Jan 2005
    Ort
    Flensburg
    Beiträge
    259
    Ah moment ich hab vielleicht eine Idee.
    Kann es sein das der FTP nicht weiss zu welcher Gruppe ich gehöre, weil ich kein Shell des users anfordere?

    auschnitt aus der proftpd.conf
    Code :
    1
    2
    3
    4
    5
    6
    
     
    # Root-Login auf FTP Server verbieten und gültige Shell verlangen (in /etc/shell /wenn auf on
    <Global>
    RootLogin off
    RequireValidShell off
    </Global>




    edit: wenn ich das require auf on setzte kann ich mich mit keinem user mehr im ftp einloggen,
    fehlt wohl das shell, ich hab allerdings auch keine ahnung wie ich das erstelle.
    Geändert von caramba12321 (22.05.07 um 23:25 Uhr)
     

  8. #8
    caramba12321 caramba12321 ist offline blödefragensteller
    Registriert seit
    Jan 2005
    Ort
    Flensburg
    Beiträge
    259
    wenn ich proftpd neustarte kommt auch noch folgender fehler(vielleicht ist es ja relevant):

    Code :
    1
    2
    
    Stopping ftp server: proftpd.
    Starting ftp server: proftpd - IPv6 getaddrinfo 'h1304316.stratoserver.net' error: Name or service not known
     

  9. #9
    andy72 andy72 ist offline Mitglied Platin
    Registriert seit
    Oct 2006
    Ort
    München
    Beiträge
    655
    Zum 1. Problem:

    Die Option "RequireValidShell On" bezweckt, dass sich NUR User am FTP anmelden können, die als Benutzer fungieren und sich am System (Shell) anmelden dürfen.

    Steht diese Option auf "On", musst Du in /etc/passwd dafür sorgen, dass der/die FTP-User einen Shell-Account haben.

    zB:
    User1:x:"Testuser":/homt/User1:/bin/bash =>> Kann sich dann am FTP anmelden,
    wenn Option auf "On" ist.

    oder sys:::/dev/null:/bin/false ==>> Kann sich dann NICHT anmelden, weil der User kein Benutzer-Account ist, sondern ein System-Account ist.

    Änderst Du nun "/bin/false" auf "/bin/bash", gibst ihm ein Homeverzeichnis, dass real existieren MUSS um sich anmelden zu können und dann noch ein Passwort, so ist das danach ein Benutzer-Account wie jeder andere (macht aber keinen Sinn!) und auch er kann sich am FTP anmelden.

    Belasse aber die Option lieber auf "Off

    Zur Fehlermeldung:
    Diese Meldung taucht auf, wenn Dein System so eingerichtet ist, dass es im Netzwerk IPv4 nutzt und nicht IPv6 - ersteres ist weit verbreitet, IPv6 leider noch immer nicht so richtig,
    ProFTPd unterstützt das aber und wirft eben diesen Fehler raus, da er den Host nicht auflösen kann - scheinbar unterstützt Dein Kernel zwar IPv6, Dein DNS etc jedoch nicht. Kannst Diesen Fehler also beruhigt ignorieren, da IPv6 Untersützung im ProFTPd ein Fallback auf IPv4 hat

    Zum eigentlichen Problem:
    mach mal ein ls -l in /var um zu sehen, wie dort die Rechte sind. Normal muss dann /var/www auf dem user www-data zeigen und seine Gruppe. NICHT auf root - weder in der Gruppe, noch im User.

    //////////////////
    Edit:
    Schau malnach,wodie User Ihr Home-Verzeichnis haben, kann sein, dassProFTPd sokonfiguriert ist, dass er die User im Home einsperrt. Wenn Homenicht in /var/www ist, kann ProFTPd evtl. den Zugriff verweigern. Ich tippe aber auf meinen vorherigen Beitrag, dass einVerzeichnisrecht nicht passt
    Geändert von andy72 (23.05.07 um 00:36 Uhr) Grund: Edit hinzugefügt
     

  10. #10
    caramba12321 caramba12321 ist offline blödefragensteller
    Registriert seit
    Jan 2005
    Ort
    Flensburg
    Beiträge
    259
    ah richtig, besitzer war root, habs geändert und es funktioniert prächtig.
    Dankeschön
     

Ähnliche Themen

  1. Problem mit upload und Rechten
    Von kcyberbob im Forum PHP
    Antworten: 5
    Letzter Beitrag: 02.06.05, 13:29
  2. Problem mit zugriff und Rechten
    Von LightBear im Forum Relationale Datenbanksysteme
    Antworten: 1
    Letzter Beitrag: 06.09.04, 10:15
  3. Apache 2.0.50 /Unix: Problem bei make
    Von tefnut im Forum Hosting & Webserver
    Antworten: 0
    Letzter Beitrag: 17.08.04, 08:59
  4. Problem mit Perl unter UNIX
    Von SirNeo im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 2
    Letzter Beitrag: 14.02.02, 18:41