¿Qué debo hacer para manejar mi clave privada RSA para mi aplicación web Rails de alta seguridad?
Esto puede parecer una pregunta "blanda", no relacionada con la criptografía en sí misma, pero sin embargo es muy importante. ¿Qué procedimientos de gestión y principios de seguridad de desarrollo general debo seguir? ¿Cuáles son los recursos definitivos que detallan cómo evitar no solo el lado tecnológico de la piratería, sino también las inevitables fallas en los recursos humanos y el simple robo?
Hasta ahora he estado generando pares de claves RSA en mi máquina MAC local, colocándolos en una carpeta secreta de aplicaciones, confirmándolos en repositorios de git privados y luego implementándolos en el servidor. Si bien no se han producido incidentes (todavía), puedo ver que existen dos problemas principales de seguridad: el acceso a los repositorios de Git mediante la piratería de mi cuenta o el backend de Git o el robo / acceso a mi máquina. En lo que respecta a estos dos, solo puedo aumentar la fortaleza de mi Git y las contraseñas de la máquina, aumentar la seguridad física de las oficinas es otra posibilidad.
Pensando en los primeros principios de seguridad, he estado considerando la posibilidad de generar par de llaves para una aplicación en el servidor de aplicaciones seguro (acceso en un puerto personalizado usando solo claves públicas) y nunca comprometerlas en un repositorio de ningún tipo, sin embargo hay casos en los que se necesita la clave privada incluso en desarrollo, por lo que scp
la clave del servidor en mi máquina local, exponiendo mi aplicación una vez más a riesgos de seguridad física.
Estoy pensando demasiado en esto? ¿Qué me estoy perdiendo?