Homepage » come » Quanto è rischioso eseguire un server domestico protetto dietro SSH?

    Quanto è rischioso eseguire un server domestico protetto dietro SSH?

    Quando è necessario aprire qualcosa sulla rete domestica su Internet, è un tunnel SSH un modo abbastanza sicuro per farlo?

    La sessione di domande e risposte di oggi ci viene fornita per gentile concessione di SuperUser, una suddivisione di Stack Exchange, un raggruppamento di siti Web di domande e risposte basato sulla comunità.

    La domanda

    Il lettore SuperUser Alfred M. vuole sapere se è sulla strada giusta con la sicurezza della connessione:

    Di recente ho creato un piccolo server con un computer di fascia bassa che esegue debian con l'obiettivo di usarlo come repository git personale. Ho abilitato ssh e sono rimasto piuttosto sorpreso dalla prontezza con cui ha sofferto per attacchi di forza bruta e simili. Poi ho letto che questo è abbastanza comune e ho imparato a conoscere le misure di sicurezza di base per tenere a bada questi attacchi (molte domande e duplicati su serverfault, prendi ad esempio questo o questo).

    Ma ora mi chiedo se tutto ciò valga la pena. Ho deciso di creare il mio server principalmente per divertimento: potevo contare solo su soluzioni di terze parti come quelle offerte da gitbucket.org, bettercodes.org, ecc. Mentre parte del divertimento riguarda l'apprendimento della sicurezza in Internet, non ho abbastanza tempo da dedicare ad esso per diventare un esperto ed essere quasi certo che ho preso le misure di prevenzione corrette.

    Per decidere se continuerò a giocare con questo progetto di giocattoli, mi piacerebbe sapere cosa rischio davvero di farlo. Ad esempio, in che misura sono minacciati anche gli altri computer collegati alla mia rete? Alcuni di questi computer sono utilizzati da persone con conoscenze ancora minori di quelle che eseguono Windows.

    Qual è la probabilità che mi trovi nei guai se seguo le linee guida di base come password complessa, accesso root disabilitato per ssh, porta non standard per ssh e possibilmente disabilitando il login della password e usando una delle regole fail2ban, denyhosts o iptables?

    Detto in altro modo, ci sono alcuni grandi lupi cattivi che dovrei temere o si tratta principalmente di scacciare gli script kiddies?

    Alfred dovrebbe attenersi a soluzioni di terze parti, o la sua soluzione fai-da-te è sicura?

    La risposta

    Il collaboratore di SuperUser TheFiddlerWins rassicura Alfred che è abbastanza sicuro:

    IMO SSH è una delle cose più sicure da ascoltare su Internet. Se sei davvero preoccupato di ascoltarlo su una porta di fascia alta non standard. Avrei ancora un firewall (a livello di dispositivo) tra il tuo box e l'attuale Internet e userò semplicemente il port forwarding per SSH, ma questa è una precauzione contro altri servizi. SSH è dannatamente solido.

    io avere alcune persone hanno colpito occasionalmente il server SSH di casa (aperto a Time Warner Cable). Non ha mai avuto un impatto reale.

    Un altro collaboratore, Stephane, sottolinea quanto sia facile proteggere ulteriormente SSH:

    L'impostazione di un sistema di autenticazione a chiave pubblica con SSH è davvero banale e richiede circa 5 minuti per l'installazione.

    Se imponi a tutte le connessioni SSH di utilizzarlo, renderà il tuo sistema abbastanza resistente quanto puoi sperare senza investire un sacco in un'infrastruttura di sicurezza. Francamente, è così semplice ed efficace (finché non hai 200 account - quindi diventa disordinato) che non usarlo dovrebbe essere un reato pubblico.

    Infine, Craig Watson offre un altro consiglio per minimizzare i tentativi di intrusione:

    Gestisco anche un server git personale che è aperto al mondo su SSH, e ho anche gli stessi problemi di forza bruta che hai, quindi posso simpatizzare con la tua situazione.

    TheFiddlerWins ha già affrontato le principali implicazioni sulla sicurezza di avere SSH aperto su un IP accessibile pubblicamente, ma il migliore strumento IMO in risposta ai tentativi di forza bruta è Fail2Ban - software che monitora i tuoi file di log di autenticazione, rileva i tentativi di intrusione e aggiunge regole firewall al locale della macchinaiptables firewall. Puoi configurare sia il numero di tentativi prima di un ban che la durata del ban (il mio valore predefinito è 10 giorni).


    Hai qualcosa da aggiungere alla spiegazione? Sound off nei commenti. Vuoi leggere più risposte dagli altri utenti di Stack Exchange esperti di tecnologia? Controlla la discussione completa qui.