¿Cuáles son las mejores prácticas de seguridad para asegurar una cámara IoT remota?

27

He realizado un poco de automatización del hogar, como la construcción de una cámara remota que se puede encender a través de SSH localmente y publica imágenes en un servidor Linux con Raspberry Pi.

Sin embargo, tengo curiosidad sobre qué protocolos se siguen mejor cuando su seguridad está detrás de un enrutador. He usado cosas como Putty y abrí puertos para poder hacer un túnel, pero no creo que estos sean los métodos más seguros.

Me pregunto qué protocolos / herramientas se utilizan mejor al acceder a un sistema de servidor doméstico de forma remota.

Trevor J. Smith
fuente
¿Tiene la capacidad de cifrar la secuencia de imágenes?
tbm0115
@ tbm0115 Tengo acceso físico al dispositivo. Los conocimientos técnicos, no tanto. Todavía estoy aprendiendo.
Trevor J. Smith
44
Idealmente, creo que su cámara cifraría el flujo de imágenes y una aplicación en un dispositivo seguro en la red lo descifraría. Alternativamente / adicionalmente, podría configurar una red separada o una subred en su red para ejecutar sus dispositivos IoT y agregar seguridad adicional a esa área de la red.
tbm0115
Eso tiene mucho sentido. Definitivamente vale la pena realizarlo si quiero agregar algunos dispositivos más a la mezcla. Gracias.
Trevor J. Smith
1
Esa pregunta es increíblemente amplia. Especialmente su título: dado el cuerpo, supongo que está específicamente preocupado por la seguridad de la red . Aun así, depende del tipo de conectividad de red que requiera su aplicación.
Gilles 'SO- deja de ser malvado'

Respuestas:

18

PuTTY es realmente bastante seguro: la sesión en sí está encriptada. Eso es parte de lo que SSH le ofrece "fuera de la caja". Hago mucho de este tipo de cosas yo mismo, y aquí hay algunos puntos de vida que sugeriría:

  • No abra el puerto 22 al mundo: configure su servidor SSH para escuchar en un puerto no estándar (por ejemplo, 22022 o 2222) en su interfaz WAN
  • Requerir autenticación para acceder a cualquier página web con sus imágenes de seguridad. Incluso si esto es simple HTTP-AUTH usando archivos .htaccess, es mejor que nada.
  • Use SSL para hablar con los servidores web, incluso si están detrás de su enrutador
  • Use OpenVPN u otra tecnología VPN para acceder a las máquinas de su hogar desde cualquier cosa fuera de su enrutador. Eso evita la necesidad de acceso SSH directo, aunque generalmente me gusta mantener SSH directo disponible en caso de que los servicios VPN fallen.
John
fuente
Esto supone que el OP está utilizando Windows.
kenorb
1
No, no lo hace. Las recomendaciones anteriores son para cualquier sistema operativo, no solo Windows.
John
Putty es un cliente SSH solo para Windows. Si puede reformularlo a SSH y darle a Putty como ejemplo un cliente SSH, sonaría mejor.
kenorb
1
La única referencia a PuTTY es la primera oración. Todo lo demás hace referencia a SSH, como quise decir.
John
14

Las otras respuestas cubren muchas de las tecnologías que puede usar para proteger su sistema. Aquí hay algunos pensamientos / filosofías más generales.

  1. Un DMZ es tu amigo : en casi todos los casos en los que tienes un servicio frente a una red externa, un DMZ (ver a.) Será muy beneficioso. En este caso, minimizará la superficie de ataque y minimizará el daño. Al limitar el número de dispositivos en la DMZ a solo los que necesitan acceso externo, limita la superficie de ataque. Además, la DMZ hará que sea mucho más difícil para cualquiera acceder a su red central, minimizando así el daño.
  2. Lista blanca, no incluir en la lista negra : de forma predeterminada, todos los protocolos, puertos y conexiones internas deben bloquearse de forma predeterminada. Este bloqueo debe configurarse en el dispositivo (si es posible), el firewall y el enrutador. Solo habilite las opciones que esté utilizando activamente y solo para los dispositivos que lo necesiten. Si conoce y debe usar un protocolo para un dispositivo IoT que es débil (por ejemplo, dispositivos afectados por Mirai), debe configurar un dispositivo (como un RaspberryPi) para que actúe como relé. Aísla completamente el dispositivo de la red y solo se comunica con él a través de un protocolo seguro (ssh, vpn, etc.) que el RaspberryPi transforma en el protocolo que necesita el dispositivo.

AstroDan
fuente
2

SSH es un punto de partida razonable, es esencial que use el cifrado TLS, y usar masilla para acceso ssh es una forma de lograrlo. Una VPN es otra. Lo que es realmente importante es que use frases o claves fuertes para acceder a los dispositivos dentro de su red, y que mantenga los dispositivos de puerta de enlace actualizados.

Usar un puerto no estándar es bastante sensato, pero no hace nada para proteger su red si deja su dispositivo con una contraseña predeterminada (o común).

Si desea acceso remoto, necesita un puerto abierto para reenviar SSH (o algo muy similar). Si no confía en la implementación de seguridad de la cámara (es decir, su última actualización de firmware fue hace unos 6 meses), entonces necesita usar una VPN para crear un segmento de red aislado para ella. Si tiene WiFi y firmware antiguo, bien podría estar abierto y público (al menos para cualquier persona en proximidad física).

Sean Houlihane
fuente