Puncte:0

Cum să forțați utilizatorii Linux să respecte rata maximă de conectare

drapel mu

Cum se stabilește o accelerație bazată pe rate și/sau o cotă pentru conectările SSH per utilizator pe un sistem partajat? De exemplu: limitați o conectare SSH la o dată la 10 secunde.

Lucruri la care m-am uitat:

  • pam throttle și throttle2, dar acelea caută login-uri eșuate și apoi throttle. Vreau, în schimb, să caut login-uri de succes și apoi să-l accelerez.
  • fail2ban, dar care blochează IPS/gamele spre deosebire de utilizatori, ceea ce nu mă ajută aici. (EDITAT pentru a nota IP vs blocuri utilizator)
John Hanley avatar
drapel cn
O autentificare SSH la fiecare două secunde nu ar ucide un server decât dacă acesta este deja supraîncărcat. Cu alte cuvinte, concentrați-vă pe cele mai bune probleme de rezolvat. Asigurați-vă că aduceți beneficii tuturor încercând să blocați un script. Vă sugerez să aveți o întâlnire cu persoana responsabilă de scenariu pentru a alege o soluție mai ușor de gestionat. Blocarea unui script care oferă un serviciu valoros ar putea fi direcția greșită. Indiferent de direcția pe care o alegeți, fiecare metodă va avea un cost CPU (cost pentru autentificare, cost pentru monitorizarea traficului pentru a bloca conectările).
drapel mu
@JohnHanley mulțumesc pentru comentariul tău. Ai dreptate, a vorbi cu un utilizator cu probleme este un bun prim curs de acțiune. Acestea fiind spuse, am fost foarte interesat să observ că nu am putut găsi nicio informație generalizată de limitare pentru SSH, cu excepția situației de tip conectări eșuate/fail2ban. Mă întreb cum se face acest lucru pentru furnizorii de găzduire partajată pe scară largă. Există ghiduri ca acesta? Am editat întrebarea pentru a generaliza în consecință și pentru a reduce accentul pe simptomele mele actuale specifice.
John Hanley avatar
drapel cn
În dezvoltare, fac adesea lucruri precum autentificarea SSH din nou și din nou. Nu am fost niciodată throttled sau rata limitată pentru conexiuni valide la niciun furnizor. După cum am menționat, conectările de succes la fiecare două secunde consumă o cantitate mică de timp total al procesorului - aproximativ 10 ms pe procesoarele moderne de tip i7. IHMO, sunteți îngrijorat de o problemă care ar putea să nu fie nevoie să fie rezolvată prin limitarea ratei. Conexiunile eșuate sunt o problemă diferită.
Puncte:2
drapel jp

fail2ban permite filtre personalizate și acțiuni personalizate. Puteți crea un filtru personalizat pentru a analiza jurnalele adecvate pentru autentificarea ssh cu succes cu acțiunea corespunzătoare.

Puteți găsi multe exemple de filtre diferite în /etc/fail2ban/filter.d/ și multe exemple de acțiuni diferite în /etc/fail2ban/action.d/

Dacă nu doriți să utilizați blocarea IP, puteți bloca un cont de utilizator cu passwd -l nume de utilizator. Sau puteți crea un script /bin/sshratelimit care afișează un avertisment puternic formulat și setează acest script ca shell-ul utilizatorului.

drapel mu
Multumesc pentru raspunsul tau! Aveam impresia că fail2ban controlează numai blocarea/firewall-ul bazat pe IP. Nu găsesc informații despre blocarea/deblocarea conturilor. Am pierdut ceva? De asemenea, voi clarifica întrebarea pentru a reține că blocarea IP nu va funcționa în cazul meu.
drapel jp
@EdwardTeach Am actualizat răspunsul.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.