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
lpi2:apache_zugriffskontrolle [2016/12/08 11:14]
ingo_wichmann [Auslagerung in .htaccess]
lpi2:apache_zugriffskontrolle [2021/08/16 03:20] (aktuell)
Zeile 2: Zeile 2:
 ===== Apache 2.4 ===== ===== Apache 2.4 =====
 ==== Auslagerung in .htaccess ==== ==== Auslagerung in .htaccess ====
-Bei openSuSE (42.1) bitte ''/​srv/​www/​htdocs''​ an Stelle von ''/​srv/​www/​intern''​ verwenden. Bei CentOS bitte ''/​var/​www/​intern''​ verwenden. ​ 
- 
 Mit Hilfe von ''​AllowOverride''​ können Einstellungen ausgelagert werden: ​ 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>​
 +LogLevel warn authz_core:​debug
 Alias /intern /​srv/​www/​intern Alias /intern /​srv/​www/​intern
  
 <​Directory /​srv/​www/​intern>​ <​Directory /​srv/​www/​intern>​
   AllowOverride AuthConfig   AllowOverride AuthConfig
-  Require all denied 
 </​Directory>​ </​Directory>​
 </​file>​ </​file>​
 +
 +  mkdir -p /​srv/​www/​intern
 +
 +  apachectl configtest
 +  apachectl graceful
  
 Ist jetzt der Zugriff auf Dateien im Verzeichnis ''/​srv/​www/​intern''​ erlaubt? ​ Ist jetzt der Zugriff auf Dateien im Verzeichnis ''/​srv/​www/​intern''​ erlaubt? ​
  
-Die Datei ''/​srv/​www/​intern/​.htaccess''​ hat folgenden Inhalt: ​+==== .htaccess ​anlegen ====
  
-<​file>​ +<​file ​txt /​srv/​www/​intern/​.htaccess
-Require all granted+Require all denied
 </​file>​ </​file>​
  
Zeile 28: Zeile 36:
 === RequireAny === === RequireAny ===
  
-<​file>​+<​file ​txt /​srv/​www/​intern/​.htaccess>
 Require ip 192.168.1 Require ip 192.168.1
 Require all denied Require all denied
Zeile 34: Zeile 42:
  
 ist das selbe wie: ist das selbe wie:
-<​file>​+<​file ​txt /​srv/​www/​intern/​.htaccess>
 <​RequireAny>​ <​RequireAny>​
   Require ip 192.168.1   Require ip 192.168.1
Zeile 44: Zeile 52:
  
 === RequireAll === === RequireAll ===
-<​file>​+<​file ​txt /​srv/​www/​intern/​.htaccess>
 <​RequireAll>​ <​RequireAll>​
   Require ip 192.168.1   Require ip 192.168.1
Zeile 55: Zeile 63:
  
 === RequireNone === === RequireNone ===
-<​file>​+<​file ​txt /​srv/​www/​intern/​.htaccess>
 <​RequireNone>​ <​RequireNone>​
   Require ip 192.168.1   Require ip 192.168.1
 </​RequireNone>​ </​RequireNone>​
 +</​file>​
 +
 +ErrorLog beachten!
 +
 +=== Verschachtelte Blöcke aus All, Any und None ===
 +RequireNone = Verneinung dessen was innerhalb des Blocks steht - "darf nicht erfüllt sein"
 +<file txt /​srv/​www/​intern/​.htaccess>​
 +<​RequireAll>​
 +  <​RequireAny>​
 +    Require ip 192.168.1
 +    Require ip 10.0.0.0/24
 +  </​RequireAny>​
 +  <​RequireNone>​
 +    Require ip 192.168.1.208
 +  </​RequireNone>​
 +</​RequireAll>​
 </​file>​ </​file>​
  
Zeile 123: Zeile 147:
 AuthUserFile ​   /​srv/​www/​.htpasswd AuthUserFile ​   /​srv/​www/​.htpasswd
 AuthGroupFile ​  /​srv/​www/​.htgroup AuthGroupFile ​  /​srv/​www/​.htgroup
-Require ​        group gf 
-</​file>​ 
- 
-===== Apache 2.2 ===== 
-==== Zugriffsteuerung per IP/​Hostname ​ ==== 
- 
-In Apache kann mittels ​ 
- 
-Fall 1: 
-<​file>​ 
-order deny,allow 
-</​file>​ 
- 
-Per Directory / Location / File  
- 
-<​file>​ 
-<​Directory /​srv/​www/​intern>​ 
-  order deny,allow 
-  deny from All 
-  allow from 10.0.0.0/​24 ​ .linuxhotel.de 127.0.0.1 
-</​Directory>​ 
-</​file>​ 
- 
-Erst werden die deny-Regeln ausgewertet,​ danach die allow-Regeln,​ falls keine Regel greift gilt allow 
- 
- 
-Fall 2: 
-<​file>​ 
-order allow,deny 
-</​file>​ 
- 
-<​file>​ 
-<​Directory /​srv/​www/​intern>​ 
-  order allow,deny 
-  allow from 10.0.0.0/​24 ​ .linuxhotel.de 127.0.0.1 
-</​Directory>​ 
-</​file>​ 
- 
-Erst werden die allow-Regeln ausgewertet,​ danach die deny-Regeln,​ falls keine Regel greift gilt deny 
- 
-==== Eigene Projekte / Configdateien ==== 
- 
-openSuSE: 
- 
-Am besten die eigenen Konfigurationen in folgendem Pfad ablegen mit der Endung .conf 
- 
-''/​etc/​apache2/​conf.d/​wiki.conf''​ 
- 
-==== Auslagerung in .htaccess ==== 
- 
-In Kontextdirektiven lassen sich die Konfigurationswerte durch allowoverride auslagern. 
- 
-z.B.: ''/​etc/​apache2/​conf.d/​wiki.conf''​ 
- 
-<​file>​ 
-<​Directory /​srv/​www/​wiki>​ 
- 
-   ​Allowoverride All 
-#  Allowoverride Auth 
- 
-</​Directory>​ 
-</​file>​ 
- 
-Die Datei ''/​srv/​www/​wiki/​.htaccess''​ hat folgenden Inhalt: 
- 
-<​file>​ 
-order allow,deny 
-allow from 192.168. 127. 
-</​file>​ 
- 
-==== Benutzerauthentifizierung ==== 
-Einfache Benutzeridentifikation mittels Passwortdatei 
- 
-==== Anlegen der Passwortdatei ==== 
-openSuSE (12.3): 
-  htpasswd2 -c .htpasswd heinz 
-debian (6): 
-  htpasswd -c .htpasswd heinz 
- 
-Achtung Erweiterung der Datei mittels 
- 
-openSuSE (12.3): 
-  htpasswd2 ​ .htpasswd elke 
-debian (6): 
-  htpasswd ​ .htpasswd elke 
- 
-In der Kontextdirektive oder im ''​.htaccess''​ folgende Optionen setzen 
- 
-Beispieldatei ''​.htaccess'' ​ 
-<​file>​ 
-AuthType ​       Basic 
-AuthName ​       "Bitte Username und Passwort"​ 
-AuthBasicProvider file 
-AuthUserFile ​   /​srv/​www/​wiki/​.htpasswd 
-Require ​        ​valid-user 
-</​file>​ 
- 
-==== Nutzung einer Gruppendatei ==== 
- 
-Aufbau der Gruppendatei ​ ''/​srv/​www/​wiki/​.htgroup''​ 
- 
-<​file>​ 
-gf:  peter heinz gerd 
-sekretariat:​ elke heinz 
-</​file>​ 
- 
-Änderung in der ''​.htaccess''​ 
- 
-<​file>​ 
-AuthType ​       Basic 
-AuthName ​       "Bitte Username und Passwort"​ 
-AuthBasicProvider file 
-AuthUserFile ​   /​srv/​www/​wiki/​.htpasswd 
-AuthGroupFile ​  /​srv/​www/​wiki/​.htgroup 
 Require ​        group gf Require ​        group gf
 </​file>​ </​file>​
  
lpi2/apache_zugriffskontrolle.1481195688.txt.gz · Zuletzt geändert: 2016/12/08 11:14 von ingo_wichmann