Tabla de contenido:

Acceso SSH remoto a Raspberry Pi 2: 5 pasos
Acceso SSH remoto a Raspberry Pi 2: 5 pasos

Video: Acceso SSH remoto a Raspberry Pi 2: 5 pasos

Video: Acceso SSH remoto a Raspberry Pi 2: 5 pasos
Video: Remote Connection to Raspberry Pi Using SSH or VNC 2024, Mes de julio
Anonim
Acceso SSH remoto a Raspberry Pi 2
Acceso SSH remoto a Raspberry Pi 2

¿Alguna vez quiso implementar una Raspberry Pi "en el campo" y aún poder acceder a ella?

Aquí hay una manera fácil de habilitar el acceso SSH remoto a su Raspberry Pi 2 (y también a otros modelos). Si bien existen soluciones que involucran una VPN o la configuración del reenvío de puertos en un firewall local, a menudo son difíciles de administrar para los no expertos.

Una nueva generación de servicios de retransmisión, incluidos My-Devices.net, Pagekite.net y Yaler.net, intenta solucionar este problema. Aquí utilizamos el servicio de retransmisión de Yaler (divulgación: soy un fundador) para proporcionar acceso SSH desde cualquier lugar a la Raspberry Pi 2.

Material

- Raspberry Pi 2 (o cualquier modelo), p. Ej.

- Cable USB, A / Micro B, p. Ej.

- Tarjeta Micro SD, 4 GB, p. Ej.

- Cable Ethernet, p. Ej.

También es necesario

- Computadora de escritorio o portátil

- Red local con DHCP

(Nota: los pasos 3-5 se basan en los tutoriales de CC BY-SA Yaler. Los pasos 1 y 2 le permiten comenzar desde cero).

Paso 1: instala Raspbian

(Si ya tiene Raspbian en ejecución, omita este paso).

Descargar la imagen

Usemos la imagen Raspbian Jessie (Lite) que tiene sshd ejecutándose por defecto. Eso es una ventaja para la configuración "sin cabeza" sin pantalla, mouse o teclado.

- Obtenga la imagen de Raspbian más reciente en https://www.raspberrypi.org/downloads/ o use este enlace directo.

- Descomprima el ZIP de la imagen para obtener el archivo de imagen IMG

Prepare la tarjeta SD en Mac OSX

Hay muchas formas de preparar la tarjeta SD en una Mac. Aquí está mi favorito:

- Obtenga la herramienta PiFiller en https://ivanx.com/raspberrypi/ o use este enlace directo.

- Inicie PiFiller y seleccione el archivo de imagen IMG descargado arriba

Prepare la tarjeta SD en Windows

- Obtenga Win32 Disk Imager de

- Inicie la herramienta y seleccione la IMG descargada arriba (verifique dos veces la unidad)

Prepare la tarjeta SD en Linux

- Siga los pasos en

Usa la tarjeta SD

- Inserta la tarjeta SD en la Raspberry Pi 2

- Conecte el cable ethernet a su red local

- Conecta el cable USB para alimentar el dispositivo y espera…

Hecho. Después de unos minutos, Raspbian debería estar activo.

Paso 2: encuentra la Raspberry Pi 2 en tu red local

(Si la Raspberry Pi 2 tiene pantalla, mouse y teclado, omita este paso).

¿Dónde está mi Raspi?

Una vez que Raspbian está instalado y el Raspberry Pi 2 está conectado a la red local, debería obtener automáticamente una dirección IP con DHCP y comenzar a ejecutar sshd, que escucha las conexiones SSH entrantes en el puerto 22. Pero, ¿cuál es la IP?

Echemos un vistazo

Una forma de encontrar la dirección IP local de Raspberry Pi 2 (y cualquier otro dispositivo) es usar la herramienta de línea de comandos nmap.

- Obtenga nmap de

- Para obtener la dirección IP local de su computadora, abra una terminal y escriba

$ ifconfig

resultando en algo como en0: flags =… 192.168.0.7 netmask…

- Inicie una consulta nmap para el puerto 22 utilizando el prefijo de su dirección IP local, p. Ej.

$ nmap 192.168.0.0-255 -p22

- Verifique el resultado (si hay varias IP, generalmente es la más alta)

Asegúrate de que sea tuyo

- Obtenga acceso SSH local a la Raspberry Pi 2 con ssh, usando su IP local, p. Ej.

$ ssh [email protected]

- Ingrese la contraseña, por defecto es frambuesa

- Cambiar la contraseña escribiendo

$ passwd

¿Hecho? Su Raspberry Pi 2 ahora está lista para conectarse al servicio de retransmisión.

Paso 3: Instale el demonio YalerTunnel

Visión general

El demonio YalerTunnel es un pequeño software que colocaremos en su Raspi para conectar los servicios locales que se ejecutan en el dispositivo al servicio de retransmisión en la nube. Como esto:

Servicio de retransmisión <- Servicio SSH local de cortafuegos

Obtén un dominio de retransmisión

Cada dispositivo conectado al servicio de retransmisión necesita un dominio de retransmisión.

- Obtenga una cuenta de prueba gratuita que incluye un dominio de retransmisión en

(O, para alojar su propio relé para uso no comercial, consulte

Instalar YalerTunnel

Construyamos el demonio YalerTunnel desde la fuente.

- Abra un shell en su Raspberry Pi 2 y actualice apt-get con

$ sudo apt-get update

- Descargue e instale libssl con

$ sudo apt-get install libssl-dev

- Crea un directorio yalertunnel

$ mkdir yalertunnel

$ cd yalertunnel

- Descarga, descomprime y crea la fuente de YalerTunnel

$ wget

$ tar xfzmv YalerTunnel2.src.tar.gz $./configure && make

¿Hecho? Entonces comencemos con el demonio.

Paso 4: Inicie el demonio YalerTunnel

Habilite el acceso SSH a través de Yaler

$ sudo apt-get install runit

- Cree un directorio de servicios yalertunnel-ssh

$ sudo mkdir / etc / service / yalertunnel-ssh

$ cd / etc / service / yalertunnel-ssh

- Descargue el script de ejecución de yalertunnel y hágalo ejecutable

$ sudo wget https://s3.yaler.net/raspi/run-ssh -O ejecutar

$ sudo chmod a + x ejecutar

- Descargue el script de finalización de yalertunnel y hágalo ejecutable

$ sudo wget

$ sudo chmod a + x terminar

- Abra el script de ejecución con

$ sudo nano / etc / service / yalertunnel-ssh / run

- Verifique la ruta (predeterminada: / home / pi / yalertunnel), configure el puerto del servicio SSH local (predeterminado: 22) y configure su dominio de retransmisión

1 #! / Bin / sh

⋮ 6 exec / home / pi / yalertunnel / yalertunnel proxy 127.0.0.1:22 try.yaler.io:80 RELAY_DOMAIN & 1 | logger -t yalertunnel-ssh

Guarde los cambios con CTRL-X, luego Y, luego RETURN. No cambie la IP local (predeterminada: 127.0.0.1), a menos que el servicio SSH se ejecute en un dispositivo separado en la misma red.

- Reinicie su Raspberry Pi 2 para ejecutar el script

$ sudo reiniciar

Hecho. Ahora veamos cómo acceder a la Raspi.

Paso 5: acceda a Raspberry Pi 2 con un cliente SSH

Usando Putty en Windows

- Siga los pasos

Usando ssh en Mac o Linux

A diferencia de Putty, el comando ssh no admite "HTTP CONNECT", por lo que también necesitamos YalerTunnel en este lado del relé. Así es como se ve eso:

Cliente SSH -> YalerTunnel en modo cliente -> (Firewall) -> Servicio de retransmisión

Instale YalerTunnel en Mac o Linux

- Asegúrese de que JDK6 (o posterior) esté instalado

- Asegúrese de que su variable de entorno PATH contenga el directorio bin del JDK

- Obtenga la fuente Java de YalerTunnel de

- Descomprima el archivo ZIP, abra una terminal y compile YalerTunnel con

$ javac YalerTunnel.java

Accede de forma remota a la Raspberry Pi 2 con SSH

- En su computadora cliente, para iniciar YalerTunnel en modo cliente, escriba

$ java YalerTunnel cliente localhost: 10022 try.yaler.io:80 RELAY_DOMAIN

- En una segunda terminal, en la computadora cliente, acceda a su dispositivo a través del YalerTunnel local con ssh

$ ssh pi @ localhost -p 10022 -o ServerAliveInterval = 5

Hecho. Ahora debería tener acceso SSH a su Raspberry Pi 2.

Solución de problemas

Si no hay conexión

- Asegúrese de utilizar el dominio de retransmisión correcto

- Para ver si el servicio YalerTunnel se está ejecutando en su dispositivo, escriba

$ ps aux | grep [y] aler

Eso es todo. Gracias por leer hasta el final. Si tiene preguntas, comuníquese con nosotros.

Recomendado: