SSH no funciona con instalación nueva

48

Recientemente liberé un viejo modelo B del loft, puse NOOBS en una tarjeta SD e instalé la última versión de Raspbian. Lo arranqué, intenté usar SSH desde mi Mac, pero obtuve:

ssh: connect to host 192.168.1.248 port 22: Connection refused

En primer lugar, resolví esto al ejecutar sudo ssh restart, pero ahora cada vez que reinicio, tengo que reiniciar el servicio ssh antes de poder volver a ingresar, lo que obviamente no es práctico. ¿Algo que pueda hacer para arreglarlo de manera más permanente?

Pezholio
fuente
3
Posible duplicado de Prepararse para ssh sin pantalla
raphael

Respuestas:

84

Citando la documentación :

A partir de la versión de noviembre de 2016, Raspbian tiene el servidor SSH deshabilitado de forma predeterminada. Deberá habilitarlo manualmente.

Para habilitar SSH en máquinas a través de la consola:

Ingrese sudo raspi-configen la terminal, primero seleccione Interfacing Options, luego navegue hasta ssh, presione Entery seleccione Enable or disable ssh server.

Para habilitar SSH para máquinas sin cabeza:

Para la configuración sin cabeza, SSH se puede habilitar colocando un archivo llamado ssh, sin ninguna extensión, en la partición de arranque de la tarjeta SD.

techraf
fuente
66
Probé la configuración sin cabeza en Raspbian Stretch Desktop del 2018-03-14 y parece que ya no funciona, funcionaba con versiones anteriores.
JBaczuk
El mismo problema aquí con la creación sin cabeza del ssharchivo en el arranque no parece funcionar incluso cuando el mensaje se muestra en el arranque
Sander Visser
@JBaczuk Estoy experimentando lo mismo. ¿Ya lo arreglaste?
Aaron
@JBaczuk Ahora se encuentra en "opciones de interfaz" (fuente: raspberrypi.org/forums/viewtopic.php?t=177883 )
Aaron
@ Aaron, está bien, pero ¿cómo se hace esto con una configuración sin cabeza?
JBaczuk
11

Recientemente ha habido una actualización de seguridad para Raspberry Pi. Aquí hay un artículo de https://www.raspberrypi.org/blog/a-security-update-for-raspbian-pixel/

Del artículo de la fundación:

¿Que ha cambiado?

Primero, a partir de ahora SSH estará deshabilitado de forma predeterminada en nuestras imágenes. SSH (Secure SHell) es un protocolo de red que le permite iniciar sesión de forma remota en una computadora Linux y controlarla desde una línea de comando remota. Como se mencionó anteriormente, muchos propietarios de Pi lo usan para instalar un Pi sin cabeza (sin pantalla ni teclado) y controlarlo desde otra PC.

En el pasado, SSH estaba habilitado de manera predeterminada, por lo que las personas que usaban su Pi sin cabeza podían actualizar fácilmente su tarjeta SD a una nueva imagen. Activar o desactivar SSH siempre ha requerido el uso de raspi-config o la aplicación de configuración Raspberry Pi, pero para acceder a ellos, necesita una pantalla y un teclado conectados al Pi, lo cual no es el caso en aplicaciones sin cabeza. Por lo tanto, proporcionamos un mecanismo simple para habilitar SSH antes de que se inicie una imagen.

La partición de arranque en un Pi debe ser accesible desde cualquier máquina con un lector de tarjetas SD, en Windows, Mac o Linux. Si desea habilitar SSH, todo lo que necesita hacer es colocar un archivo llamado ssh en el directorio / boot /. El contenido del archivo no importa: puede contener cualquier texto que desee o incluso nada. Cuando el Pi arranca, busca este archivo; si lo encuentra, habilita SSH y luego elimina el archivo. SSH todavía se puede activar o desactivar desde la aplicación de configuración Raspberry Pi o raspi-config; esta es simplemente una forma adicional de activarlo si no puede ejecutar fácilmente ninguna de esas aplicaciones.

El riesgo con un puerto SSH abierto es que alguien puede acceder e iniciar sesión; Para hacer esto, necesitan una cuenta de usuario y una contraseña. Fuera de la caja, todas las instalaciones de Raspbian tienen la cuenta de usuario predeterminada 'pi' con la contraseña 'raspberry'. Si habilita SSH, realmente debería cambiar la contraseña para el usuario 'pi' para evitar que un hacker use los valores predeterminados. Para alentar esto, hemos agregado advertencias al proceso de arranque. Si SSH está habilitado y la contraseña para el usuario 'pi' sigue siendo 'frambuesa', verá un mensaje de advertencia cada vez que inicie el Pi, ya sea en el escritorio o en la línea de comandos. No estamos exigiendo cambios de contraseña, pero se le advertirá cada vez que inicie si su Pi está potencialmente en riesgo.

Nuestra esperanza es que estos cambios (relativamente menores) no causen demasiados inconvenientes, pero harán que sea mucho más difícil para los piratas informáticos atacar el Pi.

Lo que esto básicamente significa es que recientemente ha habido una gran cantidad de piratería de dispositivos que utilizan conexiones remotas como SSH. Debido a esto, SSH está deshabilitado por defecto. Para solucionar esto, todo lo que tiene que hacer es crear un archivo llamado ssh en el /boot/directorio. Este archivo llamado ssh puede contener texto o nada si lo desea. Luego, usando el sudo raspi-config commanden el terminal puede habilitar ssh nuevamente.

Además, recomienda que cambie su contraseña si era algo simple como la contraseña a algo más difícil de descifrar usando el passwdcomando.

Rey globo
fuente
2
"recientemente ha habido una gran cantidad de piratería de dispositivos" -> Probablemente mucha gente escuchó sobre esto . Aunque Pis probablemente no estuvo involucrado, también podría haberlo hecho ya que ejecutar SSH de forma predeterminada con acceso abierto a una cuenta muy privilegiada a través de una contraseña "preestablecida de fábrica" ​​es exactamente el tipo de cosa que fue explotada.
Ricitos de oro
1
Los ataques son apenas "recientes". He estado viendo intentos de intrusión en mis registros durante aproximadamente tres años.
Mark
¡Tal vez no mucho, pero ha habido alguna piratería de Raspberry Pis!
Rey Balloonion
2

systemctl solución

Si ya tiene un shell en Pi a través de un método que no sea SSH, como pantalla + teclado o UART (consulte esta publicación ), también puede ejecutar:

sudo systemctl enable ssh
sudo service sshd start

en lugar de hacerlo de forma interactiva sudo raspi-config.

/boot/ssh archivo mágico

Si aún no tiene un shell en el Pi, inserte la tarjeta SD en su host y cree un archivo vacío mágico llamado ssharchivo en la boot/partición (el primero).

En los hosts Ubuntu, se monta automáticamente y puede hacer simplemente:

sudo touch /media/$USER/boot/ssh

que puedes confirmar con:

lsblk

que 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

Probado en Raspbian Lite 2018-11-13, la configuración de prueba completa se describe más adelante en: ¿ SSH a RPi sin una conexión de red?

Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
fuente
0

Sí, como dijo @tecraf sshestá deshabilitado de forma predeterminada, pero la ubicación de configuración ha cambiado. Para habilitar SSH en su máquina a través de la consola:

Ingrese sudo raspi-configen la terminal, vaya a 5-Interfacing Options, luego navegue hasta P2-ssh, presione Enter y use tabpara habilitar o deshabilitar ssh server. Luego sudo shutdown -r nowpara reiniciar. (el cierre de la nota lateral -hahora no se reiniciará)

Iliass
fuente