Hvor risikabelt er det å kjøre en hjemmeserver sikret bak SSH?
Når du trenger å åpne noe på hjemmenettverket ditt til større internett, er en SSH-tunnel en sikker nok måte å gjøre det på?
Dagens Spørsmål & Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppering av Q & A-nettsteder.
Spørsmålet
SuperUser leser Alfred M. vil vite om han er på rett spor med tilkoblingssikkerhet:
Jeg har nylig satt opp en liten server med en lav-slutt datamaskin som kjører debian med sikte på å bruke den som et personlig git-repository. Jeg har aktivert ssh og var ganske overrasket over hvor raskt det led av brute force attacks og lignende. Deretter leser jeg at dette er ganske vanlig og lært om grunnleggende sikkerhetsforanstaltninger for å avværge disse angrepene (mange spørsmål og duplikater på serverfault omhandler det, se for eksempel denne eller denne).
Men nå lurer jeg på om alt dette er verdt innsatsen. Jeg bestemte meg for å sette opp min egen server for det meste for moro skyld: Jeg kunne bare stole på tredjepartsløsninger som de som tilbys av gitbucket.org, bettercodes.org, etc. Mens en del av moroa handler om å lære om Internett-sikkerhet, har jeg ikke nok tid til å tilegne seg det til å bli ekspert og være nesten sikker på at jeg tok de rette forebyggende tiltakene.
For å avgjøre om jeg vil fortsette å leke med dette leketøyprosjektet, vil jeg gjerne vite hva jeg egentlig risikerer i å gjøre det. For eksempel, i hvilken grad truer de andre datamaskinene som er koblet til nettverket mitt også? Noen av disse datamaskinene brukes av personer med enda mindre kunnskap enn at jeg kjører Windows.
Hva er sannsynligheten for at jeg kommer inn i ekte problemer hvis jeg følger grunnleggende retningslinjer, for eksempel sterkt passord, deaktivert root-tilgang for ssh, ikke-standardport for ssh og muligens deaktiverer passordlogg og bruker en av fail2ban-, denyhosts- eller iptables-reglene?
Sett på en annen måte, er det noen store dårlige ulver jeg burde frykte eller er det mest om å shooing away script kiddies?
Skulle Alfred holde seg til tredjepartsløsninger, eller er hans DIY-løsning sikker?
Svaret
SuperUser-bidragsyter TheFiddlerWins beroliger Alfred at det er ganske trygt:
IMO SSH er en av de sikreste tingene å høre på den åpne internett. Hvis du er veldig bekymret, har den lyttet på en ikke-standard high end port. Jeg vil fortsatt ha en (enhetsnivå) brannmur mellom boksen din og selve Internett og bare bruke port videresending for SSH, men det er en forholdsregel mot andre tjenester. SSH selv er ganske jævla solid.
Jeg ha hadde folk slått hjemme hos meg SSH-server av og til (åpen for Time Warner Cable). Aldri hatt en faktisk innvirkning.
En annen bidragsyter, Stephane, fremhever hvor lett det er å ytterligere sikre SSH:
Det er veldig trivielt å sette opp et offentlig nøkkelautentiseringssystem med SSH og tar omtrent 5 minutter å sette opp.
Hvis du tvinger all SSH-tilkobling til å bruke den, så vil det gjøre systemet ganske mye motstandsdyktig, slik du kan håpe uten å investere mye i sikkerhetsinfrastruktur. Helt ærlig er det så enkelt og effektivt (så lenge du ikke har 200 kontoer - så blir det rotete) at det ikke burde være en offentlig lovbrudd som ikke bruker det.
Til slutt tilbyr Craig Watson et annet tips for å minimere forsøk på inntrenging:
Jeg kjører også en personlig git-server som er åpen for verden på SSH, og jeg har også de samme brute-force-problemene som deg, så jeg kan sympatisere med situasjonen din.
TheFiddlerWins har allerede adressert de viktigste sikkerhetsimplikasjonene for å ha SSH åpen på en offentlig tilgjengelig IP, men beste verktøyet IMO som et resultat av brute force-forsøk, er Fail2Ban - programvare som overvåker autentiseringsloggfiler, oppdager inntrengingsforsøk og legger til brannmurregler til maskinens lokale
iptables
brannmur. Du kan konfigurere både hvor mange forsøk før et forbud og lengden på forbudet (min standard er 10 dager).
Har du noe å legge til forklaringen? Lyde av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her.