Utiliza SSH Para Controlar Remotamente tu Raspberry Pi
Poder controlar tu Raspberry Pi desde otra computadora es una parte importante de la curva de aprendizaje del Pi. Hay muchas opciones para acceso remoto, ¿entonces por qué SSH es el protocolo con el que los principiantes deberían empezar? Si eres nuevo en Linux, Raspberry Pi, o simplemente SSH, has llegado al lugar perfecto: creé esta guía para responder a todas tus preguntas sobre este método.
SSH es un protocolo disponible en sistemas Linux que ejecutará comandos desde otra computadora. Necesita ser habilitado primero en la configuración de la Raspberry Pi, y luego un cliente SSH desde otra computadora podrá conectarse a la Raspberry Pi.
Te guiaré a través de todo el proceso, mostrándote cómo activar SSH, encontrar tu dirección IP, y conectarte a la Raspberry Pi desde tu computadora.
Si estás empezando con Raspberry Pi o Linux, tengo algo que puede ayudarte de inmediato.
Descarga mi hoja de trucos de comandos Linux gratis – es una guía de referencia rápida con todos los comandos esenciales que necesitas para avanzar con tu Raspberry Pi. Haz clic aquí para obtenerla gratis!
¿Qué es SSH en Raspberry Pi?
Vamos a empezar desde el principio. Si no tienes idea de qué es SSH, probablemente necesite introducirte algunas cosas antes de darte el procedimiento para usarlo.
SSH significa Secure SHell. Es un protocolo de red común que se utiliza para conectar de una computadora a otra de manera segura. La comunicación entre las dos computadoras está cifrada y se requiere autenticación.
Generalmente lo usan los administradores de sistemas para acceder y gestionar servidores remotos. Como administrador, tenía alrededor de 20 servidores para monitorear, y al usar SSH, podía trabajar en ellos durante días sin tener que ir a la sala de servidores. Es muy conveniente en este caso.
Pero incluso en casa, puede ser realmente útil acceder a tu Raspberry Pi, ejecutar algunos comandos, y desconectarte. Por ejemplo, si tu Raspberry Pi está montada dentro de un robot, escondida en algún lugar, o si simplemente tienes demasiada pereza para enchufar un monitor, SSH es un ahorrador de tiempo.
SSH es conveniente porque es simple. Solo necesitas tener tu Raspberry Pi encendida, conectada a la red, y con SSH habilitado. Te explicaré cómo usarlo a continuación.
Espera, ¡tengo algunas recomendaciones para ti!
Antes de continuar, te invito a descubrir algunos productos que he seleccionado cuidadosamente para ti. Creo que son esenciales para tu Raspberry Pi. Échales un vistazo y pídelos directamente en Amazon.
Una caja silenciosa y práctica | Un SSD de alto rendimiento para potenciar tu Pi | Una pantalla genial para liberar el televisor | Un teclado dedicado con touchpad |
Paso 1: Habilitar SSH en Raspberry Pi
Obtiene su archivo PDF gratuito con todos los comandos que necesitas saber sobre Raspberry Pi.
Descargar
En Raspberry Pi OS (en inglés), SSH está deshabilitado por defecto. Por lo tanto, tu primer paso es habilitarlo. Hay diferentes métodos para lograr esto, dependiendo de tu configuración actual.
Estas son las formas principales de habilitar SSH en Raspberry Pi:
- En Raspberry Pi OS Desktop: Habilitar SSH en la herramienta de Configuración de Raspberry Pi bajo la pestaña “Interfaces”.
- En Raspberry Pi OS Lite (en inglés): Usa raspi-config y ve al submenú “Interfaces”.
- Con Raspberry Pi Imager: Aplica opciones avanzadas al flashear la tarjeta SD.
Ahora explicaré todos estos métodos (y más) en detalle.
SSH en Raspberry Pi OS Desktop
Si usas Raspberry Pi OS Desktop, SSH no está habilitado por defecto. Puedes habilitarlo fácilmente a través de la herramienta de Configuración de Raspberry Pi:
- Abrir el menú principal del escritorio > Preferences > Raspberry Pi Configuration
- Cambiar a la pestaña “Interfaces”.
- Tendrás algo como:
- Hacer clic en el deslizador para habilitar SSH.
- Cerrar la ventana. El servidor SSH ahora está habilitado y listo para conectarse.
Por cierto, si tienes un entorno de escritorio (en inglés) instalado, puedes usar acceso remoto gráfico en lugar de SSH. VNC es un método popular, pero hay muchas otras opciones enumeradas en este otro artículo. Te dará acceso a la interfaz gráfica completa, no solo a la línea de comandos.
SSH en Raspberry Pi OS Lite
Si estás ejecutando la versión Lite (en inglés) de Raspberry Pi OS, no hay un entorno de escritorio, por lo que no puedes usar la herramienta de Configuración. Sin embargo, hay una herramienta similar en la línea de comandos:
- Iniciar raspi-config (en inglés) escribiendo el comando:
sudo raspi-config
- Obtendrás un asistente de menú que configura muchas cosas en tu Pi. Puedes usarlo para habilitar SSH fácilmente.
- Ir a “Interface Options”:
Puedes usar las flechas en tu teclado para moverte de un elemento a otro, y la tecla TAB para acceder a la acción debajo. - Luego, seleccionar “SSH” y elegir “Yes” para habilitarlo.
- Cerrar raspi-config. SSH ahora está habilitado.
SSH Durante la Creación de la Tarjeta SD
Si tu sistema no está instalado aún en tu tarjeta SD, es posible cargarlo con SSH habilitado desde el principio. Tengo un tutorial completo sobre esto (Install a Headless Raspberry Pi without monitor, keyboard and mouse), pero te daré la versión corta aquí.
Activar SSH con Raspberry Pi Imager
Si estás instalando Raspberry Pi OS con Raspberry Pi Imager, puedes usar sus opciones avanzadas para activar SSH. Aquí está cómo:
- Ejecutar Raspberry Pi Imager (si no lo tienes, puedes descargarlo desde allí).
- Elegir tu modelo de Pi, cualquier versión de Raspberry Pi OS de la lista de sistemas operativos y tu dispositivo de almacenamiento (probablemente tu tarjeta SD.)
- Pulsar Siguiente y aparecerá una ventana emergente pidiendo “OS customisation settings”. Hacer clic en Edit Settings.
Esta opción también puede funcionar con otras distribuciones como Ubuntu. Si no es compatible, el botón no aparecerá. - En la pestaña “General”, establecer tu nombre de usuario y contraseña:
- Cambiar a la pestaña “Services”, marcar la casilla “Enable SSH” y presionar guardar:
- Ahora deberías estar de vuelta en la ventana emergente. Hacer clic en YES.
Tu tarjeta SD procederá a ser flasheada como de costumbre.
SSH se habilitará en el primer arranque.
Puedes encontrar mi guía completa sobre Raspberry Pi Imager aquí, para que aprendas todos los consejos y trucos para esta herramienta muy útil.
Habilitar SSH manualmente
Si no estás usando Raspberry Pi Imager para flashear tu tarjeta SD o quieres habilitar SSH en una tarjeta SD que ya has flasheado previamente, también puedes habilitar SSH manualmente:
- Insertar tu tarjeta SD en el lector de tarjetas SD (en inglés) de tu computadora.
- Ir a la partición con tu explorador de archivos (normalmente llamada “boot”).
- Crear un nuevo archivo en la partición boot de la tarjeta SD, llamado “ssh” sin extensión.
Si estás en Windows, asegúrate de que no se cree “ssh.txt” o algo por el estilo. Puede que necesites habilitar la visualización de extensiones en la configuración de tu explorador de archivos. - Expulsar la tarjeta SD de manera segura. SSH se activará en el próximo arranque.
SSH en otras distribuciones de Linux
Si estás utilizando distribuciones de Linux distintas al Raspberry Pi OS, la mayoría de estas soluciones no funcionarán, por lo que necesitarás hacer las cosas de manera diferente. En la mayoría de los casos, SSH está habilitado por defecto.
Pero si no es así, generalmente puedes hacer funcionar un servidor SSH fácilmente con unos pocos comandos:
- Instalar SSH en una distribución basada en Debian:
sudo apt install openssh-server
- Iniciar el servicio SSH:
sudo systemctl start ssh
sudo systemctl enable ssh
Si tu distribución no está basada en Debian, usa el gestor de paquetes correspondiente para hacer lo mismo. Seguramente encontrarás esto en la documentación de la distribución, ya que es uno de los pasos más comunes después de una instalación del sistema.
Paso 2: Requisitos previos para SSH en un Raspberry Pi
Obtiene su archivo PDF gratuito con todos los comandos que necesitas saber sobre Raspberry Pi.
Descargar
Ahora que un servidor SSH está habilitado en tu Raspberry Pi, solo necesitamos hacer algunas cosas más antes de conectarnos a él.
Encontrar la dirección IP del Raspberry Pi
Una dirección IP es el identificador de tu dispositivo en la red. La necesitas para establecer la conexión SSH, ya que tu computadora necesita saber dónde acceder al Raspberry Pi.
Si tienes un entorno de escritorio, puedes encontrar la IP de tu Pi al pasar el cursor sobre el ícono de red (esquina superior derecha en Raspberry Pi OS), o en la configuración del sistema.
En Raspberry Pi OS Lite (u otras distribuciones mínimas), usa el siguiente comando en su lugar:ip a
El formato de la dirección IP es algo como A.B.C.D, con cada número teniendo un valor entre 1 y 254. En mi ejemplo, la dirección IP de mi Raspberry Pi es 192.168.1.69—toma nota de tu IP, ya que la necesitarás más tarde.
Si no puedes encontrarla o necesitas más explicaciones, revisa este artículo.
Inicio de sesión y contraseña SSH
Cuando te conectes a SSH, necesitarás autenticarte. Por defecto, puedes conectarte con tu nombre de usuario y contraseña existentes de Raspberry Pi OS, así que no debería ser complicado.
Si tienes amnesia y no recuerdas tu nombre de usuario, usa el comando ‘whoami’:
Si no recuerdas tu contraseña, abre el menú principal > Preferences > Raspberry Pi Configuration tool y establece una nueva contraseña. Puedes encontrar más detalles sobre how to change the password on Raspberry Pi here (en inglés).
Obtiene su archivo PDF gratuito con todos los comandos que necesitas saber sobre Raspberry Pi.
Descargar
Paso 3: Conectar a Raspberry Pi via SSH
Ahora tenemos todo lo que necesitamos para conectar a la Raspberry Pi via SSH por primera vez. Hay varios métodos que puedes usar. Puedes usar la línea de comandos para una prueba rápida o instalar un cliente SSH para mayor comodidad.
Conectando a SSH en la Línea de Comandos
SSH está bien integrado con la mayoría de los sistemas operativos modernos, por lo que generalmente es posible usarlo directamente desde la línea de comandos de tu computadora. La sintaxis es la misma, sea cual sea tu sistema operativo (Windows, macOS, Linux):ssh <username>@<ip_address>
Entonces, en mi ejemplo:ssh pat@192.168.1.69
En Windows, encuentra el símbolo del sistema en el menú principal y escribe el comando. Al conectar, el Pi te pedirá que ingreses tu contraseña:
¡Obtener un nuevo prompt (pat@rptips:~$) significa que te has conectado con éxito a tu Pi!
Si tu computadora está ejecutando Linux, es posible que necesites instalar un cliente SSH manualmente con tu administrador de paquetes (“sudo apt install ssh” o algo similar). Pero en la mayoría de las distribuciones, ya está instalado por defecto.
Conectando con un Cliente SSH
Usar el terminal o el command prompt en tu computadora es la forma más rápida de probar si SSH está funcionando, pero no es la más conveniente o cómoda de usar. Hay muchos clientes SSH que te darán una mejor experiencia (más funciones, mejor interfaz, etc.).
El más conocido para los usuarios de Windows es PuTTY, que puedes descargar desde aquí. Funciona muy bien, y puedes guardar tus sesiones, para que puedas conectarte a cada dispositivo con un solo clic, sin tener que recordar la dirección IP.
Pero mi cliente favorito es Termius. Lo encontrarás en la Microsoft Store o directamente en su sitio web. Tiene un gran aspecto, guarda tus sesiones y contraseñas, y te permite reconectar con un solo clic cuando se pierde la conexión.
En Linux y macOS, generalmente creo alias para mis servidores y no uso ningún cliente específico. Pero probablemente puedes encontrar algunas opciones similares (Termius está disponible en macOS y Linux, por ejemplo).
Obtiene su archivo PDF gratuito con todos los comandos que necesitas saber sobre Raspberry Pi.
Descargar
Avanzando con SSH en Raspberry Pi
¡Eso es todo! Ahora has completado la parte más complicada y puedes acceder al terminal de tu Raspberry Pi desde tu computadora. Pero de hecho, es solo el comienzo. Te da acceso a nuevo trabajo, y probablemente a nuevos proyectos si lo haces bien.
Comandos de Raspberry Pi
Acceder al terminal de Raspberry Pi desde tu computadora está bien, pero necesitarás conocer algunos comandos, o será inútil. Usar un terminal es como hablar un idioma diferente, necesitarás dedicar tiempo a aprender y probar los comandos de Linux.
Recordar los comandos puede ser bastante difícil, pero te tengo cubierto. Puedes leer este artículo donde te doy los comandos más importantes, con una breve explicación de la sintaxis y algunos ejemplos. Incluso puedes descargar mi hoja de trucos con todos ellos en un formato PDF conveniente.
Conectarse a SSH Sin Contraseña
Si solo tienes una Raspberry Pi con una contraseña sencilla que recuerdas fácilmente, está bien. Pero cuando tienes varios servidores en funcionamiento y necesitas acceder a ellos regularmente, puede ser un desastre.
Es posible usar autenticación de clave pública para acceder a tu Raspberry Pi sin contraseña. En resumen, registrarás tu computadora en la Raspberry Pi, para permitirle acceso remoto sin ninguna contraseña en el futuro.
El proceso para hacer esto es un poco largo para cubrir aquí, pero lo explico todo al final de este otro artículo. Léelo y pruébalo si quieres evitar usar contraseñas (es incluso mejor para la seguridad).
Consejos de Seguridad para Raspberry Pi
Si SSH está deshabilitado por defecto en la mayoría de las distribuciones, incluyendo Raspberry Pi, hay una razón para ello. Tan pronto como lo habilitas, existe el riesgo de que alguien pueda acceder a tu Pi sin tu permiso.
Por ejemplo, si usas el mismo nombre de usuario y contraseña en todas partes, y alguien obtiene acceso a otro ordenador en tu red, pueden acceder fácilmente a tu Raspberry Pi, también. Pero incluso si tienes contraseñas diferentes, todavía hay riesgos involucrados con tener SSH habilitado.
No entraré en detalles aquí, pero te tengo una guía completa para mejorar la seguridad en un Raspberry Pi. Te recomiendo encarecidamente leerla y aplicar algunos de los consejos que doy. Los primeros consejos no son complicados y te protegerán de la mayoría de los problemas.
Usar una VPN para acceso remoto a través de Internet
Lo último que te puede interesar es cómo acceder a tu terminal de Raspberry Pi cuando no estás en la misma red. Supongamos que estás en el trabajo y quieres revisar algo en casa, esto no funcionará directamente.
La dirección IP que tienes en tu Raspberry Pi es una dirección IP privada, algo local, que no existe en la red de tu empresa. Si quieres acceder a tu Raspberry Pi desde otro lugar, el mejor método es usar una VPN.
Una VPN creará un túnel seguro entre tu computadora (en cualquier parte del mundo) y tu Raspberry Pi en casa. Un servidor VPN necesita ser instalado en tu Raspberry Pi (o en otro dispositivo en tu red doméstica) así como un cliente VPN en tu computadora (o smartphone).
El concepto puede parecer un poco complicado, pero la instalación es bastante sencilla. Revisa este tutorial para aprender cómo instalar OpenVPN en tu Raspberry Pi en unos minutos.
También es posible usar el reenvío de puertos en tu router (en inglés) en su lugar. Pero no lo recomiendo, ya que cualquiera puede acceder al puerto abierto. Puedes intentarlo, pero una VPN es mucho más segura en mi opinión.
Cuando estés preparado, aquí tienes un atajo para ti:
Domina tu Raspberry Pi en 30 días: Si buscas los mejores consejos para convertirte en un experto en Raspberry Pi, este libro es para ti. Aprende habilidades útiles de Linux y practica múltiples proyectos con guías paso a paso.