Tabla de contenido:

Conexión SSH / SCP segura desde Raspberry Pi al servidor en la nube para copias de seguridad y actualizaciones: 3 pasos
Conexión SSH / SCP segura desde Raspberry Pi al servidor en la nube para copias de seguridad y actualizaciones: 3 pasos

Video: Conexión SSH / SCP segura desde Raspberry Pi al servidor en la nube para copias de seguridad y actualizaciones: 3 pasos

Video: Conexión SSH / SCP segura desde Raspberry Pi al servidor en la nube para copias de seguridad y actualizaciones: 3 pasos
Video: Creación de un servidor y acceso seguro por llaves SSH 2024, Diciembre
Anonim
Conexión SSH / SCP segura desde Raspberry Pi al servidor en la nube para copias de seguridad y actualizaciones
Conexión SSH / SCP segura desde Raspberry Pi al servidor en la nube para copias de seguridad y actualizaciones

El propósito de este instructivo es mostrarle cómo conectarse de forma automática y segura desde su Raspberry Pi a un servidor en la nube remoto (y viceversa) para realizar copias de seguridad y actualizaciones, etc. Para hacer esto, usa pares de claves SSH que obviar la necesidad de recordar contraseñas y brindarle una conexión más segura.

(AVISO: no intente esto si no es competente en la configuración de permisos de Linux, de lo contrario hará que sus sistemas sean más vulnerables a los ataques de piratas informáticos).

Requisitos

1. Raspberry Pi con una interfaz de línea de comandos (CLI) como vería en Putty.

2. Acceso a un servidor en la nube remoto alojado por, digamos, OVH o DigitalOcean, con una CLI.

3. Una computadora portátil o PC con Windows con Putty y PuttyGen instalados.

Supuestos

1. Tienes cierto conocimiento de los comandos de Linux.

2. Puede acceder a su servidor remoto mediante procesos manuales convencionales, p. Ej. FTP.

3. Habrá PuttyGen preinstalado en su PC con Windows

Pasos

En resumen, consulte la Figura 1

a) En su PC con Windows, cree un archivo PPK privado usando PuttyGen

b) En su PC con Windows, cree un archivo PPK público usando PuttyGen (esto se hace automáticamente en el paso a)

b) En su PC con Windows, copie la clave pública de su PC con Windows al servidor de nube remoto

d) En su PC con Windows, convierta el archivo PPK privado a una clave OpenSSH usando PuttyGen

e) Copie la clave OpenSSH de su PC con Windows a la Raspberry Pi

f) Pruebe el acceso y la transferencia de archivos desde Raspberry Pi a su servidor remoto

Paso 1: A) Cree un archivo PPK privado, B) Cree una clave pública y C) Cópiela en el servidor remoto

A) Cree un archivo PPK privado, B) Cree una clave pública y C) Cópielo en el servidor remoto
A) Cree un archivo PPK privado, B) Cree una clave pública y C) Cópielo en el servidor remoto
A) Cree un archivo PPK privado, B) Cree una clave pública y C) Cópielo en el servidor remoto
A) Cree un archivo PPK privado, B) Cree una clave pública y C) Cópielo en el servidor remoto

Para crear un archivo PPK privado, abra PuttyGen en su PC con Windows. Puede acceder a PuttyGen haciendo clic derecho en el icono de masilla en la barra de tareas de Windows. En el menú PuttyGen, seleccione la clave y luego genere un par de claves, seleccione la opción SSH2 -RSA key. Se le pedirá que establezca una frase de contraseña cuando cree la clave privada, y si establece una frase de contraseña, se le pedirá durante operaciones futuras. Guarde la clave privada en algún lugar seguro de su PC con Windows. Luego verá la clave pública en el panel de la ventana como se muestra en la Figura 2.

A continuación, transfiramos la clave pública al servidor en la nube remoto. Abra una sesión de Putty en el servidor de nube remoto usando Putty. Digamos que ha iniciado sesión como remoteuser1 y luego haga lo siguiente en la CLI del servidor de nube remoto

cd / home / remoteuser1 (si aún no existe) mkdir.ssh

nano.ssh / allowed_keys (Verá una pantalla vacía; pegue la clave pública que se muestra en la figura 2, luego guarde y cierre este archivo)

chmod 0700.ssh

chmod 0600 /home/remoteuser1/.ssh/authorized_keys

Paso 2: D) Convierta el archivo PPK privado a la clave OpenSSH y E) Cópielo en la Raspberry Pi

Para convertir la clave privada a OpenSSH, abra PuttyGen y luego abra la clave privada que creó anteriormente; vaya a la opción Conversiones en el menú y luego elija Exportar clave OpenSSH; asegúrese de que el archivo que crea tenga el tipo de archivo.key. Guárdelo en un lugar seguro y luego abra una sesión de masilla para iniciar sesión en su Raspberry Pi. Copie el archivo de clave en el directorio de inicio de la Raspberry Pi de la cuenta de usuario que utilizó para iniciar sesión en la Raspberry Pi. Digamos que la clave se llama pitobot.key y luego siga estos pasos:

cd / home / pi

sudo mv pitobot.key / home / pi /

sudo chmod 600 pitobot.key

Ahora está listo para probar si su instalación es exitosa: nuevamente, esto se hace desde el Pi. Recuerde, remoteuser1 es la cuenta en el servidor de nube remoto en cuyo directorio personal guardó la clave pública, y ipaddress es la dirección de IP del servidor de nube remoto.

En primer lugar, desde Raspberry Pi, inicie sesión en el servidor en la nube remoto usando Putty. Escriba los siguientes comandos en Raspberry PI CLI. (Si configuró una frase de contraseña cuando creó una clave privada, se le pedirá ahora).

sudo ssh -i /home/pi/pitobot.key remoteuser1 @ ipaddress

Esto lo iniciará en la CLI del servidor de nube remoto en el directorio de inicio de remoteuser1. Al escribir 'salir; volverá a la CLI de su Raspberry Pi.

A continuación, intente transferir archivos desde el servidor en la nube remoto a la Raspberry Pi. Use los siguientes comandos: (Nuevamente, si estableció una frase de contraseña cuando creó una clave privada, se le pedirá ahora).

sudo scp -i /home/pi/pitobot.key remoteuser1 @ ipaddress: //var/www/html/*.* / home / pi /

Esto transferirá todos los archivos de la carpeta / var / www / html / en el servidor remoto a la carpeta / home / pi / en su Raspberry Pi. (Los dos puntos son muy importantes) Por supuesto, puede cambiar el orden de los comandos y transferir archivos desde el Pi al servidor remoto.

Paso 3: consideraciones de seguridad

Si bien el enfoque del par de claves SSH mejora la seguridad, considere lo siguiente:

1. Con los pares de claves SSH habilitados, debe considerar eliminar la capacidad de los usuarios para iniciar sesión directamente en el servidor remoto (también puede acceder a sus servidores usando los pares de claves Putty en Windows usando el mismo par de claves, y también podría considerar deshabilitar inicie sesión en su Pi también). Tenga cuidado si elige hacer esto y no adopte un enfoque de Big Bang. Para hacer esto, debe deshabilitar algunas configuraciones en el archivo de configuración ssh. Tenga mucho cuidado al hacer esto. Los comandos son

nano / etc / ssh / sshd_config

Y dentro del archivo realiza los siguientes cambios

Autenticación de contraseña no

UsePAM no

Guarde, salga y luego reinicie SSH mediante systemctl restart ssh (Esto es para Debian. Puede ser diferente en diferentes distribuciones de Linux)

2) Mantenga todas sus claves seguras, de lo contrario correrá el riesgo de una violación de datos o no tendrá acceso a sus servidores. Recomiendo mantenerlos en una bóveda segura como bitwarden.com y restringir el acceso a ellos a través de su política de control de acceso.

3) El uso de una frase de contraseña mejora la seguridad, pero puede dificultar la automatización de trabajos cron, etc. La decisión de utilizar esta y otras características debe estar determinada por la evaluación de riesgos, por ejemplo, si está procesando datos personales, entonces necesita controles mayores / proporcionados.

Recomendado: