Perché sshd consentirebbe l'accesso come root per impostazione predefinita?


7

Attualmente sto lavorando per rafforzare i miei server contro l'hacking, tra le altre cose, sto ricevendo un sacco di tentativi di accedere come root su SSH. Mentre ho implementato fail2ban, mi chiedo, perché per impostazione predefinita gli accessi root sarebbero consentiti? Anche con le distribuzioni non sudo, posso sempre accedere come un normale utente e passare - quindi mi chiedo che ci sia un chiaro vantaggio nel consentire l'accesso root su ssh, o è solo qualcosa che nessuno si preoccupa di cambiare?

Risposte:


8

Vi è un chiaro vantaggio nel consentire l'accesso root su ssh

Esistono alcuni sistemi di backup che necessitano di root sul sistema remoto per eseguire effettivamente un backup. Non è raro vedere cose configurate con autenticazione basata su chiave per eseguire attività di manutenzione su sistemi remoti.

Mi auguro vivamente che l'impostazione predefinita venga modificata da PermitRootLogin yesalmeno PermitRootLogin without-password, ciò consentirebbe solo l'autenticazione basata su chiave. L'autenticazione con password remota per l'account root non è quasi mai necessaria.

Sta diventando più comune sui sistemi (come Ubuntu) che il sistema sia configurato con un account root con una password disabilitata. Non vi sono molti rischi nell'impostazione predefinita poiché non è possibile autenticarsi direttamente su un account con una password disabilitata.

Considera anche che un tentativo di forza bruta di accedere in remoto al root tramite ssh ha una probabilità molto bassa di avere successo se hai un account root con una password sufficientemente complessa. La disabilitazione dell'account di root fornisce un ulteriore livello di sicurezza, ma potrebbe non essere necessario se si dispone di una password complessa. Se si combina una password complessa con strumenti reattivi come denyhosts e fail2ban di solito non c'è quasi alcun rischio che un tentativo di forzare la password della radice funzionerà.

È sempre buona norma rafforzare il sistema dopo l'installazione, in base al rischio e ai requisiti della rete. Un sistema non critico e privo di dati utente non necessita realmente dello stesso livello di protezione del sistema che archivia le cartelle cliniche o bancarie.


2

Non ne sono sicuro, ma presumo che volessero assicurarsi che le persone che eseguivano installazioni straniere potessero accedere. Potrebbe essere necessario che il primo accesso sia root poiché non ci sono ancora altri utenti.

Tuttavia, è necessario assicurarsi di disabilitare l'accesso come opzione root nella configurazione sshd dopo aver creato l'utente e avergli concesso le autorizzazioni sudo.

Consiglio anche di cambiare la porta SSH con qualcosa di diverso da 22. Anche se non rende la tua macchina più sicura, blocca tutte quelle richieste dispendiose / fastidiose.


Non sono davvero d'accordo con il passaggio dalle porte standard. Usa il filtro pacchetti.
Warner,

Veramente? Cosa c'è di male? Ho appena iniziato a farlo perché ho visto amministratori rispettati farlo ...
Xeoncross

È qualcosa che le persone adottano eseguendo server condivisi senza filtro o segregazione di rete.
Warner,

@Warner ma, non capisco, passare dalle porte standard non sarebbe un modo abbastanza semplice per la maggior parte delle persone di respingere la maggior parte dei tentativi?
Camilo Martin,

2

Prendi in considerazione la prevenzione degli accessi root come protezione aggiuntiva. Alcuni anni fa la forza bruta era al suo apice, oggigiorno, tendono a cercare le vulnerabilità attraverso ciò che possono vedere dai demoni (apache, pureftpd, ...). Prevenire gli accessi root diventa un'ottima idea se domani viene trovato un exploit con SSHD. Mentre SSHD è maturo e sicuro, non lo sai mai. Ultimamente gli exploit sono stati più diretti verso l'escalation dei privilegi con il kernel o usando un'app di terze parti con il kernel in modo da impedire che i login di root non avrebbero cambiato nulla.

La distro basata su Debian ha già fatto il passaggio mentre la distro basata su RedHat lo suggerisce (se leggi i loro documenti sulle migliori pratiche)


1

Bene, perché root è un utente valido e sshd fa il suo lavoro permettendolo. Su OpenBSD (stessi ragazzi di OpenSSH), ad esempio, non ti viene chiesto di creare un utente durante l'installazione, quindi devi usare root per accedere al tuo box.

Alcune distribuzioni basate su desktop ti costringono a creare utenti aggiuntivi, ma per i server in realtà non ne hai bisogno.

Inoltre, questi argomenti che sudo o su sono più sicuri dell'accesso come root sono un grande mito. Su Ubuntu, ad esempio, l'utente può eseguire QUALSIASI comando utilizzando sudo per impostazione predefinita, quindi qualsiasi utente malintenzionato che accede può anche eseguire QUALSIASI comando come root. Abbastanza inutile dal punto di vista della sicurezza.


d'altra parte, un utente malintenzionato dovrebbe indovinare sia il nome utente che la password, invece di forzare bruscamente la password. Vorrei anche notare che sudo è limitato alle persone nel file sudoers - quindi è solo il primo utente nella maggior parte dei casi
Journeyman Geek

0

È praticamente specifico per la distribuzione. Alcuni lo consentono, altri no.

Se gestissi una distro, configurerei il sistema per essere il più rigido possibile al momento dell'installazione. È meglio dimenticare di abilitare alcune funzionalità piuttosto che dimenticare di disabilitare alcune funzioni.


Il sistema di indurimento il più possibile diventa difficile se si sta tentando di utilizzare il sistema sul desktop da molti utenti finali. È necessario compromettere e rafforzare il sistema quanto basta per proteggere gli utenti nel caso predefinito, ma consentire agli utenti esperti di modificare il sistema in base alle proprie esigenze.
Zoredache,
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.