Mit pam_tally die LoginVersuche begrenzen

Rund um die Sicherheit des Systems und die Applikationen
bmp
Posts: 116
Joined: 2003-03-13 16:30
 

Mit pam_tally die LoginVersuche begrenzen

Post by bmp »

Hallo,

Ich würde gerne für mein sshd die fehlerhaften Loginversuche auf 2 begrenzen. Danach sollte der User erst nach einer Gedenkpause von 60 Minuten wieder 2 Versuche wagen dürfen.

Gefunden habe ich leider hier und bei Google nur das : http://www.kernel.org/pub/linux/libs/pa ... tml#ss6.24

Da mein Englisch stark beschränkt ist, blicke ich da aber nicht richtig durch.

So wie ich das sehe muss ich in der /etc/pam.d/sshd.conf das Modul pam_tally einbinden.

Nur WIE ? und wo gebe ich die Begrenzungen ein ?

Ach ja ich fahre ein Suse8.2 Server.

mfg

Marcus Berger
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by captaincrunch »

Warum löst du das nicht ganz simpel über die /etc/security/limits.conf ?

Das File sollte auch unter SuSE gut genug dokumentiert sein, um damit schnell zum Ziel zu kommen. Falls nicht : einfach nachfragen ... ;)

Btw. : Eine gute Gelegenheit, mal dein Englisch aufzubessern ;)
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
d.m
Posts: 53
Joined: 2003-07-29 00:32
Location: Waltrop
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by d.m »

Ich würd's an deiner Stelle auch eher mit /etc/security/limits.conf versuchen.

Eine Denkpause von 60 Minuten halte ich nicht für sinnvoll. Was ist, wenn du was wichtiges am Server machen musst und du dich - in der Hitze des Gefechts - vertippst?

/etc/security/limits.conf

Code: Select all

<domain>        <type>     <item>   <value>
@group             -      maxlogins   2
bmp
Posts: 116
Joined: 2003-03-13 16:30
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by bmp »

d.m wrote:Ich würd's an deiner Stelle auch eher mit /etc/security/limits.conf versuchen.

Eine Denkpause von 60 Minuten halte ich nicht für sinnvoll. Was ist, wenn du was wichtiges am Server machen musst und du dich - in der Hitze des Gefechts - vertippst?

/etc/security/limits.conf

Code: Select all

<domain>        <type>     <item>   <value>
@group             -      maxlogins   2
Hmm,
habe das mal ausprobiert.

Code: Select all

<domain>        <type>     <item>   <value>
USERNAME             -      maxlogins   2
danach ein rcsshd restart.
Aber ich kann trotzdem noch mehrere Loginversuche machen.
Und wie kann ich in der Variante die Sperrzeit einstellen ?
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by captaincrunch »

Du brauchst bei <type> wohl noch ein "soft" oder "hard" (je nachdem, was du willst).

Was die Sperrzeit angeht : (glücklicherweise) gar nicht ... ;)
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
Outlaw
Posts: 1500
Joined: 2002-12-04 10:22
Location: 4. Server von rechts, 2. Reihe von oben
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by Outlaw »

Wie kommt man dann rein, wenn man sich 2x vertippt hat oder jemand versucht hat reinzukommen ??

Ok, mein Root kann sich nicht einloggen aber viele haben den Root noch aktiv und würden sich dann aussperren (lassen) ....

Gruß Outi
:D Gruß Outi :D
dodolin
Posts: 3840
Joined: 2003-01-21 01:59
Location: Sinsheim/Karlsruhe
Contact:
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by dodolin »

Wie kommt man dann rein, wenn man sich 2x vertippt hat oder jemand versucht hat reinzukommen ??
Outlaw, du hast es erfasst und sprichst mir aus der Seele, danke. :)

Das ist wiedermal ein herrlicher Fall von SelfDoS, weil ich damit einfach ein paar Fehllogins mit deinem User mache und der sich danach erst mal nicht mehr einloggen kann. Scheine Sch***, oder?

Wenn, dann sollte man unbedingt, seinen eigenen Wartungsuser davon ausnehmen, damit man noch aufs System kommt.
bmp
Posts: 116
Joined: 2003-03-13 16:30
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by bmp »

dodolin wrote:Wie kommt man dann rein, wenn man sich 2x vertippt hat oder jemand versucht hat reinzukommen ??
So soll es ja auch sein, ich habe die Rootanmeldung schomal aus der sshd.conf rausgenommen.
So das ich mich nur noch als "Normaler" User anmelden kann.

Mir past aber der gedanke nicht, das irgendso ein ScriptKidy eine BruceForce Attacke gegen mein User/PW startet.

Und das beste dagegen ist wohl eine Pause von ein paar Minuten.
Ok vieleicht sind 60 ein wenig hoch aber 5 sollten es schon sein.

mfg

Marcus
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by captaincrunch »

Mir past aber der gedanke nicht, das irgendso ein ScriptKidy eine BruceForce Attacke gegen mein User/PW startet.
In dem Fall gibt's eine viel sinnigere Methode : ein sicheres Passwort, denn wenn du schon Panik davor hast, dass deins bruteforced werden könnte, scheinst du das falsche zu haben.
Mit einem (halbwegs) sicheren Passwort kann sich das Kiddie dann totforcen ... alles andere ist (wie schon von dodolin gesagt) Self-DOS
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by captaincrunch »

Oh mann, sorry. Ich hatte da anscheinend einen massiven Gedankenfehler : per /etc/security/limits.conf limitierst du die maximale Anzahl der Logins, die ein User gleichzeitig haben kann.

Mit dem eigentlichen Problem der Fehlversuche hat das recht wenig zu tun, wobei ich aber ganz ehrlich wenig zwingende Gründe sehe, da "rumspielen" zu wollen, sofern du (wie oben schon erwähnt) sichere Passworte verwendest.

Um dir aber vielleicht doch ein wenig weiterzuhelfen : in den SuSE-Versionen vor 8.0 ließ sich (AFAIR) die maximale Anzahl der Loginversuche sogar per yast einstellen. Vielleicht geht das heutzutage immer noch ?!?
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
bmp
Posts: 116
Joined: 2003-03-13 16:30
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by bmp »

CaptainCrunch wrote:Um dir aber vielleicht doch ein wenig weiterzuhelfen : in den SuSE-Versionen vor 8.0 ließ sich (AFAIR) die maximale Anzahl der Loginversuche sogar per yast einstellen. Vielleicht geht das heutzutage immer noch ?!?
Hmm, gerade nochmal in Yast2 geschaut und nix passendes gefunden.

Dann scheint es wohl doch nicht zu gehn.
Eigendlich Komisch, ich dachte eine solche "sinnvolle" Funktion sei ganz einfach zu realisieren. Aber anscheinend ja wohl doch nicht.

Zum Passwort natürlich gibt es keinen besseren Schutz wie ein Kryptisches Passwort. Aber wer merkt sich schon ein Passwort aus 8 Buchstaben und Zahlen gemischt mit Groß/Kleinschreibung ?

Ich kann es nicht.

Und auf einen Zettel aufschreiben ? Davon halte ich auch nicht viel.

Natürlich gibt mir die Sperrung des Benutzers ROOT schon eine gewisse sicherheit, da der Angreifer ja den Benutzernamen + Passwort kennen muß. Und danach muß er ja auch noch per SU das Root PW rausfinden.

Denoch halte ich eine Sperrung des Benutzers für sagen wir mal 2 Minuten nach einem Fehlerhaften Loginversuch für durchaus sinnvoll.

mfg

Marcus Berger
Outlaw
Posts: 1500
Joined: 2002-12-04 10:22
Location: 4. Server von rechts, 2. Reihe von oben
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by Outlaw »

Dafür gibt es einen ganz einfachen Trick:

Sätze bilden:

Ich haue Dir auf die Schnauze wenn Du nicht sofort läufst !!

IhDadSwDnsl!!

Das Ganze kannst DU natürlich noch mit ner Jahreszahl garnieren und alles wird gut ....

Gruß Outi

PS: Das war ein Beispiel und es ist NICHT mein Passwort, zudem geht bei meinem Rootie der Root Login nicht !!
;):D
:D Gruß Outi :D
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by captaincrunch »

Eigendlich Komisch, ich dachte eine solche "sinnvolle" Funktion sei ganz einfach zu realisieren. Aber anscheinend ja wohl doch nicht.
Weil das eigentlich kaum jemand nutzt ...
Zum Passwort natürlich gibt es keinen besseren Schutz wie ein Kryptisches Passwort.
Jein. Ein kryptisches Passwort ist schon nicht schlecht, noch besser wäre es allerings, das Login ausschließlich über SSH-PubKey-Auth laufen zu lassen, und Passwort-Logins erst gar nicht zuzulassen. Somit wärest du auf einer sehr sicheren Seite, da erst gar keine Bruteforce-Möglichkeit bestünde.

Was das merken von Passwörtern angeht : sowas bleibt schon im Kopf, man muss es nur oft genug eingeben ... ;) Mal ernsthaft : ich habe die Passworte von fast vierzig Servern im Kopf (die ich auf der Arbeitr administratiere), und wenn ich das kann, schaffst du das schon lange ... ;)
Denoch halte ich eine Sperrung des Benutzers für sagen wir mal 2 Minuten nach einem Fehlerhaften Loginversuch für durchaus sinnvoll.
Ich immer noch nicht, sorry. Am "sichersten" ist IMHO immer noch, Keys zu nutzen.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
Outlaw
Posts: 1500
Joined: 2002-12-04 10:22
Location: 4. Server von rechts, 2. Reihe von oben
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by Outlaw »

Und wenn ich den Key PCseitig verbummle ??

Gruß Outi
:D Gruß Outi :D
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by captaincrunch »

... hast du hoffentlich noch deine Kopie auf dem USB-Stick, den du ohnehin immer am Schlüsselbund trägst. ;)

Btw. (auch wenn's hier komplett OT ist) : Weiß jemand, woher man die neueren "biometrischen" USB-Sticks beziehen kann ?
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
Outlaw
Posts: 1500
Joined: 2002-12-04 10:22
Location: 4. Server von rechts, 2. Reihe von oben
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by Outlaw »

Von biometrischen halte ich nix, da man die leicht überlisten kann, es sei denn, Du meinst einen, den man sich ins AUge stecken kann .... ;):D

Warum benutzt Du nicht einfach die Verschlüsselungsfunktion Deines Sticks ??
(Verschlüsseln ist falsch ausgedrückt, die Passwortabfrage eben ....)

Gruß Outi
:D Gruß Outi :D
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by captaincrunch »

Natürlich sind die noch lange nicht ausgereift. Aus genau diesem Grunde wollte ich mir die Dinger aber mal unter die Lupe nehmen ... ;)

Jetzt aber bitte wieder Back2Topic, wir können das gerne per PN / Mail weiterdiskutieren, da ich kaum glaube, dass das den Fragesteller wirklich interessiert ... ;)
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
Outlaw
Posts: 1500
Joined: 2002-12-04 10:22
Location: 4. Server von rechts, 2. Reihe von oben
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by Outlaw »

Das sehe ich anders. Mit dem Ausflug in die Alternativen der Passwortverzögerung kann man Wege aufzeigen, wie man es anders machen kann.

Ok, ob biometrisch oder nicht, geht etwas OT aber wer sagt, daß das nix ne interessante Sache für den Frageseteller sein könnte ??

Gruß Outi

PS: Ã?brigens hast Du damit angefangen .... ;):D
:D Gruß Outi :D
bmp
Posts: 116
Joined: 2003-03-13 16:30
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by bmp »

Outlaw wrote:Das sehe ich anders. Mit dem Ausflug in die Alternativen der Passwortverzögerung kann man Wege aufzeigen, wie man es anders machen kann.

Ok, ob biometrisch oder nicht, geht etwas OT aber wer sagt, daß das nix ne interessante Sache für den Frageseteller sein könnte ??
Macht bloß hier weiter. Vieleicht bekomme ich dadurch noch eine Inspiration 8O
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by captaincrunch »

Na ja, der Grundgedanke dahinter ist eigentlich ganz simpel :

- Du erstellst dir mit deinem Homelinux (oder wahlweise auch den Putty-Tools unter Windoof) SSH-Keys. Eine Anleitung dazu gibt's in den FAQs

- Diesen Key speicherst du auf deinem Homerechner, sowie auf einem USB-Stick (oder wahlweise einer Diskette), der mit FAT16 formatiert ist, damit alle Systeme darauf zugreifen können. Am besten packst du dann auch noch Putty da drauf, für den Fall, wenn du an einem Windows-Rechner sitzt

- Am besten machst du noch Backups der Keys, die du an einem sicheren Platz lagerst

- Du konfigurierst deinen Rootie dahingehend, dass der SSH-Login ausschließlich per Key, und eben nicht mehr per Passwort möglich ist, und loggst dich nur noch mit deinen Keys ein.
Somit hast du das BruteForce-Problem auch sehr effektiv aus der Welt geschafft. Du musst natürlich nur aufpassen, dass der Stick nicht in die falschen Hände gerät ;)

Ist IMHO die sicherste Alternative, weil ein solcher Key nur äußerst schwer zu knacken ist (außer, man sitzt bei der NSA ;) )

Um aber noch mal kurz OT zu werden :
Die "Verschlüsselung" der aktuellen USB-Sticks ist noch einfacher auszuhebeln als ein Fingerabdruck ... ;) Ich weiß aber auch ehrlich gesagt nicht, ob sich diese "Sonderfunktionen" wie Passwortzugang zum Stick oder Verschlüsselung unter Linux nutzen lassen
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
bmp
Posts: 116
Joined: 2003-03-13 16:30
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by bmp »

CaptainCrunch wrote:Na ja, der Grundgedanke dahinter ist eigentlich ganz simpel :

- Du erstellst dir mit deinem Homelinux (oder wahlweise auch den Putty-Tools unter Windoof) SSH-Keys. Eine Anleitung dazu gibt's in den FAQs

- Diesen Key speicherst du auf deinem Homerechner, sowie auf einem USB-Stick (oder wahlweise einer Diskette), der mit FAT16 formatiert ist, damit alle Systeme darauf zugreifen können. Am besten packst du dann auch noch Putty da drauf, für den Fall, wenn du an einem Windows-Rechner sitzt

- Am besten machst du noch Backups der Keys, die du an einem sicheren Platz lagerst

- Du konfigurierst deinen Rootie dahingehend, dass der SSH-Login ausschließlich per Key, und eben nicht mehr per Passwort möglich ist, und loggst dich nur noch mit deinen Keys ein.
Somit hast du das BruteForce-Problem auch sehr effektiv aus der Welt geschafft. Du musst natürlich nur aufpassen, dass der Stick nicht in die falschen Hände gerät ;)

Ist IMHO die sicherste Alternative, weil ein solcher Key nur äußerst schwer zu knacken ist (außer, man sitzt bei der NSA ;) )
Hmm läst es sich dann auch so einstellen, das man KEY UND PW haben muß ?

Ã?brigens habe ich mir gerade ein kleinen Cron Job erstellt, der alle 30 Minuten ein kleines Script abarbeitet.

Dieses Script habe ich so geschrieben, das es mir eine Mail schreibt, wenn SSHD ein ein unbekannten USER oder ein PW Abgelent hat.

In der Mail steht dann folgendes :

Code: Select all

Subject: Da hat einer sein PW Vergessen

Aug 14 13:52:05 essenXXX sshd[30352]: Failed password for XXXXX from ::ffff:21x.8x.19x.13x port
63415 ssh2
Aug 14 17:33:51 essenXXX sshd[2349]: Illegal user asdf from ::ffff:21x.8x.19x.13x
Bin ganz stolz mein erstes Linux Script :oops:
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by captaincrunch »

Hmm läst es sich dann auch so einstellen, das man KEY UND PW haben muß ?
Jein, eigentlich sogar noch besser : beim Anlegen der Keys kannst du eine Passphrase vergeben, die noch länger als ein Passwort sein kann, und so als zusätzliche Sicherheit dienen kann. Das ganze halte ich aber für ziemlich übertrieben. Lies dich einfach mal ein bisschen in die Thematik von SSH-Keys ein, und du wirst erkennen, dass die für den "normalen Hausgebrauch" schon sehr sicher sind.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
Outlaw
Posts: 1500
Joined: 2002-12-04 10:22
Location: 4. Server von rechts, 2. Reihe von oben
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by Outlaw »

Also keine Passphrase eingeben und welches Verfahren ist sicherer ?? (RSA oder DSA)

Wenn ich den Schlüssel mit Putty auf dem Rootie erstelle, wie bekomme ich den auf den Windows PC ??

Mit SCP wird das wohl scheitern, nehme ich also WinSCP oder ein SSH gesichertes FTP Programm, oder ??

(Ich muss endlich mal meinen FTP Voyager upgraden ....)

Gruß Outi
:D Gruß Outi :D
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by captaincrunch »

Also keine Passphrase eingeben und welches Verfahren ist sicherer ?? (RSA oder DSA)
http://www.linuxquestions.org/questions ... 01/4/12593
Wobei die Länge des Keys hier (fast) eher zählt.
Wenn ich den Schlüssel mit Putty auf dem Rootie erstelle, wie bekomme ich den auf den Windows PC ??
Du solltest deine Keys auf dem PC erstellen, von dem aus du auf den Rootie zugreifen willst, nicht umgekehrt. Auch dazu gibt's ein Tool aus der Puttyreihe (PuttyGen)
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09
 

Re: Mit pam_tally die LoginVersuche begrenzen

Post by majortermi »

CaptainCrunch wrote:Jein. Ein kryptisches Passwort ist schon nicht schlecht, noch besser wäre es allerings, das Login ausschließlich über SSH-PubKey-Auth laufen zu lassen, und Passwort-Logins erst gar nicht zuzulassen. Somit wärest du auf einer sehr sicheren Seite, da erst gar keine Bruteforce-Möglichkeit bestünde.
Naja, so ganz stimmt das nicht. Man kann auch versuchen eine asymmetrische Verschlüsselung über eine Brute-Force-Attack zu knacken, bei der derzeitigen Rechenleistung und einem 1024 oder noch besser 2048 Bit Schlüssel, dürfte man aber noch am knacken sein, wenn die Erde bereits nicht mehr existiert :wink:
Was das merken von Passwörtern angeht : sowas bleibt schon im Kopf, man muss es nur oft genug eingeben ... ;) Mal ernsthaft : ich habe die Passworte von fast vierzig Servern im Kopf (die ich auf der Arbeitr administratiere), und wenn ich das kann, schaffst du das schon lange ... ;)
Warum benutzt du da keine Public-Key Authentifizierung? Das wäre doch wesentlich sicherer und einfacherer. Außerdem kann man somit problemlos mehreren Leuten Root-Rechte geben und braucht sich trotzdem nicht ein neues Passwort ausdenken, wenn jemand wieder aus der Liste genommen wird.
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...
Post Reply