Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
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 12:26] ingo_wichmann |
lpi2:apache_zugriffskontrolle [2016/12/01 13:13] 127.0.0.1 Externe Bearbeitung |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Einfache Zugriffskontrolle ====== | + | ====== Zugriffskontrolle ====== |
===== Apache 2.4 ===== | ===== Apache 2.4 ===== | ||
- | ==== RequireAny vs. RequireAll ==== | + | ==== Auslagerung in .htaccess ==== |
- | === RequireAny === | + | 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: | ||
<file> | <file> | ||
+ | Alias /intern /var/www/intern | ||
+ | |||
<Directory /srv/www/intern> | <Directory /srv/www/intern> | ||
- | Require ip 192.168.1 | + | AllowOverride AuthConfig |
Require all denied | Require all denied | ||
</Directory> | </Directory> | ||
+ | </file> | ||
+ | |||
+ | Ist jetzt der Zugriff auf Dateien im Verzeichnis ''/srv/www/intern'' erlaubt? | ||
+ | |||
+ | Die Datei ''/srv/www/intern/.htaccess'' hat folgenden Inhalt: | ||
+ | |||
+ | <file> | ||
+ | Require all granted | ||
+ | </file> | ||
+ | |||
+ | Ist der Zugriff auf Dateien im Verzeichnis ''/srv/www/intern'' erlaubt? | ||
+ | |||
+ | ==== RequireAny vs. RequireAll vs. RequireNone ==== | ||
+ | === RequireAny === | ||
+ | |||
+ | <file> | ||
+ | Require ip 192.168.1 | ||
+ | Require all denied | ||
</file> | </file> | ||
ist das selbe wie: | ist das selbe wie: | ||
<file> | <file> | ||
- | <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 25: | Zeile 45: | ||
=== RequireAll === | === RequireAll === | ||
<file> | <file> | ||
- | <Directory /srv/www/intern> | + | <RequireAll> |
- | <RequireAll> | + | Require ip 192.168.1 |
- | Require ip 192.168.1 | + | </RequireAll> |
- | </RequireAll> | + | |
- | </Directory> | + | |
</file> | </file> | ||
Zeile 35: | Zeile 53: | ||
* [[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> | ||
+ | <RequireNone> | ||
+ | Require ip 192.168.1 | ||
+ | </RequireNone> | ||
+ | </file> | ||
=== Auswertungsreihenfolge der Sektionen === | === Auswertungsreihenfolge der Sektionen === | ||
Zeile 49: | Zeile 74: | ||
* [[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 ==== | ||
- | Mit Hilfe von ''AllowOverride'' können Einstellungen ausgelagert werden: | ||
- | |||
- | <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> | ||
- | |||
- | Ist der Zugriff auf Dateien im Verzeichnis ''/srv/www/intern'' erlaubt? | ||
==== Benutzerauthentifizierung ==== | ==== Benutzerauthentifizierung ==== | ||
Zeile 97: | Zeile 104: | ||
==== Nutzung einer Gruppendatei ==== | ==== Nutzung einer Gruppendatei ==== | ||
- | Aufbau der Gruppendatei ''/srv/www/wiki/.htgroup'' | + | Modul laden: |
+ | a2enmod authz_groupfile | ||
+ | service apache2 restart | ||
+ | |||
+ | Aufbau der Gruppendatei ''/srv/www/.htgroup'' | ||
<file> | <file> | ||
Zeile 110: | Zeile 121: | ||
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> |