Si está buscando una seguridad de primer nivel de la más alta calidad - air gapping es la Única manera de hacer que esto funcione. Desafortunadamente, no tener conexiones con el mundo exterior bajo ninguna circunstancia puede ser prohibitivo, especialmente porque a los desarrolladores les gusta copiar y pegar fragmentos de código de la documentación, etc.
En última instancia, esto probablemente también signifique que sacar las computadoras portátiles del lugar se convierta en un no-go también.
Suponiendo que no puedes hacer eso (porque seamos sinceros, es una pregunta) - en primer lugar, estaciones de trabajo móviles. Definitivamente vaya con la opción VPN. Asegúrese de que todo el tráfico de Internet a través de esas computadoras portátiles pase a través de la VPN. De esta manera, su arquitectura y sus requisitos de seguridad (políticas de firewall, etc.) se aplican definitivamente, y lo que es más importante, no expone nada que no sea el punto final de VPN a la Internet pública.
Cifre los discos duros de la computadora portátil como mínimo. Si la computadora portátil es robada mientras está apagada, el código fuente debe ser seguro por un tiempo razonable. Si la computadora portátil no está apagada, o si el atacante puede observar la entrada de la contraseña, usted no ha hecho nada más que hacer su trabajo un poco más difícil. LUKS es compatible tanto con Ubuntu como con CentOS, ya que utiliza cryptsetup y le brinda la opción de algoritmos decentes y contraseñas de múltiples ranuras.
El cifrado de disco basado en hardware sería mejor, simplemente porque significa que su partición /boot
no es modificable.
Las LAN virtuales para seguridad reciben opiniones mixtas. Desde el punto de vista del desarrollo, espero que su equipo trabaje con sudo, o root, access y, como tal, fácilmente pueda reconfigurar el software de VM para permitir el acceso de su host, si lo desean. Como se mencionó en la publicación del blog, las máquinas virtuales se usan para la segregación de red barata, que funciona cuando se puede hacer cumplir la configuración. Aquí, parece una venta difícil.
Eso no quiere decir que no puedas usar máquinas virtuales, por supuesto; Simplemente estudiaría cuidadosamente lo difícil que es para los desarrolladores omitir.
Una forma en la que he visto este trabajo con éxito si tiene una red lo suficientemente rápida como para los desarrolladores de pacientes es usar el escritorio remoto para las máquinas virtuales disponibles en la red, pero que los propios desarrolladores no pueden acceder físicamente. Incluso puede utilizar clientes ligeros completos, en lugar de los escritorios que RDP. El modelo de cliente ligero también se relaciona bien con mi próximo tema ... la seguridad física.
Cuando digo seguridad física, quiero decir, ¿qué tan difícil es para los desarrolladores conectar una memoria USB, svn co
y salir con el lote? "Llevar el código a casa" puede suceder de esta manera, pero perderá el lote si pierde la memoria USB. En general, hay dos soluciones disponibles para usted: resina epoxi y la eliminación de los diversos módulos hci.ko
del kernel, lo que hace que no reconozca USB en absoluto. Desafortunadamente, esto también tiene el inconveniente de deshabilitar los teclados y ratones USB.