Installations-Anleitung für hosts-deny
| 1. | Verzeichnis anlegen: |
Hosts-Deny läuft in einem beliebigen Verzeichnis. Wir gehen in dieser Beschreibung davon aus, daß Sie hosts-deny in /root/scripte/hosts-deny installieren. | |
| 2. | Entpacken Archiv-File / Einkopierung der hosts-deny - Programme: |
Sofern Ihnen der Befehl wget zur Verfügung steht, können Sie hosts-deny direkt laden via: wget hosts-deny.eu/files/hosts-deny_de_2.1.1.zip (ggf. andere Versions-Nummern verwenden) unzip hosts-deny_de_2.1.1.zip (ggf. andere Versions-Nummern verwenden) | |
| 3. | Legen Sie für hosts-deny eine separate Datenbank unter MySQL an |
| Sofern Sie phpMyAdmin verwenden, legen Sie eine Datenbank an, z.B. hostsdeny und einen User hostsdeny, der nur Zugriff auf die Datenbank hostsdeny erhält! ansonsten unter Linux ist dies auch möglich mit: mysql -u root -p Geben Sie Ihr MySQL-Root-Passwort ein Sie erhalten dann als Rückmeldung den MySQL-Prompt: mysql> Geben Sie nun folgende Befehle ein, wobei Sie bitte PASSWORT mit dem Ihrer Wahl ersetzen! (ACHTUNG: 2 mal das gleiche!) : CREATE DATABASE hostsdeny; CREATE USER 'hostsdeny'@'localhost' IDENTIFIED BY 'PASSWORT'; GRANT USAGE ON * . * TO 'hostsdeny'@'localhost' IDENTIFIED BY 'PASSWORT' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ; GRANT SELECT , INSERT , UPDATE , DELETE , CREATE , DROP , INDEX , ALTER , CREATE TEMPORARY TABLES , CREATE VIEW , SHOW VIEW , CREATE ROUTINE, ALTER ROUTINE, EXECUTE ON `hostsdeny` . * TO 'hostsdeny'@'localhost'; quit; | |
| 4. | Sicherung der bestehenden hosts.deny - Datei |
Wir empfehle Ihnen die gesonderte Sicherung der hosts.deny und hosts.allow Dateien. Diese finden Sie im Verzeichnis /etc. | |
| 5. | Erweitern der hosts.allow - Datei |
| Wir empfehlen Ihnen eine Erweiterung der hosts.allow - Datei. Diese finden Sie im Verzeichnis /etc. Sie sollten in dieser Datei für Ihre Administration eine Hintertür öffnen, die Ihnen erlaubt von Ihrem Computer generell auf Ihren Server zu zu greifen, selbst, wenn Sie sich aussperren würden! Alle IPs, die eigentlich über die hosts.deny blockiert werden, werden über die hosts.allow frei gegeben, sofern die Einträge richtig sind! Ermitteln Sie die IP, von der Sie generell auf den Server zugreifen, bei einer statischen IP, ist dies simpel, fügen Sie sofern keine Zeile mit ALL: beginnt, eine neue an, die wie folgt aussieht: (Sie können auch mehrere IPs getrennt jeweils mit einem Leerzeichen einfügen. Sollten Sie über dynamische IPs zugreifen, finden Sie hier weitere Hinweise ALL: IP1 IP2 IP3 | |
| 6. | Rechte setzen für folgende Dateien: |
| hosts-deny benötigt LESE-ZUGRIFF auf die alert.log-Datei von Snort. Diese wird gewöhnlicher weise unter /var/log/snort gespeichert. Ferner benötigt hosts-deny LESE-UND SCHREIBZUGRIFFE auf die Datei hosts.deny. Diese wird gewöhnlicher weise unter /etc gespeichert. Diese Rechte sind zu setzen, wenn Sie hosts-deny unter einem anderen User als root einrichten! | |
| 7. | Prüfen ob Ihre Nameserver-Einstellungen korrekt sind! |
Prüfen Sie mit | |
| 8. | Voreinstellungen für hosts-deny vornehmen: |
Sofern Sie das erste mal hosts-deny einspielen, wird noch keine hdeny.setting.php existieren, dafür aber eine hdeny.setting.new Benennen Sie die Datei um: mv hdeny.setting.new hdeny.setting.php Ansonsten prüfen Sie, ob in der hdeny.setting.php folgende Variablen vorhanden sind: _email='IhreMail@server.de' // neuer Parameter: tragen Sie Ihre Mail ein Ändern Sie die hdeny.setting.php Datei und passen Sie, sofern Pfad-Abweichungen vorliegen, diese entsprechend an. Passen Sie auch das Passwort für die hosts-deny-Datenbank an! (weitere Infos zu den Einstell-Parametern ) | |
| 9. | Rufen Sie das Install-Programm von hosts-deny auf. |
Das Programm kann beliebig oft aufgerufen werden und prüft die einzelnen Vorgaben, richtet die Datenbank ein, sofern nicht vorhanden, legt die Tabellen an und speichert die Lizenz-Informationen. Sofern irgend etwas noch falsch gesetzt ist, erhalten Sie eine Fehlermeldung und können dann das Problem beseitigen und das Programm erneut starten. Der Aufruf erfolgt mit: php install.php | |
| 10. | hosts-deny das erste mal starten |
Beim Start von hosts-deny, ruft hosts-deny zuerst die Log-Daten von der alert.log aus dem Verzeichnis /var/log/snort/alert.log ab und speichert alle alerts (Warnungen) in der hosts-deny-Datenbank, wertet diese in der Datenbank aus und bei zu vielen Alerts vom gleichen Angreifer oder einer Angreifer-Gruppe, wird ein Eintrag in der hosts.deny vorgenommen. Die Blockierungen werden jedoch auch nach Ablauf vordefinierter Zeiten wieder aufgehoben. Dieser Vorgang dauert in der Regel ein Bruchteil einer Sekunde und belastet das System nur sehr gering! Der Aufruf erfolgt mit: php hosts-deny.php Prüfen Sie als nächstes Ihre Datei hosts.deny, die Sie gewöhnlicherweise im Verzeichnis /etc finden, nach Einträgen. Selbst, wenn Sie in der alert.log - Datei, die von snort gefüllt worden ist, Einträge finden, so müssen diese nicht unbedingt zu Einträgen in der hosts.deny geführt haben! Lesen Sie später hierzu mehr! | |
| 1. | hosts-deny daß erste mal via Shell-Script starten |
Als nächstes muß geprüft werden, ob der Aufruf von hosts-deny auch mit dem shell-Script funktioniert. Sie sollten keine Fehlermeldung bei diesem Aufruf erhalten, ansonsten setzen Sie sich bitte mit unserem Support-Team über das Kontakt-Formular unter hosts-deny.eu in Verbindung! ACHTUNG: Es ist wichtig, daß hosts-deny über dieses Shell-Script aufgerufen wird, da über dieses Script geprüft wird, ob das Script noch aus einem vorherigen Aufruf läuft. Dadurch wird eine generell Überlastung des Servers, z.B. zuviele geöffnete Tabellen in MySql oder zuviele geöffnete Dateien verhindert! | |
| 12. | hosts-deny in Autostart und in den Ausführungsplan einbinden: |
Wenn alles obere sauber und korrekt durchgeführt worden ist, können Sie hosts-deny in die generelle Zeitsteuerung einbauen. Sollte Ihr Server extrem überlastet sein, evtl. durch Angriffe, so empfehlen wir ein Start alle 5 Minuten. Sofern Sie feststellen, daß die Resourcen sich minimieren, empfehlen wir einen Start alle 3 Minuten (am 2. Tag) und ab dem 3. Tag, sollten Sie hosts-deny alle 2 Minuten starten! hosts-deny selbst verbraucht extrem wenig Resourcen und durch das Shell-Script wird eine Mehrfach-Verarbeitung ausgeschlossen! |