Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| apache:htaccess [2015/02/14 17:07] – [.htpasswd] st | apache:htaccess [2018/11/23 09:22] (aktuell) – [.htpasswd] st | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Zugriffsschutz mit Apache (.htaccess) ====== | ||
| + | [[wpde> | ||
| + | :!: Die Konfiguration durch .htaccess-Datei muss in der Apache-Konfiguration aktiviert sein (standardmäßig ist " | ||
| + | |||
| + | < | ||
| + | < | ||
| + | AllowOverride AuthConfig | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | |||
| + | * [[http:// | ||
| + | * [[http:// | ||
| + | |||
| + | |||
| + | ===== Beispiel ===== | ||
| + | ==== .htaccess ==== | ||
| + | |||
| + | |||
| + | * Diese **Datei in den zu schützenden Ordner** legen!< | ||
| + | # .htaccess-Datei für ein Web-Verzeichnis | ||
| + | |||
| + | AuthType Basic | ||
| + | AuthName " | ||
| + | AuthUserFile .htpasswd | ||
| + | Require user NAME | ||
| + | </ | ||
| + | * oder **zentral in der Apache-Konfiguration** innerhalb eines virtuelles Host (statt "/" | ||
| + | < | ||
| + | AuthType Basic | ||
| + | AuthName " | ||
| + | AuthUserFile / | ||
| + | Require valid-user | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ==== .htpasswd ==== | ||
| + | Passwörter verschlüsselt mit Bcrypt ablegen: | ||
| + | |||
| + | **Datei anlegen mit erstem Benutzer** " | ||
| + | htpasswd -c -B / | ||
| + | |||
| + | < | ||
| + | # Die Datei würde so aussehen, bei Passwort 123: | ||
| + | BENUTZERNAME: | ||
| + | </ | ||
| + | |||
| + | Anschließend **weitere Benutzer hinzufügen**: | ||
| + | htpasswd -s / | ||
| + | ===== Authentifizierung gegen mysql ===== | ||
| + | |||
| + | FIXME md5-hashes sind nicht sicher, es sollte eine alternative benutzt werden! | ||
| + | |||
| + | apt-get install libapache-mod-auth-mysql | ||
| + | |||
| + | < | ||
| + | AuthName "Bitte Benutzername und Passwort eingeben" | ||
| + | AuthMySQL On | ||
| + | AuthMySQL_Host localhost | ||
| + | AuthMySQL_User DB_BENUTZERNAME | ||
| + | AuthMySQL_Password DB_PASSWORT | ||
| + | AuthMySQL_DB DATENBAK | ||
| + | AuthMySQL_Password_Table TABELLE_MIT_USERN | ||
| + | AuthMySQL_Username_Field FELD_MIT_BENUTZERNAMEN | ||
| + | AuthMySQL_Password_Field FELD_MIT_PASSWOERTERN | ||
| + | AuthMySQL_Encryption_Types Plaintext | ||
| + | AuthMySQL_Encrypted_Passwords Off | ||
| + | AuthType Basic | ||
| + | require valid-user | ||
| + | </ | ||
| + | Besser wäre es allerdings nur die md5-Hashes abzuspeichern: | ||
| + | < | ||
| + | AuthMySQL_Encryption_Types PHP_MD5 | ||
| + | AuthMySQL_Encrypted_Passwords On | ||
| + | </ | ||
| + | |||
| + | - Passwort-Feld vom Typ varchar(32) | ||
| + | - Neue Benutzer so in die Datenbank eintragen: | ||
| + | <code mysql> | ||
| + | Insert into TABELLE_MIT_USERN (FELD_MIT_BENUTZERNAMEN, | ||
| + | </ | ||