Perché cambiare la porta ssh predefinita?


Risposte:


27

Il motivo più probabile è rendere più difficile per le persone che cercano casualmente di forzare qualsiasi accesso SSH che riescono a trovare. La mia macchina con connessione a Internet utilizza la porta SSH predefinita e i miei registri erano pieni di cose come questa (estratto da un file di registro reale):

sshd[16359]: Invalid user test from 92.241.180.96
sshd[16428]: Invalid user oracle from 92.241.180.96
sshd[16496]: Invalid user backup from 92.241.180.96
sshd[16556]: Invalid user ftpuser from 92.241.180.96
sshd[16612]: Invalid user nagios from 92.241.180.96
sshd[16649]: Invalid user student from 92.241.180.96
sshd[16689]: Invalid user tomcat from 92.241.180.96
sshd[16713]: Invalid user test1 from 92.241.180.96
sshd[16742]: Invalid user test from 92.241.180.96
sshd[16746]: Invalid user cyrus from 92.241.180.96
sshd[16774]: Invalid user temp from 92.241.180.96
sshd[16790]: Invalid user postgres from 92.241.180.96
sshd[16806]: Invalid user samba from 92.241.180.96

In questi giorni uso DenyHosts per bloccare gli IP che non riescono ad autenticarsi troppe volte, ma è probabilmente altrettanto semplice cambiare porta; praticamente tutti gli attacchi di forza bruta di questo tipo non infastidiranno la scansione per vedere se il tuo SSH è in ascolto su un'altra porta, supporranno solo che non ne stai eseguendo uno e vai avanti


15

No, è una tattica di sicurezza per oscurità .

Se la tua configurazione sshd non è abbastanza adatta per affrontare stupidi script kiddie che provano solo la porta 22, hai comunque un problema.

Una reazione più razionale sarebbe:

  • assicurati che i tuoi utenti stiano usando buone password che sono difficili da indovinare / forza bruta
  • disabilitare l'autenticazione con password (almeno per account importanti) e usare solo l'autenticazione con chiave pubblica
  • attenzione ai problemi e agli aggiornamenti di sicurezza ssh

Alcune persone potrebbero anche essere infastidite dal rumore che sshd scrive nel registro di sistema, ad esempio:

Jan 02 21:24:24 example.org sshd[28396]: Invalid user guest from 212.129.23.128
Jan 02 21:24:24 example.org sshd[28396]: input_userauth_request: invalid user guest [preauth]
Jan 02 21:24:24 example.org sshd[28396]: error: Received disconnect from 212.129.23.128: 3: com.jcraft.jsch.JSchException: Auth fail [preauth]
Jan 02 21:24:24 example.org sshd[28398]: Invalid user ubnt from 212.129.23.128
Jan 02 21:24:24 example.org sshd[28398]: input_userauth_request: invalid user ubnt [preauth]
Jan 02 21:24:24 example.org sshd[28398]: error: Received disconnect from 212.129.23.128: 3: com.jcraft.jsch.JSchException: Auth fail [preauth

Potrebbe quindi essere la tentazione di oscurare la porta sshd o di utilizzare una soluzione di blocco automatico (come DenyHosts, Fail2ban o BlockHosts) al fine di aumentare nuovamente il rapporto segnale-rumore .

Ma esistono alternative migliori. Ad esempio, puoi configurare il tuo demone syslog in modo tale che il rumore del registro sshd sia scritto solo - diciamo - /var/log/sshd-attempts.loge il segnale (cioè i messaggi rimanenti del registro sshd) sia scritto su /var/log/messagesecc. Come prima.

L'implementazione di strumenti di blocco automatico dovrebbe essere considerata attentamente perché l'aggiunta di maggiore complessità ai sistemi rilevanti per la sicurezza significa anche aumentare il rischio di sfruttamento . E infatti, nel corso degli anni, ci sono diversi report sulle vulnerabilità DoS per ogni DenyHosts , Fail2ban e BlockHosts .


4
Non sono davvero d'accordo con questo "è la sicurezza per oscurità", penso che quella risposta sia un errore comune in questo caso. @ Il ragionamento di Michael generalmente mostra che è un motivo migliore per averlo altrove. È principalmente solo per sbarazzarsi di tutti gli attacchi in bottiglia con script. Non significa necessariamente che tu abbia paura di loro, o consideralo efficace contro un determinato attaccante. So di non essermi mai preoccupato che entrassero davvero. Ma tutta l'innesto di tronchi era fastidioso.
xenoterracide,

1
@xenoterracide: se sei preoccupato solo della leggibilità dei tuoi file di registro, allora ci sono altre alternative migliori per escludere il rumore invece di cambiare la porta come tattica di oscurità, che era la domanda. Per quanto riguarda il blocco IP, che non faceva parte della domanda: si noti che aggiungere maggiore complessità ai sistemi rilevanti per la sicurezza significa anche aumentare il rischio di sfruttamento. Consideriamo ad esempio seclists.org/fulldisclosure/2007/Jun/121 ossec.net/main/attacking-log-analysis-tools . Sì, questo è stato influenzato da DenyHosts.
maxschlepzig,

1
C'è molto di più della semplice leggibilità in mente. Una modifica della porta correttamente documentata non è sicurezza per oscurità.
xenoterracide,

4

La modifica della porta SSH è principalmente teatro della sicurezza . Ti dà la sensazione sfocata di aver fatto qualcosa. Hai nascosto la porta SSH sotto lo zerbino.

Se esegui un server SSH su Internet, vedrai molti tentativi di accesso non riusciti nei tuoi registri, da robot che cercano password stupidamente deboli, chiavi deboli e exploit noti nelle versioni precedenti del server. I tentativi falliti sono proprio questo: tentativi falliti. Per quanto riguarda la valutazione della tua vulnerabilità, sono completamente irrilevanti. Quello di cui devi preoccuparti sono i tentativi di intrusione riusciti e non li vedrai nei tuoi registri.

La modifica della porta predefinita ridurrà il numero di accessi da parte di tali bot, ma ciò sventa solo gli attaccanti meno sofisticati che vengono fermati da qualsiasi sicurezza decente (aggiornamenti di sicurezza applicati regolarmente, password ragionevolmente forti o autenticazione password disabilitata). L'unico vantaggio è la riduzione del volume dei registri. Se questo è un problema, considera qualcosa come Denyhosts o Fail2ban per limitare la velocità di connessione, ma farà anche bene la larghezza di banda.

La modifica della porta predefinita presenta uno svantaggio principale: rende meno probabile la possibilità di accedere da dietro un firewall. È più probabile che i firewall lascino passare i servizi sulla loro porta predefinita piuttosto che su qualche altra porta casuale. Se non si esegue un server HTTPS, prendere in considerazione la possibilità di ascoltare SSH anche sulla porta 443 (o reindirizzare le richieste TCP in arrivo dalla porta 443 alla porta 22), poiché alcuni firewall consentono il traffico che non possono decodificare sulla porta 443 perché sembra come HTTPS.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.