palrock
Goto Top

Benutzerrechte im WebDav ordnungsgemäß einstellen

Hallo an Alle,

wie ich in meiner anderen Frage schon bemerkt habe, ich bin relativ neu im Admin-Breich, also verzeiht mir bitte doofe Fragen. Und ja, ich habe auch schon die Suchfunktion benutzt, aber nicht so Recht was passendes gefunden.

Ich habe also nun WebDav eingerichtet, auch mit SSL, hat alles super geklappt.
Ich habe dazu nun 2-3 Fragen, um mich abzusichern:

Ich möchte für jeden Benutzer ein Unterverzeichnis im übergeordneten WebDav einrichten. Dann soll jeder Benutzer sich nur in seinem Verzeichnis aufhalten dürfen, nicht im übergeordneten Verzeichnis, oder im Verzeichnis der Anderen.

In seinem Verzeichnis soll er aber alles machen dürfen. Dazu habe ich bisher 2 Benutzer, einen für mich, der überall hin soll und ein Benutzer für einen Kunden "dav-user1". dav-user1 soll in Verzeichnis1 eingesperrt werden, aber dort alles machen dürfen.
Meine Einstellung bisher:
NameVirtualHost *
<VirtualHost *>
        ServerAdmin webmaster@localhost

        Alias /webdav /pfad/zum/webdav/

        DocumentRoot /pfad/zum/webdav/
        <Directory /pfad/zum/webdav/>
                ForceType text/plain
                Options Indexes MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        <Location /webdav>
           DAV On
           AuthType Basic
           AuthName "webdav"
           AuthUserFile /etc/apache2/htpasswd
           Require valid-user
       </Location>
</VirtualHost>

NameVirtualHost *
<VirtualHost *>
        ServerAdmin webmaster@localhost

        Alias /verzeichnis1 /pfad/zum/webdav/verzeichnis1/

        DocumentRoot /pfad/zum/webdav/verzeichnis1/
        <Directory /pfad/zum/webdav/verzeichnis1/>
                ForceType text/plain
                Options Indexes MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        <Location /verzeichnis1>
           DAV On
           AuthType Basic
           AuthName "webdav"
           AuthUserFile /etc/apache2/htpasswd
           <LimitExcept OPTIONS>
                Require user dav-user1
           </LimitExcept>
       </Location>
</VirtualHost>

Seit dem ich den 2. VirtualHost eingerichtet habe, bekomme ich bei Neustart des Apache2 diese Warnung:
Warnung : [Wed Dec 05 14:25:43 2012] [warn] NameVirtualHost *:0 has no VirtualHosts

Müssen da überhaupt 2 VirtualHosts sein ?
Falls doch, müssen die seperate Namen haben ?
Oder kann ich mehrere "Alias" (mit ihren entsprechenden Eigenschaften) in einen Vhost stecken?
Oder verstehe ich da was falsch ?

Das funktioniert bisher super, aber die Warnung gefällt mir nicht.

Könnte dav-user1 auch mit seinem Login auf das übergeordnete webdav zugreifen, wenn er "https://server.de/verzeichnis1/" ohne das "verzeichnis1" aufruft ?

ForceType text/plain
Sorgt doch dafür, dass die Dateien geöffnet und nicht ausgeführt ?

Ich möchte nichts falsch machen und möchte auch korrekte Rechte einrichten !
Das war's erst einmal. Vielen Dank schon mal !!

Content-ID: 195410

Url: https://administrator.de/contentid/195410

Ausgedruckt am: 16.11.2024 um 13:11 Uhr

Hitman4021
Hitman4021 05.12.2012 aktualisiert um 15:27:30 Uhr
Goto Top
Hallo,

Als erstes Schreib hier mal deine IP und den Port in den VHost gehört auch ein Servername. Und "NameVirtualHost" darf nur einmal vorkommen.
Administrator/Bafabu49

NameVirtualHost IP:PORT
<VirtualHost *> 
        ServerAdmin webmaster@localhost 
        ServerName FQDN
        Alias /webdav /pfad/zum/webdav/ 
        DocumentRoot /pfad/zum/webdav/ 
        <Directory /pfad/zum/webdav/> 
                ForceType text/plain 
                Options Indexes MultiViews 
                AllowOverride None 
                Order allow,deny 
                allow from all 
        </Directory> 
        <Location /> 
           DAV On 
           AuthType Basic 
           AuthName "webdav"   
           AuthUserFile /etc/apache2/htpasswd_admin 
           <LimitExcept OPTIONS> 
                Require user dein_user 
           </LimitExcept> 
       </Location> 
	   
	    Alias /verzeichnis1 /pfad/zum/webdav/verzeichnis1/ 
		<Directory /pfad/zum/webdav/verzeichnis1/> 
                ForceType text/plain 
                Options Indexes MultiViews 
                AllowOverride None 
                Order allow,deny 
                allow from all 
        </Directory> 
		<Location /verzeichnis1> 
           DAV On 
           AuthType Basic 
           AuthName "webdav"   
           AuthUserFile /etc/apache2/htpasswd 
           <LimitExcept OPTIONS> 
                Require user dav-user1 
           </LimitExcept> 
       </Location> 
</VirtualHost> 
Wenn du das anpasst dürfte es funktionieren.

Könnte dav-user1 auch mit seinem Login auf das übergeordnete webdav zugreifen, wenn er "https://server.de/verzeichnis1/" ohne das "verzeichnis1" aufruft ?
Wie wre es mit versuchen?
Aber da ich heute so gut drauf bin. Ja könnte er. Sein User ist auch ein "valid-user" in dein Htpasswd. Bei meiner Config kann er das nicht.

Müssen da überhaupt 2 VirtualHosts sein ?
Falls doch, müssen die seperate Namen haben ?
Oder kann ich mehrere "Alias" (mit ihren entsprechenden Eigenschaften) in einen Vhost stecken?
Oder verstehe ich da was falsch ?
Siehe config oben
Gruß
PalRock
PalRock 05.12.2012 aktualisiert um 15:53:35 Uhr
Goto Top
Jetzt komme ich nicht mehr drauf, außerdem kommt diese Warnung:
[Wed Dec 05 15:43:25 2012] [warn] NameVirtualHost IP:PORT has no VirtualHosts

Ohne IP und Port gehts, dann auch ohne Warnung...
Hitman4021
Hitman4021 05.12.2012 um 15:54:12 Uhr
Goto Top
Hallo,

IP und Port hast du getauscht in deine Angaben?
Die Listening Direktiven sind auch gesetzt?
Hier noch ein Fehler von mir
<VirtualHost *>
sollte auch
<VirtualHost IP:PORT>
sein.

Was sagt dein ErrorLog beim Neustart?

Gruß
PalRock
PalRock 06.12.2012 aktualisiert um 10:09:21 Uhr
Goto Top
Hallo,

läuft jetzt alles mit den Angaben.
Es ist nur erstaunlich zu sehen, dass man die Verbindung zum WebDav unter XP ein wenig anders macht, als bei Win7 und SBS_11...

Eins ist nur merkwürdig:
Wenn ich von WinXP auf eine Text-Datei zugreife, will er sie mir im Browser öffnen, und Win7 läuft alles wie erwartet.
Ich dachte das verhindert die Zeile: "ForceType text/plain"

Außerdem muss ich nur noch das Robocopy-Script zum laufen bekommen, aber das ist hier wohl der falsche Bereich face-wink
Oder könnt Ihr mir da auch helfen, oder soll ich dafür eine neue frage starten ??
Hitman4021
Hitman4021 06.12.2012 um 11:40:28 Uhr
Goto Top
Hallo,

Zitat von @PalRock:
Eins ist nur merkwürdig:
Wenn ich von WinXP auf eine Text-Datei zugreife, will er sie mir im Browser öffnen, und Win7 läuft alles wie erwartet.
Ich dachte das verhindert die Zeile: "ForceType text/plain"
Wie der Rechner etwas öffnet hängt von der Dateiendung, Dem Dateiheader und deinem eingestellten Standardprogramm ab.
Außerdem habe ich keine Ahnung wie du dich verbunden hast.

Außerdem muss ich nur noch das Robocopy-Script zum laufen bekommen, aber das ist hier wohl der falsche Bereich face-wink
Oder könnt Ihr mir da auch helfen, oder soll ich dafür eine neue frage starten ??
Die hast du doch schon gestellt.
Backup von SBS2011 zum Webserver (Debian) mit Robocopy
Und meine Meinung zu dem ganzen habe ich dir ja auch schon gesagt.
Vorallem wenn anscheinend User auch darauf arbeiten sollen.

Gruß
PalRock
PalRock 06.12.2012 aktualisiert um 12:03:06 Uhr
Goto Top
Hallo Hitman,

bisher sollen keine User da drauf arbeiten. Eigentlich soll das nur für das Backup sein.
Ich kann über den Windows-Explorer problemlos auf die Dateien zugreifen, kopieren, erstellen etc.
klappt alles nur weiter geht's dann nicht face-wink
Ich habe das WebDav-Verzeichnis des dav-user1 als Netzwerklaufwerk verbunden.

Zur Anmerkung: Ich habe für die https-Verbindung ein eigenes SSL-Zertifikat erstellt, weil auf dem Server noch keins war.

Schöne Grüße
Hitman4021
Hitman4021 06.12.2012 um 12:04:19 Uhr
Goto Top
Hallo,

dann geh mal in deinem anderen Beitrag.
Und poste bitte dein robocopy batch.
Intressant wäre auch ob das Laufwerk verbunden ist wenn du darauf zugreifen willst.

Gruß
16568
16568 06.12.2012 um 12:24:51 Uhr
Goto Top
@Hitman4021: tu mir doch den Gefallen, und schreib hier keinen Blödsinn rein, wenn Du GAR KEINE Ahnung von Apache und WebDAV hast.

Linux ist da ein klein wenig anders als Windows, okay?


Lonesome Walker
Hitman4021
Hitman4021 06.12.2012 aktualisiert um 12:42:54 Uhr
Goto Top
@lonesome Walker
Und wo genau habe ich Blödsinn geschrieben?
Das ich von WebDAV keine Ahnung habe stimmt, aber wie man einen Apache einrichtet weiß ich.

Gruß
PalRock
PalRock 06.12.2012 um 13:07:27 Uhr
Goto Top
OK... Dann ab jetzt wieder im Anderen Beitrag weiter...
16568
16568 06.12.2012 aktualisiert um 13:32:08 Uhr
Goto Top
Zitat von @Hitman4021:
Und wo genau habe ich Blödsinn geschrieben?
Das ich von WebDAV keine Ahnung habe stimmt, aber wie man einen Apache einrichtet weiß ich.

Zitat von @Hitman4021:
Als erstes Schreib hier mal deine IP und den Port in den VHost

Es wird keine IP benötigt...
Wie/wo/was/warum jetzt im Detail erspare ich Dir, aber auf apache.org oder mit man apache2 wirst Du mehr finden face-wink


@PalRock:
im anderen Thread bitte robocopy-Batch, weil Windows, und hier bitte mal Deine GESAMTE Apache-Config!
Du hast sicherlich SSL vergessen, welches aber, um Probleme bei Windows zu vermeiden, grundsätzlich aktiv sein sollte, und zum anderen, die WebDAV-Freigabe sollte ein Wurzelverzeichnis der Domain sein, sprich:

https://www.example.com/
oder
https://webdav.example.com/
oder
https://irgendeinesubdomain.example.com/

Wenn Du:
https://www.example.com/irgendeinunterpfad/
verwendest, wirst Du über kurz oder lang mit sehr vielen Problemen zu kämpfen haben.

Zum Thema User/Gruppen ist ein Besuch hier und hier vielleicht ein grundlegendes Informationskapitel; dort findest Du alle weiteren Schlagworte zum selber-weiter-forschen face-wink


Lonesome Walker
PalRock
PalRock 06.12.2012 um 13:42:18 Uhr
Goto Top
Das "Wurzel-Webdav" ist in der Wurzel-Domain (hoffe ich drücke mich verständlich aus).
https://server.de/
SSl ist aktiv, erst mal mit einem selbst erstellten Zertifikat, da auf dem Server keins war.

https://server.de/Verzeichnis1 soll dann für dav-user1 sein
https://server.de/Verzeichnis2 soll dann für dav-user2 sein

Oder verwechsle ich nun etwas ?

Bisher klappt aber nun alles.
Hitman4021
Hitman4021 06.12.2012 um 15:26:07 Uhr
Goto Top
Hallo,

Zitat von @16568:
Es wird keine IP benötigt...
Wie/wo/was/warum jetzt im Detail erspare ich Dir, aber auf apache.org oder mit man apache2 wirst Du mehr finden face-wink
Das es nicht benötigt wird ist mir klar. Aber ich finde eine Konfiguration so um einiges sauberer.
Außerdem hat es mit dem Stern den Nachteil das Apache auf alle IP-Adressen die ihm zugewiesen sind lauscht.
So aber nur auf der die ich will.
Aber über das kann man diskutieren.
Auf jeden Fall habe ich nicht gesagt das es so sein MUSS.

@PalRock
Lonesome Walker hat gemeint das für jedes Verzeichnis ein eigene SubDomain zur Verfügung gestellt wird, soweit ich das verstanden habe.

Gruß