Hallo,
ich habe mir kürzlich einen VServer gemietet und möchte diesen nun ausreichend gegen unberechtigte Zugriffe absichern. Da ich in dieser Hinsicht noch Anfänger bin, hoffe ich, dass Ihr mir dabei weiterhelfen könnt. Ich beschreibe lieber alles peinlich genau, als irgend einen Schritt auszulassen... folgendes habe ich bis jetzt gemacht:
(hoffentlich) ausreichend sicheres Root Passwort (<50 Zeichen)
meinen lokalen pubkey auf den Server übertragen
ssh-copy-id root@meinserver
fail2ban installiert
apt install fail2ban
lokale jail Datei erstellen
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
fail2ban als cronjob installiert (unter root)
crontab -e
1 | @reboot /usr/bin/fail2ban-server
|
Dann habe ich die /etc/fail2ban/jail.local editiert. Viel gab es eigentlich nicht zu tun, ich wollte die Bantime erhöhen bantime = 60000000
bzw. mit einem negativen Wert einen permanenten Ban erstellen bantime = -1
.
Wenn ich den Server nun neu start (reboot now
), ist fail2ban anscheinend nicht gestartet; zumindest top | grep fail2ban
oder manuelles durchsuchen von top) zeigen f2b nicht an.
Mein Alias alias fbl='cat /var/log/fail2ban.log
zeigt mir nun das f2b-Logfile an; die letzte Zeile lautet
2017-09-03 14:50:56,857 fail2ban.server [2310]: INFO Exiting Fail2ban
Weiter ging es folgendermaßen: service fail2ban status
(wohlgemerkt nicht fail2ban-server, sondern nur fail2ban; fail2ban-server gibt folgendes aus)
1 2 3 | ● fail2ban-server.service Loaded: not-found (Reason: No such file or directory) Active: inactive (dead) |
Also service fail2ban status
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | fail2ban.service - Fail2Ban Service Loaded: loaded (/lib/systemd/system/fail2ban.service; enabled; vendor preset: enabled) Active: inactive (dead) (Result: exit-code) since Sun 2017-09-03 14:57:56 CEST; 18min ago Docs: man:fail2ban(1) Process: 1985 ExecStart=/usr/bin/fail2ban-client -x start (code=exited, status=255) Sep 03 14:57:55 localhost.localdomain systemd[1]: fail2ban.service: Control process exited, code=exited status=255 Sep 03 14:57:55 localhost.localdomain systemd[1]: Failed to start Fail2Ban Service. Sep 03 14:57:55 localhost.localdomain systemd[1]: fail2ban.service: Unit entered failed state. Sep 03 14:57:55 localhost.localdomain systemd[1]: fail2ban.service: Failed with result 'exit-code'. Sep 03 14:57:56 localhost.localdomain systemd[1]: fail2ban.service: Service hold-off time over, scheduling restart. Sep 03 14:57:56 localhost.localdomain systemd[1]: Stopped Fail2Ban Service. Sep 03 14:57:56 localhost.localdomain systemd[1]: fail2ban.service: Start request repeated too quickly. Sep 03 14:57:56 localhost.localdomain systemd[1]: Failed to start Fail2Ban Service. |
...wie gesagt: ich bin Anfänger auf dem Gebiet. Mir sagt dieser Fehlercode erst einmal gar nichts. Bzw. kann ich nicht daraus deuten, was ich wie oder wo ändern muss, damit fail2ban läuft wie gewünscht.
Starten lässt sich der Service allerdings nicht: service fail2ban start
bzw. service fail2ban restart
:
1 | Job for fail2ban.service failed because the control process exited with error code. See "systemctl status fail2ban.service" and "journalctl -xe" for details. |
Ersteres gibt den o.g. Output, letzteres journalctl -xe
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit fail2ban.service has finished shutting down. Sep 03 15:18:57 localhost.localdomain systemd[1]: Starting Fail2Ban Service... -- Subject: Unit fail2ban.service has begun start-up -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit fail2ban.service has begun starting up. Sep 03 15:18:57 localhost.localdomain fail2ban-client[2474]: ERROR Server already running Sep 03 15:18:57 localhost.localdomain systemd[1]: fail2ban.service: Control process exited, code=exited status=255 Sep 03 15:18:57 localhost.localdomain systemd[1]: Failed to start Fail2Ban Service. -- Subject: Unit fail2ban.service has failed -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit fail2ban.service has failed. -- -- The result is failed. Sep 03 15:18:57 localhost.localdomain systemd[1]: fail2ban.service: Unit entered failed state. Sep 03 15:18:57 localhost.localdomain systemd[1]: fail2ban.service: Failed with result 'exit-code'. Sep 03 15:18:57 localhost.localdomain systemd[1]: fail2ban.service: Service hold-off time over, scheduling restart. Sep 03 15:18:57 localhost.localdomain systemd[1]: Stopped Fail2Ban Service. -- Subject: Unit fail2ban.service has finished shutting down -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit fail2ban.service has finished shutting down. Sep 03 15:18:57 localhost.localdomain systemd[1]: fail2ban.service: Start request repeated too quickly. Sep 03 15:18:57 localhost.localdomain systemd[1]: Failed to start Fail2Ban Service. -- Subject: Unit fail2ban.service has failed -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Unit fail2ban.service has failed. -- -- The result is failed. Sep 03 15:19:10 localhost.localdomain sshd[2477]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid= Sep 03 15:19:12 localhost.localdomain sshd[2477]: Failed password for root from .169 port 34328 ssh2 Sep 03 15:19:14 localhost.localdomain sshd[2477]: Failed password for root from .169 port 34328 ssh2 Sep 03 15:19:16 localhost.localdomain sshd[2477]: Failed password for root from .169 port 34328 ssh2 Sep 03 15:19:16 localhost.localdomain sshd[2477]: Received disconnect from .169 port 34328:11: [preauth] Sep 03 15:19:16 localhost.localdomain sshd[2477]: Disconnected from .169 port 34328 [preauth] Sep 03 15:19:16 localhost.localdomain sshd[2477]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh Sep 03 15:19:45 localhost.localdomain sshd[2479]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid= Sep 03 15:19:47 localhost.localdomain sshd[2479]: Failed password for root from .169 port 54249 ssh2 Sep 03 15:19:49 localhost.localdomain sshd[2479]: Failed password for root from .169 port 54249 ssh2 Sep 03 15:19:52 localhost.localdomain sshd[2479]: Failed password for root from .169 port 54249 ssh2 Sep 03 15:19:52 localhost.localdomain sshd[2479]: Received disconnect from .169 port 54249:11: [preauth] Sep 03 15:19:52 localhost.localdomain sshd[2479]: Disconnected from .169 port 54249 [preauth] Sep 03 15:19:52 localhost.localdomain sshd[2479]: PAM 2 more authentication failures; logname= uid=0 eui |
Auch das sagt mir leider nichts. Da ich mich sowieso mit pubkey einlogge, wollte ich maxretry auf 1 oder 2 setzen; sollte ich mich mal von einem anderen Gerät anmelden und ggf. einen Fehler machen, kann ich von meinem Hauptrechner aus mit pubkey ja immer noch manuell wieder freischalten.
Wozu ratet Ihr mir? Da der VServer entsprechend online zugänglich ist, muss ich hier schnell handeln... weiß aber nicht, wie...
Danke im Voraus für Euer Feedback ☺