Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


lpi2:apache_zugriffskontrolle

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
Nächste Überarbeitung Beide Seiten, nächste Überarbeitung
lpi2:apache_zugriffskontrolle [2015/07/09 11:24]
ingo_wichmann [Auslagerung in .htaccess]
lpi2:apache_zugriffskontrolle [2016/12/08 12:15]
ingo_wichmann
Zeile 1: Zeile 1:
-====== ​Einfache ​Zugriffskontrolle ======+====== Zugriffskontrolle ======
 ===== Apache 2.4 ===== ===== Apache 2.4 =====
-==== RequireAny vsRequireAll ​==== +==== Auslagerung in .htaccess ​==== 
-=== RequireAny ===+Mit Hilfe von ''​AllowOverride''​ können Einstellungen ausgelagert werden: ​
  
 +''/​etc/​apache2/​conf-enabled/​intern.conf'':​ (Debian ab 8)
 +
 +''/​etc/​apache2/​conf.d/​intern.conf'':​ (SuSE)
 +
 +''/​etc/​httpd/​conf.d/​intern.conf'':​ (CentOS)
 <​file>​ <​file>​
 +Alias /intern /​srv/​www/​intern
 +
 <​Directory /​srv/​www/​intern>​ <​Directory /​srv/​www/​intern>​
-  ​Require ip 192.168.1 +  ​AllowOverride AuthConfig
-  Require all denied+
 </​Directory>​ </​Directory>​
 +</​file>​
 +
 +  mkdir -p /​srv/​www/​intern
 +
 +Ist jetzt der Zugriff auf Dateien im Verzeichnis ''/​srv/​www/​intern''​ erlaubt? ​
 +
 +==== .htaccess anlegen ====
 +
 +<file txt /​srv/​www/​intern/​.htaccess>​
 +Require all denied
 +</​file>​
 +
 +Ist der Zugriff auf Dateien im Verzeichnis ''/​srv/​www/​intern''​ erlaubt? ​
 +
 +==== RequireAny vs. RequireAll vs. RequireNone ====
 +=== RequireAny ===
 +
 +<file txt /​srv/​www/​intern/​.htaccess>​
 +Require ip 192.168.1
 +Require all denied
 </​file>​ </​file>​
  
 ist das selbe wie: ist das selbe wie:
-<file+<​file ​txt /​srv/​www/​intern/.htaccess
-<​Directory ​/​srv/​www/​intern>​ +<​RequireAny>​ 
-  <​RequireAny>​ +  Require ip 192.168.1 
-    Require ip 192.168.1 +  Require all denied 
-    Require all denied +</​RequireAny>​
-  </​RequireAny+
-</​Directory>+
 </​file>​ </​file>​
  
Zeile 24: Zeile 48:
  
 === RequireAll === === RequireAll ===
-<file+<​file ​txt /​srv/​www/​intern/.htaccess
-<​Directory ​/​srv/​www/​intern>​ +<​RequireAll>​ 
-  <​RequireAll>​ +  Require ip 192.168.1 
-    Require ip 192.168.1 +</​RequireAll>​
-  </​RequireAll+
-</​Directory>+
 </​file>​ </​file>​
  
Zeile 35: Zeile 57:
  
   * [[https://​httpd.apache.org/​docs/​2.4/​howto/​access.html|Apache Dokumentation zu Zugriffskontrolle]]   * [[https://​httpd.apache.org/​docs/​2.4/​howto/​access.html|Apache Dokumentation zu Zugriffskontrolle]]
 +
 +=== RequireNone ===
 +<file txt /​srv/​www/​intern/​.htaccess>​
 +<​RequireNone>​
 +  Require ip 192.168.1
 +</​RequireNone>​
 +</​file>​
 +
 +ErrorLog beachten!
  
 === Auswertungsreihenfolge der Sektionen === === Auswertungsreihenfolge der Sektionen ===
Zeile 49: Zeile 80:
  
   * [[https://​httpd.apache.org/​docs/​2.4/​sections.html#​merging|Apache Dokumentation zu Sektionen]]   * [[https://​httpd.apache.org/​docs/​2.4/​sections.html#​merging|Apache Dokumentation zu Sektionen]]
- 
-==== Auslagerung in .htaccess ==== 
- 
-In Kontextdirektiven lassen sich die Konfigurationswerte durch ''​AllowOverride''​ auslagern: 
- 
-<​file>​ 
-<​Directory /​srv/​www/​intern>​ 
-  Allowoverride AuthConfig 
-  Require all denied 
-</​Directory>​ 
-</​file>​ 
- 
-Die Datei ''/​srv/​www/​intern/​.htaccess''​ hat folgenden Inhalt: ​ 
- 
-<​file>​ 
-Require all granted 
-</​file>​ 
  
 ==== Benutzerauthentifizierung ==== ==== Benutzerauthentifizierung ====
 Einfache Benutzeridentifikation mittels Passwortdatei Einfache Benutzeridentifikation mittels Passwortdatei
  
-==== Anlegen der Passwortdatei ​====+=== Anlegen der Passwortdatei ===
 openSuSE (12.3): openSuSE (12.3):
-  htpasswd2 -c .htpasswd heinz+  htpasswd2 -c /srv/www/.htpasswd heinz
 debian (6): debian (6):
-  htpasswd -c .htpasswd heinz+  htpasswd -c /srv/www/.htpasswd heinz
  
-Achtung ​Erweiterung der Datei mittels+Achtung: Die Datei ''/​srv/​www/​.htpasswd''​ wird dabei überschrieben!
  
 +=== weitere Benutzer anlegen ===
 openSuSE (12.3): openSuSE (12.3):
   htpasswd2 ​ .htpasswd elke   htpasswd2 ​ .htpasswd elke
Zeile 83: Zeile 98:
   htpasswd ​ .htpasswd elke   htpasswd ​ .htpasswd elke
  
-In der Kontextdirektive oder im ''​.htaccess''​ folgende Optionen setzen+=== Konfiguration === 
 +In der Kontextdirektive oder in der ''​.htaccess''​ folgende Optionen setzen
  
-Beispieldatei ''​.htaccess'' ​ 
 <​file>​ <​file>​
 AuthType ​       Basic AuthType ​       Basic
 AuthName ​       "Bitte Username und Passwort"​ AuthName ​       "Bitte Username und Passwort"​
 AuthBasicProvider file AuthBasicProvider file
-AuthUserFile ​   /​srv/​www/​wiki/​.htpasswd+AuthUserFile ​   /srv/www/intern/​wiki/​.htpasswd
 Require ​        ​valid-user Require ​        ​valid-user
 </​file>​ </​file>​
  
 ==== Nutzung einer Gruppendatei ==== ==== Nutzung einer Gruppendatei ====
 +Modul laden:
 +  a2enmod authz_groupfile
 +  service apache2 restart
  
-Aufbau der Gruppendatei ​ ''/​srv/​www/wiki/​.htgroup''​+Aufbau der Gruppendatei ​ ''/​srv/​www/​.htgroup''​
  
 <​file>​ <​file>​
Zeile 109: Zeile 127:
 AuthName ​       "Bitte Username und Passwort"​ AuthName ​       "Bitte Username und Passwort"​
 AuthBasicProvider file AuthBasicProvider file
-AuthUserFile ​   /srv/www/wiki/​.htpasswd +AuthUserFile ​   /​srv/​www/​.htpasswd 
-AuthGroupFile ​  /​srv/​www/wiki/.htgroup+AuthGroupFile ​  /​srv/​www/​.htgroup
 Require ​        group gf Require ​        group gf
 </​file>​ </​file>​
lpi2/apache_zugriffskontrolle.txt · Zuletzt geändert: 2022/03/31 13:51 von ingo_wichmann