Pasos para asegurar tu Raspberry Pi frente a posibles amenazas

Escrito por Javier Jiménez
Redes

Raspberry Pi resulta fantástico para una gran cantidad de proyectos. Son baratas, fáciles de usar, pueden funcionar con una amplia gama de sistemas operativos y proporcionan clavijas GPIO programables. Además cuentan con la disponibilidad de CPU de varios núcleos y múltiples puertos USB. Es un dispositivo muy útil pero que, como cualquier otro, debemos de tenerlo seguro y con una serie de pautas a seguir.

Asegurar una Raspberry Pi

Como hemos mencionado, podemos utilizar una Raspberry Pi para todo tipo de proyectos de automatización y recopilación de información. Pero, si no tenemos cuidado, un pequeño proyecto de hobby puede resultar en un riesgo de seguridad que actúa como un punto de entrada en nuestra red. Estos dispositivos no pueden realizar arranque seguro, como ARM Trustzone, y la tarjeta SD y el sistema operativo no se cifran fácilmente.

Podemos seguir estos una serie de consejos de seguridad para proteger una Raspberry Pi y otros dispositivos de su red.

Formas de atacar

  • Puede ser utilizado para minar criptomoneda. Los ciberdelincuentes pueden usar su poder computacional para este fin.
  • Lo pueden utilizar como un punto para atacar a otros hosts, con el fin de que el atacante no deje rastro.
  • Puede ser el punto de entrada a toda la red interna. Un atacante puede llegar fácilmente a los servidores de archivos e intentar instalar ransomware, obtener documentos para el chantaje o manipular la configuración del cortafuegos y del enrutador para asegurar un acceso persistente en el futuro para acciones posteriores, ya sea atacando la consola web del router o realizando algún tipo de manipulación para abrir más puertos a Internet para el ataque.

Seguridad de Raspberry Pi

Pasos para asegurarlo

Cambiar las contraseñas que vienen por defecto en la Raspberry Pi. Esto es algo muy básico para cualquier acción que hagamos en Internet, cualquier dispositivo que utilicemos, etc. Pero no está mal recordarlo ya que muchos usuarios dejan la que viene predeterminada.

El siguiente paso debe ser desactivar la cuenta de Pi por defecto en Raspbian. Antes de hacer esto, hay que crear una nueva cuenta en el sistema. Podemos utilizar el comando useradd para hacer esto, con algunos indicadores adicionales para especificar que se cree un nuevo directorio de inicio para el usuario. Hay que iniciar sesión como usuario Pi y poner el comando:

$ sudo /usr/sbin/useradd –groups sudo -m makezine

Utilizar nuestro nombre de usuario

Utilizar nuestro propio nombre de usuario en lugar de “nombre”. Esto creará una nueva cuenta, creará un directorio para la cuenta (como / home / nombre) y agregará la nueva cuenta al grupo sudo para que el usuario pueda usar este comando. Una vez que se crea la nueva cuenta de usuario, necesitamos establecer una contraseña para la cuenta. Podemos hacerlo utilizando el comando:

$ sudo passwd nombre

A continuación, restablecer la contraseña de root. Elegir algo largo y difícil de adivinar.

$ sudo passwd root

Por último, tendremos que deshabilitar la cuenta Pi:

$ sudo passwd –lock pi

Ahora ya podemos desconectarnos de la cuenta Pi e iniciar sesión con la nueva cuenta y contraseña.

Seguridad de SSH

De forma predeterminada, Raspbian instala una shell de acceso remoto (SSH) a la que se puede acceder desde cualquier lugar. Podemos desactivar esta configuración configurando SSH para que sólo las máquinas con una clave SSH autorizada puedan iniciar sesión. Debemos de realizar una copia de seguridad de nuestras claves privadas en al menos dos ubicaciones en las que confiemos.

Para configurarlos, hay que editar el archivo de configuración SSH utilizando vi, u otro editor de texto, con el comando:

$ sudo vi /etc/ssh/sshd_config

Hay que asegurarse de que las siguientes líneas están definidas y no comentadas, lo que significa que las líneas están en el archivo y no están precedidas de un símbolo de etiqueta hash que marca una línea como un comentario y lo ignora para propósitos de configuración:

# Authentication:

LoginGraceTime 120

PermitRootLogin no

StrictModes yes

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile %h/.ssh/authorized_keys

# To enable empty passwords, change to yes (NOT RECOMMENDED)

PermitEmptyPasswords no

# Change to yes to enable challenge-response passwords (beware issues with

# some PAM modules and threads)

ChallengeResponseAuthentication no

# Change to no to disable tunnelled clear text passwords

PasswordAuthentication no

UsePAM no

Deshabilitar los módulos de autenticación

La última línea es muy importante ya que deshabilitará los módulos de autenticación enchufables (PAM, en sus siglas en inglés) o la autenticación nativa de Linux y sólo permitirá a los usuarios iniciar sesión con una clave. A continuación, hay que generar una clave SSH. Podemos hacerlo con PuTTY en Windows o con el comando ssh-keygen en Linux. Crear un directorio .ssh en el directorio principal del usuario y un archivo authorized_keys con los siguientes comandos. Hay que asegurarse de establecer los permisos adecuadamente (de lo contrario, la autenticación basada en clave fallará):

$ mkdir ~/.ssh

$ chmod 0700 ~/.ssh

$ touch ~/.ssh/authorized_keys

$ chmod 0600 ~/.ssh/authorized_keys

A continuación, hay que utilizar el editor de texto para editar el archivo authorized_keys y pegarlo en la clave pública que generamos para que podamos iniciar sesión. Hay que asegurarse de reiniciar SSH para que los cambios surtan efecto utilizando el comando:

$ sudo systemctl restart ssh

Fuente > Makezine


Continúa leyendo

Últimos análisis

Valoración RZ
9
Valoración RZ
9
Valoración RZ
10
Valoración RZ
9
Valoración RZ
10
Valoración RZ
7
Valoración RZ
9
Valoración RZ
10
Valoración RZ
8
Valoración RZ
10