Fail2Ban mit SSH unter Debian

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
freckles
Beiträge: 7
Registriert: 16.06.2020 10:42:13

Fail2Ban mit SSH unter Debian

Beitrag von freckles » 16.06.2020 10:54:43

Hallo liebes Forum,

ich suche Unterstützung bei der Konfiguration von Fail2Ban. Ich habe dies Installiert und scheinbar scheint der Service auch zu Laufen. Allerdings Blockiert er mich selbst auch. :(

Ich bin auf der suche nach Unterstützung. Gerne auch außerhalb es Forums, würde mich auch erkenntlich zeigen.

Viele Grüße, freckles

TomL

Re: Fail2Ban mit SSH unter Debian

Beitrag von TomL » 16.06.2020 11:19:56

Um was geht es hier... wie sind die Rahmenbedingungen?

- Zugriff innerhalb des LANs?
- Zugriff von außerhalb über das Internet?
- Zugriff auf einen privaten SSH-Server mit öffentlicher IP?
- Zugriff auf verschiedene SSH-Server mit öffentlicher IP?
- Zugriff via DynDNS?
- Zugriff via statischer IP?
- Zugriff von einem einzelnen System?
- Zugriff durch mehrere/viele Clients?
- Zugriff von mobilen Clients aus fremden (offenen) WLAN-Netzen
- Zugriff durch welche beteiligten Betriebssysteme?
- Zugriff aufgrund restriktiver Netzwerkbedingungen an Port 22 gebunden?

freckles
Beiträge: 7
Registriert: 16.06.2020 10:42:13

Re: Fail2Ban mit SSH unter Debian

Beitrag von freckles » 16.06.2020 11:23:56

Hallo Thomas,

Zugriff von außerhalb über das Internet -> Ja
Zugriff auf einen privaten SSH-Server mit öffentlicher IP -> Ja
Zugriff durch mehrere/viele Clients -> ein User von X beliebige Windows Systeme via Putty
Zugriff durch welche beteiligten Betriebssysteme -> Server hat ein Debian 10 und die Clients sind Windows Systeme mit Putty

viele Grüße und Dankeschön!

TomL

Re: Fail2Ban mit SSH unter Debian

Beitrag von TomL » 16.06.2020 11:31:52

Ändere den Port von 22 auf irgendwas zwischen 50000 und 64000, damit reduzierst Du das auf Port 22 bestehende Grundrauschen aus dem Internet (aka Scriptkiddies) quasi auf Null. Verbiete den Password-Zugang, verbiete die Anmeldung als Root und ermögliche den Zugang nur einem normalen User über PubKey-Authentifizierung. Danach kannst Du fail2ban vergessen, es wird nichts mehr zu tun haben und wird damit überflüssig.

Wenn Du allerdings maximale Zugangs-Sicherheit haben möchtest, verwende OpenVPN. Dann braucht es keinen offenen SSH-Port und man kann einfach durch das VPN quasi lokal auf SSH zugreifen.

freckles
Beiträge: 7
Registriert: 16.06.2020 10:42:13

Re: Fail2Ban mit SSH unter Debian

Beitrag von freckles » 16.06.2020 12:05:25

Hallo Thomas,

eine gute Idee mit dem OpenVPN. Werde ich mir einmal ansehen.

Schöne Grüße!

TomL

Re: Fail2Ban mit SSH unter Debian

Beitrag von TomL » 16.06.2020 12:17:43

freckles hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 12:05:25
eine gute Idee mit dem OpenVPN. Werde ich mir einmal ansehen.
Ich habe mein Setup mal beschrieben... vielleicht hilft Dir das als Anregung weiter. Es ist aber nicht als Copy/Paste-Tutorial gedacht, sondern befasst sich auch intensiv mit Hintergrund-Wissen... was man meiner Meinung nach als Admin seines privaten Netzwerkes mit offenen Zugängen vom Internet wissen sollte.

Benutzeravatar
MSfree
Beiträge: 10776
Registriert: 25.09.2007 19:59:30

Re: Fail2Ban mit SSH unter Debian

Beitrag von MSfree » 16.06.2020 12:21:10

TomL hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 11:31:52
Wenn Du allerdings maximale Zugangs-Sicherheit haben möchtest, verwende OpenVPN.
OpenVPN ist nicht (un)sicherer als SSH. Beides verwendet gleich starke Verschlüsselung.
Dann braucht es keinen offenen SSH-Port
Dafür brauchst du aber den offenen, allseits beaknnten OpenVPN-Port.

Und dann noch was, was vielleicht überraschen mag. OpenSSH kann ebenfalls VPN. Siehe man ssh, dort steht, wie man es einrichtet. Und man braucht sich den ganzen Heckmeck mit der Erstellung von SSL-Zertifikaten, die für OpenVPN nötig sind, nicht anzutun.

TomL

Re: Fail2Ban mit SSH unter Debian

Beitrag von TomL » 16.06.2020 12:32:14

MSfree hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 12:21:10
OpenVPN ist nicht (un)sicherer als SSH. Beides verwendet gleich starke Verschlüsselung.
Da bin ich anderer Meinung... allerdings darf man dabei auch nicht die Relevanz für typische Laienuser übersehen ... möglicherweise spielt das letztlich vor der restlichen Datenschutz-Situation eines Anwenders auch keine Rolle mehr. Die Frage ist, ob Du als SSH-Anwender beim Aushandeln eines Schlüssels erkennen kannst, ob ETSI/ETLS irgendwie auf der Strecke zugrunde gelegt wurde.... insbesondere, wenn man sich an prinzipiell unsicheren Netzen anmelden möchte. Bei OpenVPN ist das ausgeschlossen.
Dafür brauchst du aber den offenen, allseits beaknnten OpenVPN-Port.
Nein, brauchst Du nicht, ich rate ebenso wie von Port 22 auch von Port 1194 ab.
ganzen Heckmeck mit der Erstellung von SSL-Zertifikaten, die für OpenVPN nötig sind, nicht anzutun.
Das ist aber das, was imho die höhere Sicherheit herstellt. Aber egal, ist nicht so wirklich wichtig... es ist wohl auch das an Sicherheit ausreichend, was man persönlich als ausreichend erachtet.

miwie
Beiträge: 116
Registriert: 10.07.2002 08:59:23
Kontaktdaten:

Re: Fail2Ban mit SSH unter Debian

Beitrag von miwie » 16.06.2020 13:06:06

TomL hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 11:31:52
Ändere den Port von 22 auf irgendwas zwischen 50000 und 64000, damit reduzierst Du das auf Port 22 bestehende Grundrauschen aus dem Internet (aka Scriptkiddies) quasi auf Null. Verbiete den Password-Zugang, verbiete die Anmeldung als Root und ermögliche den Zugang nur einem normalen User über PubKey-Authentifizierung. Danach kannst Du fail2ban vergessen, es wird nichts mehr zu tun haben und wird damit überflüssig.
Das entspricht meiner Konfig., mit der ich sehr zufrieden bin :)
Ausser dass ich fail2ban trotzdem laufen lasse, ab und an versucht es trotzdem jemand auf dem gewählten Port.

Benutzeravatar
MSfree
Beiträge: 10776
Registriert: 25.09.2007 19:59:30

Re: Fail2Ban mit SSH unter Debian

Beitrag von MSfree » 16.06.2020 13:37:19

TomL hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 12:32:14
Nein, brauchst Du nicht, ich rate ebenso wie von Port 22 auch von Port 1194 ab.
Ich wollte eigentlich darauf hinaus, daß es ohne Port nicht geht. Wie die Portnummer lautet, bekommt jedes Sktiptkieddie mit einem Portscan raus. Den SSH-Port oder den OpenVPN-Port zu verlegen, ist Security by Obscurity. Klar, man bekommt das übliche Rauschen weg, ein Sicherheitsgewinn ist es aber nicht.
...Das ist aber das, was imho die höhere Sicherheit herstellt.
Die höhere Sicherheit wird überhaupt erst mit Schlüsseln hergestellt. Nur lassen sich SSH-Schlüssel ohne großes Kopfweh mit ssh-keygen herstellen. Schlüssel für OpenVPN muß man mit OpenSSL herstellen, und das ist eben einigermassen kompliziert. Und weil ich mir diese Vorgänge nicht merken kann/will, weil ich das viel zu selten machen muß, habe ich dazu ein Skript geschrieben, das mir die Arbeit durch den Einsatz von Debiandialog extrem vereinfacht.

OpenVPN mit einem einfach herzustellendem PSK zu nutzen, ist jedenfalls nicht sicherer als SSH mit Username/Paßwort.

TomL

Re: Fail2Ban mit SSH unter Debian

Beitrag von TomL » 16.06.2020 14:17:12

MSfree hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 13:37:19
Wie die Portnummer lautet, bekommt jedes Sktiptkieddie mit einem Portscan raus. Den SSH-Port oder den OpenVPN-Port zu verlegen, ist Security by Obscurity.
Nein, das ist es zumindest bei OpenVPN nicht. UDP ist zustandslos, irgendeinen beliebigen UDP-Port ohne das dahinterstehende Protokoll identifizieren zu können sagt ja erst mal gar nichts verwertbares für den Angreifer aus. Und wenn schon die Verbindung vor dem Aushandeln eines Sessionschlüssels und vor der etablierten Verbindung zur Schlüsselverhandlung aufgrund eines 'Verstoßes' bei der zusätzlichen TLS-Verschlüsselung auf dem Control-Channel abbricht, ist das definitiv ein anderer Sicherheitslevel.
Klar, man bekommt das übliche Rauschen weg, ein Sicherheitsgewinn ist es aber nicht.
Wie ich oberhalb begründet habe, ich bin da anderer Meinung.
Die höhere Sicherheit wird überhaupt erst mit Schlüsseln hergestellt.
Ich sehe das Risiko nicht bei der Qualität der erfolgreich verschlüsselten Verbindung und des ephemeren Sitzungsschlüssels, da wird SSH vermutlich nicht schlechter sein, als OpenVPN. Ich sehe das Risiko (bei mir) in der fehlenden Kontrolle bei SSH, mit wem ich den Schlüssel aushandele. Das eigentliche Problem dabei ist, um Sokrates zu zitieren "ich weiß, dass ich nichts weiß.". Und weil ich deshalb bei SSH das Gefühl von Kontrollverlust bei der Schlüsselverhandlung habe, verzichte ich auf SSH über das Internet. Ich nutze natürlich SSH, aber erst nach der OpenVPN-Verbindung.
OpenVPN mit einem einfach herzustellendem PSK zu nutzen, ist jedenfalls nicht sicherer als SSH mit Username/Paßwort.
PreSharedKeys sind ja nun das Gegenteil von Sicherheit (zumindest bei wiederholten Logins in unsicheren Netzen). Ich glaube allerdings nicht, dass man Sicherheit anders, als auf der Ebene "Perfect Forward Secrecy" vergleichen sollte.... und da fängt es mit der Schlüsselverhandlung an.

Aber ganz ohne Zweifel... Du hast völlig Recht... OpenVPN ist nicht trivial... ich habe mein Setup beschrieben... und ich war zutiefst erschrocken, was alles dahinter steckt. Im Nachgang bin ich selber des öfteren versucht festzustellen, dass das für Anfänger schlichtweg eine Zumutung ist.

Benutzeravatar
MSfree
Beiträge: 10776
Registriert: 25.09.2007 19:59:30

Re: Fail2Ban mit SSH unter Debian

Beitrag von MSfree » 16.06.2020 14:54:07

TomL hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 14:17:12
Nein, das ist es zumindest bei OpenVPN nicht. UDP ist zustandslos, irgendeinen beliebigen UDP-Port ohne das dahinterstehende Protokoll identifizieren zu können sagt ja erst mal gar nichts verwertbares für den Angreifer aus.
Zunächst bringt dir ein Portscan die offenen Ports zutage, auch UDP-Ports. Natürlich weiß ich dann noch nicht viel. Wenn der Scann aber nur 2-3 offenen Ports liefert, kann ich meinen Angriff verfeinern und Portokolle auf genau diese 2-3 Ports testen.

Ein verlegter Port erhöht also nur die Anzahl der Versuche, aber nicht wirklich wesentlich.
Ich sehe das Risiko (bei mir) in der fehlenden Kontrolle bei SSH, mit wem ich den Schlüssel aushandele.
Bei SSH gibt es dafür die Hostkeys.
Das eigentliche Problem dabei ist, um Sokrates zu zitieren "ich weiß, dass ich nichts weiß.".
Oft aber fast immer falsch zitiert :wink:
Er sagte: Ich weiß, daß ich nicht weiß.
Aber ganz ohne Zweifel... Du hast völlig Recht... OpenVPN ist nicht trivial....
Danke für die Bestätigung. :mrgreen:

TomL

Re: Fail2Ban mit SSH unter Debian

Beitrag von TomL » 16.06.2020 15:05:59

MSfree hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 14:54:07
Wenn der Scann aber nur 2-3 offenen Ports liefert, kann ich meinen Angriff verfeinern und Portokolle auf genau diese 2-3 Ports testen.
Ich halte das für einen Irrtum. An dem Punkt gibt es noch gar kein VPN-Protokoll. Es sein denn, man will die zusätzliche Verschlüsselung des DTLS-Channels auf UDP als Protokoll definieren. Das ist ja noch, bevor es via DH anfängt, über einen Sitzungsschlüssel zu verhandeln. Das bedeutet, die HMAC-Firewall unterbricht sofort Verbindungsversuche, lange bevor z.B. mein Paketfilter via nftables wach wird oder bevor Daten auf dem VPN-Daten-Channel fließen.
Das eigentliche Problem dabei ist, um Sokrates zu zitieren "ich weiß, dass ich nichts weiß.".
Oft aber fast immer falsch zitiert
Er sagte: Ich weiß, daß ich nicht weiß.
Da musste mir jetzt helfen... ich sehe den Unterschied nicht.... abgesehen grammatikalisch. Aber siehe hier: https://sokratesberlin.de/philosophisch ... hts-weiss/

Benutzeravatar
MSfree
Beiträge: 10776
Registriert: 25.09.2007 19:59:30

Re: Fail2Ban mit SSH unter Debian

Beitrag von MSfree » 16.06.2020 15:24:19

TomL hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 15:05:59
Ich halte das für einen Irrtum.
Wenn ich einen OpenVPN-Server angreifen will und nicht weiß, auf welchem Port der Server lauscht, kann ich alle 65565 möglichen Ports stumpf durchprobieren. Wie hilft dir in so einer Situation das Verlegen des Standardports von 1194 auf z.B. 21194?

Außer, daß der ANgreifer ein wenig mehr Arbeit hat, bringt das keine Zusatzsicherheit. Der Angreifer kann auch durch einen Portscann vorweg herausfinden, daß auf Port 21194 irgendwas lauscht. Dann braucht er nicht alle 65565 Ports durchzuprobieren sondern kann gezeilt 21194 angreifen.

Wie erhöht sich hier die Sicherheit dadurch, daß du von den Port 1194 auf 21194 verlegt hast?
lange bevor z.B. mein Paketfilter via nftables wach wird
iptables/nftables kommt immer als erster bei eintrudelnden Pakete dran.
Das ist mir jetzt zu lang zum Lesen. :wink:

TomL

Re: Fail2Ban mit SSH unter Debian

Beitrag von TomL » 16.06.2020 15:35:19

MSfree hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 15:24:19
Wenn ich einen OpenVPN-Server angreifen will und nicht weiß, auf welchem Port der Server lauscht, kann ich alle 65565 möglichen Ports stumpf durchprobieren. Wie hilft dir in so einer Situation das Verlegen des Standardports von 1194 auf z.B. 21194?
:::
Wie erhöht sich hier die Sicherheit dadurch, daß du von den Port 1194 auf 21194 verlegt hast?
Bei 1194 weißt Du vorher, dass es OpenVPN ist, bei einem wilden Port >50000 bricht die HMAC-Firewall ab, bevor Du was von OpenVPN feststellen kannst. Du weißt als Angreifer also gar nicht, was Du da attackierst und welche Schwachstellen eines Protokolls Du angreifen könntest.

Wahrscheinlich ist das auch nicht ganz so wichtig.... bei mir reduziert der Verzicht auf 22 (in Testphase) und 1194 das Rauschen jedenfalls faktisch auf 0. Ich habe in meinen Protokollen, die ich täglich zugesandt bekomme definitiv seit Jahren keine Verbindungsversuche auf UDP.
iptables/nftables kommt immer als erster bei eintrudelnden Pakete dran.
Ja, stimmt, das ist in dem Fall aber irrelevant, weil die Pakete ja zum Prozess durch gehen müssen, sonst würde ich mich ja selber aussperren. Das bedeutet, die Firewall (also sowas wie fail2ban oder meine getime'ten Elementlist's können erst bei multiplen Versuchen wach werden. Und deswegen greift die HMAC-FW vorher.
Das ist mir jetzt zu lang zum Lesen.
Die Überschrift ist also nicht wirklich zu lang zum lesen... :mrgreen:

mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: Fail2Ban mit SSH unter Debian

Beitrag von mat6937 » 16.06.2020 15:55:32

MSfree hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 15:24:19
Der Angreifer kann auch durch einen Portscann vorweg herausfinden, daß auf Port 21194 irgendwas lauscht.
Wie bzw. mit welchem Tool scannst Du auf offene/lauschende UDP-Ports?
Man kann sein System ja auch so konfigurieren, dass der UDP-Portscann nicht feststellen kann auf welchen UDP-Ports gelauscht wird und auf welchen UDP-Ports nicht gelauscht wird.

Benutzeravatar
MSfree
Beiträge: 10776
Registriert: 25.09.2007 19:59:30

Re: Fail2Ban mit SSH unter Debian

Beitrag von MSfree » 16.06.2020 16:37:21

mat6937 hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 15:55:32
Wie bzw. mit welchem Tool scannst Du auf offene/lauschende UDP-Ports?
nmap

mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: Fail2Ban mit SSH unter Debian

Beitrag von mat6937 » 17.06.2020 00:19:54

MSfree hat geschrieben: ↑ zum Beitrag ↑
16.06.2020 16:37:21
nmap
Wenn man z. B.:

Code: Alles auswählen

net.inet.udp.blackhole=1
(oder gleichwertig) benutzt, kann nmap die lauschenden UDP-Ports nicht finden.

Antworten