Ubuntu 14.04 abilitare il login di root via ssh

Con il nuovo Ubuntu 14.04 non è più possibile, nella configurazione di default, collegarsi da remoto tramite ssh con l’utente root.
Benché questa sia una corretta politica per una infrastruttura sicura certamente ci sono molti casi in cui si desidera l’esatto contrario.
Ho penato un pochino a trovare cosa bisogna fare e, nell’intento di risparmiare qualche ora a qualcuno di voi, ecco qui la soluzione: il file da editare è:

/etc/ssh/sshd_config

che potete modificare con un classico:

sudo nano /etc/ssh/sshd_config

Il parametro da cercare è:

PermitRootLogin without-password

che, al contrario della semantica espressa, che ad una prima lettura farebbe pensare che all’utente root è permesso fare il login addirittura senza password, di fatto invece impedisce il collegamento al suddetto utente tramite ssh. Per ovviare al problema basta correggere il parametro in :

PermitRootLogin yes

ricordatevi di riavviare il servizio per rendere effettiva la modifica, basta fare:

sudo service ssh restart

certamente anche il classico reboot può andar bene fate come meglio credete.

Alla prossima

Andrea

10 risposte a “Ubuntu 14.04 abilitare il login di root via ssh”

  1. Ciao Andrea!
    Ho fatto come dici ma non compare nulla!
    Quando da terminale digito”sudo nano /etc/ssh/sshd_config” la pagina dell’editor nano è vuota!Non c’è nessuna scritta da modificare.
    Ho anche provato ad aggiungerla e salvarla ma non da l’opzione per entrare da root al riavvio.Rimane com’è!
    Cosa mi consigli di fare?

    1. L’articolo si riferisce ad ubuntu 14.04 server 64 bit.
      Tu che versione hai ?
      Prova a cercare nella directory etc se trovi la directry ssh, eventualmente poi posta l’elenco dei file che trovi.
      A presto
      Andrea

      1. Ho fatto come mi hai detto.Ho seguito le directory e nel file”sshd_config”non c’è nulla,bianco assoluto.
        Come potrei fare per postartele e fartele visionare personalmente?

  2. Salve!
    Ho una 14.04 64bit desktop. plus remix del prof. antonio cantaro,e volevo abilitare il login di entrata da root ma ancora non riesco a venirne a capo.
    Andro a vedere se si trovano queste directory.cosi potro postarle sul commento.
    Volendo si potrebbero cercare col terminale,ma non so quali comandi impartire.
    Andrea se sei in ascolto,potresti darmi un suggerimento?

  3. Dato che mi parli di un’installazione Desktop deduco che probabilmente stai cercando di collegarti con l’utente root tramite l’interfaccia grafica mentre io, in questo articolo, parlo di come collegarsi con root via ssh cioè a linea di comando con connessione criptata.
    Ho capito bene ?
    Ciao
    Andrea

  4. Si,hai capito perfettamente!
    Pero se non ti dispiace vorrei saperne qualcosa in piu di quello che intendi tu!
    Cioè via ssh a linea di comando con connessione criptata.
    Sono alla prime armi e non per vantarmi ma smanetto gia abbasrtanza bene !
    Quindi a quello che tu potrai spiegarmi vorrei che aggiungesti piu di qualche consiglio
    tecnico e dirmi quale sito link etc. etc. trattano questi argomenti!
    Che sò una spece di scuola online gratuita s’intende).
    Comunque ragazzi ascoltate bene perche sto per pubblicare la maniera che potra permettervi,durante il login di entrare root!
    1)abilitate la passwd root
    2)da terminale:
    “sudo nano /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf INVIO
    3)Sotto l’ultima e unica riga che troverete aggiungete:
    “greeter-show-manual-login:true” salvate e chiudete il file modificato.
    IL gioco e terminato non vi rimane che riavviare e troverete un opzione in piu!
    IL vostro l’ospite e l’opzione “ACCEDI”.
    Digitate root e dopo quando vi chiede la passwd digiterete la passwd precedentemente creata!

    1. In realtà ci possono essere tutti e due.
      Per potersi collegare via ssh ad un sistema occorre che ssh sia presente sia lato server che lato client, come succede, ad esempio, con i siti web: per poter comunicare con un sito web tramite http occorre il programma lato cliente (chrome, firefox, ecc) e un programma lato server (il cosidetto web server, ad esempio apache)
      Il tuo: ssh_config governa i parametri del client, cioè quando da linea di comando vuoi collegarti ad un altro sistema e digiti qualcosa tipo:
      ssh root@myserver.mydomain.local
      mentre sshd_config governa i parametri del server, cioè del software che permette al server “myserver.mydomain.local” di accettare connessioni ssh da altre macchine in rete.
      Nel mio articolo spiego che dalla 14.04 l’accesso di root via ssh ad un server non è più possibile di default cioè una volta installato il server myserver.mydomain.local non puoi più collegarti con: “ssh root@myserver.mydomain.local” a meno che non operi le modifiche che ho indicato nell’articolo.
      Spero di essere stato chiaro.
      Ciao
      Andrea

  5. uso putty da un pc windows x connettermi ad un server di sviluppo locale (VM su esx)
    in effetti nella cartella /etc/ssh trovo sia il file ssh_config che il file sshd_config
    quindi per gestire gli accessi ssh alla VM devo usare sshd_config, mentre il file ssh_config configura una eventuale connessione che faccio usando la VM come client , giusto ?

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *