If-Koubou

Cât de riscant este să rulați un server de acasă securizat în spatele SSH?

Cât de riscant este să rulați un server de acasă securizat în spatele SSH? (Cum să)

Când trebuie să deschideți ceva în rețeaua de domiciliu la internetul mai mare, este un tunel SSH o modalitate sigură de a face acest lucru?

Sesiunea de întrebări și răspunsuri din ziua de astăzi vine de la amabilitatea SuperUser - o subdiviziune a Stack Exchange, o grupare bazată pe comunitate a site-urilor Q & A.

Intrebarea

Cititorul de super-utilizatori Alfred M. vrea să știe dacă e pe calea cea bună cu securitate la conexiune:

Am creat recent un mic server cu un computer de tip low-end care rulează debian cu scopul de al folosi ca un depozit personal git. Am permis ssh și a fost destul de surprins de promptitudinea cu care a suferit atacuri de forță brute și altele asemenea. Apoi am citit că acest lucru este destul de obișnuit și a învățat despre măsurile de securitate de bază pentru a evita aceste atacuri (o mulțime de întrebări și duplicate în privința soluției serverfault cu acesta, a se vedea de exemplu acest sau unul).

Dar acum mă întreb dacă toate acestea merită efortul. Am decis să înființez propriul server pentru distracție: m-aș putea baza doar pe soluții terțe, cum ar fi cele oferite de gitbucket.org, bettercodes.org, etc. În timp ce o parte din distracție este despre învățarea despre securitatea pe Internet, nu am suficient timp pentru al dedica pentru a deveni un expert și a fi aproape sigur că am luat măsurile de prevenire corecte.

Pentru a decide dacă voi continua să joc cu acest proiect de jucărie, aș vrea să știu ce risc cu adevărat în acest sens. De exemplu, în ce măsură sunt amenințate și celelalte calculatoare conectate la rețeaua mea? Unele dintre aceste computere sunt folosite de oameni cu o cunoaștere chiar mai mică decât Windows-ul meu.

Care este probabilitatea să intru într-o problemă reală dacă respect regulile de bază cum ar fi parola puternică, accesul rădăcină dezactivat pentru ssh, portul non-standard pentru ssh și eventual dezactivarea parolei de conectare și folosirea uneia dintre regulile fail2ban, denyhosts sau iptables?

Puneți un alt mod, sunt niște lupi mari răi de care ar trebui să mă tem sau este vorba cel mai mult despre împușcarea scripturilor?

Ar trebui Alfred să rămână la soluții terțe sau soluția lui DIY să fie sigură?

Răspunsul

Contribuabilul SuperFactor TheFiddlerWins îi asigură lui Alfred că este destul de sigur:

IMO SSH este unul dintre cele mai sigure lucruri de ascultat pe internet deschis. Dacă sunteți într-adevăr îngrijorat să-l ascultați pe un port non-standard high-end. Încă mai aveam un paravan de protecție (la nivel de dispozitiv) între casetă și Internet real și pur și simplu folosesc port forwarding pentru SSH, dar asta este o precauție împotriva altor servicii. SSH în sine este destul de solid.

euavea oamenii au lovit ocazional serverul SSH de acasă (deschis pentru Time Warner Cable). Nu a avut niciodată un impact real.

Un alt contribuitor, Stephane, evidențiază cât de ușor este să asigurăm SSH:

Configurarea unui sistem de autentificare cu chei publice cu SSH este într-adevăr trivial și durează aproximativ 5 minute pentru configurare.

Dacă forțezi toate conexiunile SSH să le folosești, atunci sistemul tău va fi la fel de rezistent ca și tu, fără să investești într-o infrastructură de securitate. Sincer, este atât de simplu și eficace (atâta timp cât nu aveți 200 de conturi - atunci devine dezordonat), că nu-l folosiți ar trebui să fie o ofensă publică.

În cele din urmă, Craig Watson oferă un alt sfat pentru a reduce la minimum încercările de a intruzi:

De asemenea, conduc un server personal GIT care este deschis pentru lume pe SSH, și am, de asemenea, aceleași probleme de forță bruta ca tine, ca să pot simpatiza cu situația ta.

TheFiddlerWins se adresează deja principalelor implicații de securitate pe care le are SSH deschis pe o IP accesibilă publicului, dar cel mai bun instrument IMO ca răspuns la încercările de forță brute este Fail2Ban - software care monitorizează fișierele jurnal de autentificare, detectează încercările de intruziune și adaugă reguli de firewall mașina localăiptables firewall. Puteți configura atât cât de multe încercări înainte de o interdicție, cât și durata interdicției (implicit, este de 10 zile).

Aveți ceva de adăugat la explicație? Sunați în comentariile. Doriți să citiți mai multe răspunsuri de la alți utilizatori de tehnologie Stack Exchange? Check out discuția completă aici.