¿Cómo puedo guardar mis claves secretas y contraseña de forma segura en mi sistema de control de versiones?

Guardo configuraciones importantes como los nombres de host y los puertos de los servidores de desarrollo y producción en mi sistema de control de versiones. Pero sé que esmala práctica mantenermisterios (como claves privadas y contraseñas de bases de datos) en un repositorio VCS.

Pero las contraseñas, como cualquier otra configuración, parecen que deberían ser versionadas. Y quées ¿La forma correcta de mantener controladas las contraseñas?

Me imagino que implicaría mantener elmisterios en su propio archivo de "configuración de secretos" y tenerese Archivo cifrado y versión controlada. ¿Pero qué tecnologías? ¿Y cómo hacerlo correctamente? ¿Hay alguna forma mejor de hacerlo?

Hago la pregunta en general, pero en mi caso específico me gustaría almacenar claves secretas y contraseñas para unaDjango / Python sitio usandogit ygithub.

Además, unideal La solución haría algo mágico cuando presiono / jalado con git, por ejemplo, si el archivo de contraseñas cifradas cambia, se ejecuta un script que solicita una contraseña y la descifra en su lugar.

EDIT: para mayor claridad, yoa.m Preguntando acerca de dónde almacenarproducción misterios.

Respuestas a la pregunta(17)

Su respuesta a la pregunta