it-swarm.dev

Devo cambiare la porta SSH predefinita sui server Linux?

C'è qualche vantaggio nel cambiare la porta SSH, ho visto persone farlo, ma non riesco a trovare il motivo.

Se hai una password complessa e/o un certificato, è utile per qualsiasi cosa?

Modificare:

Dovrei anche menzionare che sto usando le regole di iptables per limitare gli attacchi di forzatura bruta, sono consentiti solo 5 tentativi di accesso al minuto per indirizzo IP.

100
sharp12345

Internet è un luogo selvaggio e spaventoso, pieno di malcontenti le cui motivazioni vanno dalla curiosità fino all'impresa criminale. Questi svantaggi sono costantemente alla ricerca di computer che eseguono servizi che sperano di sfruttare; di solito i servizi più comuni come SSH, HTTP, FTP, ecc. Le scansioni in genere rientrano in una di due categorie:

  1. La ricognizione esegue la scansione per vedere quale indirizzo IP ha quei servizi aperti.
  2. Sfruttare le scansioni contro gli indirizzi IP che sono stati trovati in esecuzione su un servizio specifico.

Considerando quanto è grande Internet, in genere è impossibile guardare su ogni porta di ogni indirizzo IP per trovare ciò che è in ascolto ovunque. Questo è il punto cruciale del consiglio di cambiare la porta predefinita. Se queste persone disaffezionate vogliono trovare server SSH, inizieranno a sondare ciascun indirizzo IP sulla porta 22 (possono anche aggiungere alcuni alternative comuni come 222 o 2222). Quindi, una volta che hanno il loro elenco di indirizzi IP con la porta 22 aperta, inizieranno la loro forza bruta di password per indovinare nomi utente/password o lanciare il loro kit di exploit preferito e iniziare a testare vulnerabilità note (almeno a loro) sul sistema di destinazione.

Ciò significa che se cambi la tua porta SSH in 34887, allora lo sweep ti passerà, probabilmente con il risultato che non sarai preso di mira dal break-in di follow-up.

Sembra roseo vero? Ci sono alcuni svantaggi però.

  1. Supporto client: tutti coloro che si connettono al server dovranno conoscere e utilizzare la porta modificata. Se ci si trova in un ambiente fortemente gestito, questa configurazione può essere trasferita ai client, oppure se si dispone di pochi utenti sufficienti dovrebbe essere facile comunicare.
  2. Eccezioni alla documentazione: la maggior parte dei dispositivi di rete, come firewall e IDS, sono pre-configurati per l'esecuzione di servizi comuni su porte comuni. Eventuali regole firewall relative a questo servizio su questo dispositivo dovranno essere ispezionate e possibilmente modificate. Allo stesso modo, le firme IDS verranno modificate in modo da eseguire solo l'ispezione SSH sulla porta 22. Sarà necessario modificare ogni firma, ogni volta che vengono aggiornate, con la nuova porta. (Come punto dati ci sono attualmente 136 firme VRT e ET snort che coinvolgono SSH).
  3. Protezioni del sistema: i Linux moderni spesso vengono forniti con sistemi MAC e/o RBAC a livello di kernel (ad esempio SELinux su RedHat basato o AppAmor su Debian basato) e che sono progettati per consentire alle applicazioni di fare esattamente ciò che intendono fare. Ciò potrebbe variare dall'accesso al /etc/hosts file, per scrivere su un file specifico o inviare un pacchetto in rete. A seconda di come è configurato, questo sistema può, per impostazione predefinita, vietare a sshd di collegarsi a una porta non standard. Dovresti mantenere una politica locale che lo consenta.
  4. Monitoraggio di altre parti: se si dispone di una divisione di sicurezza delle informazioni esterna o di un monitoraggio in outsourcing, sarà necessario renderli consapevoli della modifica. Quando eseguo una valutazione della sicurezza o analizzo i log in cerca di minacce alla sicurezza, se vedo un server SSH in esecuzione su una porta non standard (o un server SSH su un non UNIX/Linux per quel che riguarda) lo considero come una potenziale backdoor e invocare la parte di sistema compromessa della procedura di gestione degli incidenti. A volte viene risolto in 5 minuti dopo aver effettuato una chiamata all'amministratore e mi è stato detto che è legittimo, a quel punto aggiorno la documentazione, altre volte è davvero la cattiveria che viene curata. In ogni caso, ciò può comportare tempi di inattività per te o, almeno, una telefonata snervante quando rispondi al telefono e senti "Ciao, sono Bob dall'ufficio di sicurezza delle informazioni. Ho alcune domande da farti ".

Prima di cambiare porta devi tener conto di tutto ciò in modo da sapere che stai prendendo la decisione migliore. Alcuni di questi svantaggi potrebbero non essere applicabili, ma alcuni lo faranno sicuramente. Considera anche cosa stai cercando di proteggerti. Spesso è semplicemente più semplice configurare il firewall per consentire l'accesso a 22 solo da host specifici, al contrario di tutta Internet.

86
Scott Pack

Sì, può essere, non aumentando la sicurezza ma è possibile ridurre la quantità di tentativi di accesso non riusciti sul server. Cambio sempre il mio SSH predefinito per ridurre gli avvisi che ricevo da ossec. Inoltre, se usi una porta davvero casuale e qualcuno cerca ancora di accedere al tuo computer, è più probabile che si tratti di un attacco mirato piuttosto che di uno scanner casuale.

14
Lucas Kauffman

Come altri hanno detto, mettere SSH su una porta diversa da 22 renderà più improbabile che venga colpito con una scansione casuale. Verrai preso di mira se l'attaccante sta cercando di ottenere tuo server, non alcun server.

Ho un server con ssh associato a una porta alta casuale. E ho un honeypot ssh sulla porta 22, che risponderà a ogni tentativo di accesso con un messaggio di "accesso negato".

Non penso che sia un difesa dall'oscurità, ma difesa in profondità: per attaccare il mio server, l'attaccante deve prima trovare la porta. Se ho alcuni falsi honeypot (molte porte che reindirizzano allo stesso honeypot), l'attaccante colpirà molti falsi e non avrebbe modo di sapere se ha colpito il vero ssh o no.

È solo la difesa, però. Ho anche portsentry attivo, quindi se qualcuno prova un portcan, verrà bloccato per un'ora. Se forzano la password sulla destra ssh, riceveranno "accesso negato" per un'ora. Se indovinano correttamente la password, verrà presentato un prompt PAM che richiede il token di autenticazione di Google.

Il costo per cambiare il porto è molto basso e penso che gli aspetti negativi siano giustificati dagli aspetti positivi.

9
ThoriumBR

Poiché quasi tutti parlano principalmente di svantaggi (che sono reali), vorrei condividere qui diversi vantaggi:

  • vuoi davvero evitare attacchi automatici. A meno che tu non sia un utente di alto profilo, la stragrande maggioranza degli attacchi non sarà mirata a te, ma agli attacchi automatizzati del migliore sforzo che proverebbero solo le porte predefinite. Evitarli aiuta in diversi modi:

    • riduci la superficie di attacco (la maggior parte degli attacchi automatici)
    • riduci l'esposizione a causa di bug nelle librerie sshd o crypto che utilizza
    • alcuni bug come heartbleed consentono di sfruttare i server semplicemente connettendosi a una porta aperta, anche senza conoscere password o chiavi. Usando porte non standard si evita questo.
    • alcuni bug come chiavi private deboli consentono agli attacchi automatici di creare il tuo server prima di applicare le patch. L'uso di porte non standard evita ancora le prime ondate di aggressori e ti dà più tempo per patchare.
    • riduci l'ingombro nei tuoi registri, il che ti consente di risparmiare molto tempo di amministrazione durante la revisione dei registri, permettendoti di concentrare i tuoi sforzi su attacchi mirati più problematici
    • fornisce una protezione migliore con meno lavoro di kludge di cui si parla in aggiornamento (blocco dell'IP dopo 5 accessi errati - che consentirà alcuni degli attacchi soprattutto se l'IP continua a cambiare; specialmente nel mondo IPv6 in cui ogni utente malintenzionato avrà miliardi di loro da risparmiare; e il kludge può produrre falsi positivi che bloccano gli utenti legittimi e producono più chiamate di supporto)
    • a volte, anche le buone password vengono compromesse (tramite altri bug altrove, forse, o utenti negligenti che le inseriscono su macchine keylogged) e archiviate nei dizionari utilizzati per gli attacchi successivi. Ancora una volta, la porta casuale eviterà la stragrande maggioranza di questa classe di attacchi automatici (la maggior parte dei keylogger salverà solo coppie nome utente/password e non cercherà le porte nelle configurazioni).
  • qualunque cosa l'attaccante non si aspetti, lo spegne sempre completamente, crea più lavoro per lui o ti rende un bersaglio meno interessante. E aumenta anche il tempo necessario per rilevare e difendersi dagli attacchi.

  • l'esecuzione su porta> 1024 non richiede l'esecuzione di sshd come root, il che consente di eseguirlo è solo un utente per il quale è necessario, evitando un'intera classe di bug (vero anche quando alcune implementazioni di sshd fanno molta attenzione a funzionare con privilegi ridotti quando non necessario).

7
Matija Nalis

Suppongo che dipenda da quanto sarai veloce a patchare il tuo server e se hai qualche tipo di firewall davanti al server.

Se stai lasciando il server aperto al mondo e non hai nulla di configurato per avvisarti o per installare automaticamente le patch OpenSSH, ti suggerirei di spostare il server su porte casuali con un numero elevato.

Alla fine, anche se spostare il numero di porta non scoraggia tutti, è sicuro che scoraggia i kiddie degli script che stanno controllando la porta 80, 22, 23 ecc. Ma non se qualcuno dovesse eseguire una scansione 1-65535.

2
David Rothera

La modifica della porta interrompe solo gli attacchi automatici contro SSH e alcuni script kiddie. Se qualcuno ti stesse prendendo di mira, allora potrebbero multare la nuova porta SSH. Il vantaggio è che interrompe i tentativi di accesso non riusciti nei registri. In genere ho qualcosa come Logwatch e SSH su una porta diversa in esecuzione con PasswordAuthentication impostato su no nel mio sshd_config.

2
Jamie H

Come altri hanno già notato, cambiare la porta SSH predefinita non ti guadagna molto dal punto di vista della sicurezza. Tuttavia, può comunque essere vantaggioso farlo se si intende connettersi alla macchina da una rete in cui gli amministratori hanno bloccato la porta 22. (Molte scuole, luoghi di lavoro e hotspot WiFi gratuiti bloccano tutto il traffico in uscita tranne quello predefinito Porte DNS, HTTP e HTTPS.) In questo caso, cambiando la porta SSH in 53, 80 o 443 (o facendo in modo che il router inoltri una di quelle porte a 22) di solito ti permetterà di accedere alla tua macchina quando studi/lavori/in viaggio.

In rari casi, queste reti potrebbero non semplicemente bloccare le porte, ma anche ispezionare il traffico per filtrare le connessioni ssh. Per questa situazione è necessario indagare su altre alternative .

2
Psychonaut

Questa è una domanda filosofica: "il controllo X è utile?" E come sottolineato la migliore risposta, dovresti anche considerare "quali sono i costi (supporto clienti, esenzioni doc, supporto di sistema, supporto di monitoraggio e aggiungerei costi diretti, costi di licenza, ecc.) Del controllo X?"

Tutto è utile in determinati contesti. È una buona idea chiedersi in quale contesto ci si trova. A volte il contesto è di conformità: si sta distribuendo il controllo X per soddisfare un requisito particolare. "Devo spostare la mia porta ssh perché la politica di sistema proibisce agli ascoltatori sulla porta 22." Quindi esegui l'operazione, presenta un'eccezione o lavora per modificare il criterio. [Imho, sarebbe una politica poco saggia.]

Qui, il contesto è probabilmente "Sono un ragazzo a caso, con un host su una rete incontrollata e non voglio perdere il controllo della mia scatola". Gli attacchi hanno sempre una fase di indagine - se l'indagine è "invia un SYN sulla porta 22 e vedi chi risponde", allora stai proteggendo da quel vettore di minaccia specifico. (Se l'indagine è "esegui uno sweep del porto, raccogli banner e vedi se si presenta qualcosa di interessante", il tuo controllo non ha alcun effetto.) Ma ora hai lavorato molto per te stesso - se stai usando uno strumento per collegarsi al server, è necessario capire come lavorare su quella porta non standard - e con alcuni strumenti, potrebbe non essere nemmeno possibile. A conti fatti, e in questo contesto, non consiglierei di cambiare le porte.

Un vantaggio notato è stata la riduzione degli eventi di registro associati a falsi positivi. In realtà lo trovo negativo! Il flusso costante di attacchi in entrata sulla porta 22 può effettivamente essere utile: se si fermano, sai che c'è un problema con il tuo feed Internet. Penso che il vantaggio percepito sia falso: la risposta giusta è ottimizzare il sistema di rilevamento delle anomalie per filtrare i tentativi di accesso non riusciti da reti esterne.

2
Robert Weaver