Kuidas riskantne on SSH tagatud koduserveri käivitamine?
Kui peate oma koduvõrgus midagi avama suuremale internetile, on SSH tunnel piisavalt turvaline viis seda teha?
Tänane küsimuste ja vastuste seanss saabub meiega kohtades, kus on SuperUser-Stack Exchange'i alajaotis, kogukondlikult juhitav Q&A veebisaitide rühmitus.
Küsimus
SuperUser lugeja Alfred M. tahab teada, kas ta on õigel rajal ühenduse turvalisusega:
Olen hiljuti loonud väikese serveri, millel on madala lõpparvuga arvuti, millel on debian, eesmärgiga kasutada seda isikliku git-hoidla kujul. Olen lubanud ssh-i ja olin üsna üllatunud, kui kiire on see brutaaljõudude rünnakutest jms. Siis ma lugesin, et see on üsna tavaline ja õppinud nende rünnakute tõkestamiseks vajalike põhiliste turvameetmete kohta (palju küsimusi ja duplikaate serverifultiga sellega tegelevad, vaadake näiteks seda või seda).
Aga nüüd ma mõtlen, kas see kõik on vaeva väärt. Otsustasin luua oma serveri enamasti lõbu pärast: ma võin lihtsalt tugineda kolmandate osapoolte lahendustele, nagu need, mida pakub gitbucket.org, bettercodes.org jne. Kuigi osa lõbususest on Interneti turvalisuse tundmaõppimine, ei ole ma piisavalt aega selleks, et sellele eksperdiks saada ja olla peaaegu kindel, et võtsin õiged ennetusmeetmed.
Selleks, et otsustada, kas ma jätkan seda mänguasjaprojekti mängimist, tahaksin teada, mida ma seda tegelikult riskin. Näiteks, mil määral ohustavad ka teised arvutiga ühendatud arvutid? Osa neist arvutitest kasutavad inimesed, kellel on isegi vähem teadmisi kui minu Windowsi käitamine.
Mis on tõenäosus, et ma saan tõelisi probleeme, kui järgin põhisuuniseid, näiteks tugevat parooli, ssh-i keelatud juurjuurdepääsu, ssh-i mittestandardset pordi ja parooli sisselogimise keelamist ning ühte fail2ban-, denyhosts- või iptables-reegleid kasutades?
Teisisõnu, kas on mõned suured halvad hundid, keda ma peaksin kartma või kas see on enamasti skripti kiddieside hülgamine?
Kui Alfred peab kinni kolmandate osapoolte lahendustest või on tema DIY lahendus turvaline?
Vastus
SuperUser'i toetaja TheFiddlerWins kinnitab Alfredile, et see on täiesti ohutu:
IMO SSH on avatud interneti kuulamise üks ohutumaid asju. Kui olete tõesti mures, kuulake seda mittestandardsetel kõrgtasemel porti. Mul on ikka veel (seadme tasandil) tulemüür sinu kasti ja tegeliku Interneti vahel ning lihtsalt kasutage SSH-i portaali edastamist, kuid see on ettevaatusabinõu teiste teenuste vastu. SSH ise on päris kuradi tahke.
I on oli inimestel aeg-ajalt oma kodu SSH-serverit tabanud (avatud Time Warner Cable'ile). Kunagi ei olnud tegelikku mõju.
Teine panustaja, Stephane, toob esile, kui lihtne on SSH turvalisuse suurendamine:
Avaliku võtme autentimissüsteemi loomine SSH-ga on tõesti triviaalne ja seadistamiseks kulub umbes 5 minutit.
Kui sundite kõiki SSH-ühendust seda kasutama, siis teeb see teie süsteemi üsna paindlikuks, kui loodate ilma LOT-i investeerimiseta turvainfrastruktuuri. Ausalt öeldes on see nii lihtne ja tõhus (kui sul ei ole 200 kontot, siis see muutub räpaseks), et selle kasutamata jätmine peaks olema avalik süütegu.
Lõpuks pakub Craig Watson teist nõu, et minimeerida sissetungi katseid:
Käivitan ka isikliku git-serveri, mis on SSH-s maailmale avatud, ja mul on ka samad brute-force probleemid nagu sina, nii et võin teie olukorraga kaastunnet pidada.
TheFiddlerWins on juba käsitlenud SSH avamise avalikkusele kättesaadaval IP-l põhinevaid peamisi turvamõjusid, kuid parim vahend IMO vastuseks brutse jõu katsetele on Fail2Ban - tarkvara, mis jälgib teie autentimislogi faile, tuvastab sissetungi katsed ja lisab tulemüüri reeglid masina kohalik
iptables
tulemüür. Saate konfigureerida nii mitu keeldu enne keeldu kui ka keelu pikkust (minu vaikimisi on 10 päeva).
Kas teil on midagi lisada selgitusele? Hääletage kommentaarides. Kas soovite lugeda rohkem vastuseid teistelt tech-savvy Stack Exchange'i kasutajatelt? Vaadake siin täielikku arutelu lõiku.