SSH non funziona con una nuova installazione


48

Di recente ho liberato un vecchio modello B dal loft, ho inserito NOOBS su una scheda SD e ho installato l'ultima versione di Raspbian. L'ho avviato, ho provato a SSH dal mio Mac, ma ho ottenuto:

ssh: connect to host 192.168.1.248 port 22: Connection refused

Ho risolto questo problema in primo luogo eseguendo sudo ssh restart, ma ora ogni volta che eseguo di nuovo l'avvio, devo riavviare il servizio ssh prima di poter ripetere l'accesso, il che ovviamente non è pratico. Qualcosa che posso fare per risolverlo in modo permanente?


3
Possibile duplicato di Prepara per ssh senza schermo
Raffaello

Risposte:


84

Citando la documentazione :

A partire dalla versione di novembre 2016, Raspbian ha il server SSH disabilitato per impostazione predefinita. Dovrai abilitarlo manualmente.

Per abilitare SSH su macchine tramite console:

Inserire sudo raspi-confignel terminale, selezionare prima Interfacing Options, quindi navigare ssh, premere Entere selezionare Enable or disable ssh server.

Per abilitare SSH per macchine senza testa:

Per un'installazione senza testa, SSH può essere abilitato posizionando un file denominato ssh, senza alcuna estensione, nella partizione di avvio della scheda SD.


6
Ho provato l'installazione senza testa su Raspbian Stretch Desktop dal 14-03-2018 e non sembra più funzionare, funzionava con le versioni precedenti.
JBaczuk,

Lo stesso problema qui con la creazione senza testa del sshfile all'avvio non sembra funzionare anche quando il messaggio viene visualizzato all'avvio
Sander Visser

@JBaczuk Sto vivendo la stessa cosa. L'hai già riparato?
Aaron,

@JBaczuk Ora si trova in "Opzioni di interfaccia" (fonte: raspberrypi.org/forums/viewtopic.php?t=177883 )
Aaron

@Aaron, ok, ma come si fa con una configurazione senza testa?
JBaczuk,

11

Recentemente c'è stato un aggiornamento di sicurezza per Raspberry Pi. Ecco un articolo da https://www.raspberrypi.org/blog/a-security-update-for-raspbian-pixel/

Dall'articolo della fondazione:

Cosa è cambiato?

Innanzitutto, da ora in poi SSH sarà disabilitato per impostazione predefinita sulle nostre immagini. SSH (Secure SHell) è un protocollo di rete che consente di accedere in remoto a un computer Linux e controllarlo da una riga di comando remota. Come accennato in precedenza, molti proprietari Pi lo usano per installare un Pi senza testa (senza schermo o tastiera) e controllarlo da un altro PC.

In passato, SSH era abilitato per impostazione predefinita, quindi le persone che utilizzavano Pi senza la testa potevano aggiornare facilmente la propria scheda SD a una nuova immagine. L'attivazione o la disattivazione di SSH ha sempre richiesto l'uso di raspi-config o dell'applicazione Raspberry Pi Configuration, ma per accedervi è necessario uno schermo e una tastiera collegati al Pi stesso, cosa che non accade nelle applicazioni senza testa. Quindi abbiamo fornito un semplice meccanismo per abilitare SSH prima che un'immagine venga avviata.

La partizione di avvio su un Pi dovrebbe essere accessibile da qualsiasi macchina con un lettore di schede SD, su Windows, Mac o Linux. Se vuoi abilitare SSH, tutto ciò che devi fare è mettere un file chiamato ssh nella directory / boot /. Il contenuto del file non ha importanza: può contenere qualsiasi testo che ti piace, o addirittura nulla. Quando il Pi si avvia, cerca questo file; se lo trova, abilita SSH e quindi elimina il file. SSH può ancora essere attivato o disattivato dall'applicazione di configurazione Raspberry Pi o da raspi-config; questo è semplicemente un modo aggiuntivo per accenderlo se non è possibile eseguire facilmente una di queste applicazioni.

Il rischio con una porta SSH aperta è che qualcuno possa accedervi ed effettuare il login; per fare ciò, hanno bisogno di un account utente e una password. Per impostazione predefinita, tutte le installazioni di Raspbian hanno l'account utente predefinito "pi" con la password "raspberry". Se stai abilitando SSH, dovresti davvero cambiare la password per l'utente 'pi' per impedire a un hacker di usare le impostazioni predefinite. Per incoraggiarlo, abbiamo aggiunto avvisi al processo di avvio. Se SSH è abilitato e la password per l'utente 'pi' è ancora 'raspberry', vedrai un messaggio di avviso ogni volta che avvii il Pi, sia sul desktop che sulla riga di comando. Non stiamo imponendo modifiche alla password, ma sarai avvisato ogni volta che avvii se il tuo Pi è potenzialmente a rischio.

La nostra speranza è che questi cambiamenti (relativamente minori) non causino troppi inconvenienti, ma renderanno molto più difficile per gli hacker attaccare il Pi.

Ciò significa fondamentalmente che negli ultimi tempi sono stati effettuati numerosi hacking di dispositivi che utilizzano connessioni remote come SSH. Per questo motivo, SSH è disattivato per impostazione predefinita. Per risolvere questo, tutto ciò che devi fare è creare un file chiamato ssh nella /boot/directory. Questo file chiamato ssh può contenere qualsiasi testo o niente se lo desideri. Quindi, usando il sudo raspi-config commandsul terminale è possibile abilitare nuovamente ssh.

Inoltre, ti consiglia di cambiare la tua password se era qualcosa di semplice come la password in qualcosa di più difficile da decifrare usando il passwdcomando.


2
"Di recente sono stati registrati numerosi hacking di dispositivi" -> Probabilmente molte persone ne hanno sentito parlare . Sebbene Probabilmente Pis non fosse coinvolto, avrebbero potuto esserlo da quando eseguiva SSH per impostazione predefinita con accesso aperto a un account molto privilegiato tramite una password "preimpostata in fabbrica" ​​è esattamente il tipo di cosa che è stata sfruttata.
Riccioli d'oro

1
Gli attacchi non sono quasi "recenti". Vedo tentativi di rodaggio nei miei registri da circa tre anni.
Segna il

Forse non molto, ma c'è stato qualche hacking di Raspberry Pis!
King Balloonion,

2

systemctl soluzione

Se hai già una shell sul Pi attraverso un metodo non SSH come schermo + tastiera o UART (vedi questo post ), puoi anche semplicemente eseguire:

sudo systemctl enable ssh
sudo service sshd start

invece di farlo interattivamente attraverso sudo raspi-config.

/boot/ssh file magico

Se non hai ancora una shell sul Pi, inserisci la scheda SD sul tuo host e crea un file magico vuoto chiamato sshfile nella boot/partizione (il primo).

Sugli host Ubuntu, viene montato automaticamente e puoi fare solo:

sudo touch /media/$USER/boot/ssh

che puoi confermare con:

lsblk

che contiene:

mmcblk0     179:0    0  14.4G  0 disk
├─mmcblk0p1 179:1    0  43.9M  0 part /media/ciro/boot
└─mmcblk0p2 179:2    0  14.4G  0 part /media/ciro/rootfs

Testato su Raspbian Lite 2018-11-13, la configurazione completa del test è ulteriormente descritta in: da SSH a RPi senza una connessione di rete?


0

Sì, come diceva @tecraf sshè disabilitato per impostazione predefinita, ma il percorso di configurazione è cambiato. Per abilitare SSH sul tuo computer tramite la console:

Inserisci sudo raspi-confignel terminale vai a 5-Interfacing Options, quindi vai a P2-ssh, premi Invio e usa tabper abilitare o disabilitare ssh server. Quindi sudo shutdown -r nowriavviare. (l'arresto della nota laterale -hora non si riavvierà)

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.