Apache2 Workshop Zugriff per IPs einschränken

Aus Xinux Wiki
Version vom 15. März 2025, 09:52 Uhr von Thomas.will (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Zweck

  • Apache bietet verschiedene Methoden, um den Zugriff auf bestimmte IP-Adressen zu beschränken.
  • Dies kann global, pro VirtualHost oder über .htaccess erfolgen.
  • Zugriffsbeschränkungen können zur Absicherung von sensiblen Bereichen genutzt werden.

Zugriff auf eine bestimmte IP-Adresse beschränken

  • Beispiel für eine VirtualHost-Konfiguration mit IP-Whitelist:
<VirtualHost *:80>
    ServerName restricted.example.com
    DocumentRoot /var/www/restricted

    <Directory /var/www/restricted>
        Require ip 192.168.1.100
    </Directory>
</VirtualHost>
  • Diese Konfiguration erlaubt nur der IP 192.168.1.100 den Zugriff.

Zugriff für ein Subnetz erlauben

  • Mehrere IPs oder ganze Netzbereiche können erlaubt werden:
<Directory /var/www/restricted>
    Require ip 192.168.1.0/24
</Directory>
  • Nur Clients aus dem Netz 192.168.1.0/24 dürfen zugreifen.

Zugriff für bestimmte IPs verweigern

  • Um eine spezifische IP zu blockieren:
<Directory /var/www/restricted>
    Require all granted
    Require not ip 203.0.113.5
</Directory>
  • Diese Regel blockiert die IP 203.0.113.5.

Zugriff über .htaccess einschränken

  • Falls kein Zugriff auf die VirtualHost-Konfiguration besteht, kann .htaccess verwendet werden:
Require ip 192.168.1.100 10.0.0.0/24
Require not ip 203.0.113.5
  • Diese Datei muss im geschützten Verzeichnis liegen und AllowOverride AuthConfig muss in der Apache-Konfiguration aktiviert sein.

Zugriff nur für interne Netzwerke erlauben

  • Eine typische Regel für den internen Zugriff:
<Directory /var/www/internal>
    Require host *.example.local
</Directory>
  • Nur Geräte mit einer Hostadresse aus example.local dürfen zugreifen.

Aufgaben

  • Beschränke den Zugriff auf ein bestimmtes Subnetz.
  • Blockiere eine bestimmte externe IP-Adresse.
  • Erlaube nur internen Clients den Zugriff auf eine bestimmte Ressource.

Warum ist die IP-Beschränkung wichtig?

  • Verhindert unbefugten Zugriff auf sensible Bereiche.
  • Schutz gegen unautorisierte externe Anfragen.
  • Möglichkeit, interne Ressourcen nur für vertrauenswürdige Netzwerke freizugeben.