Herramienta web moderna para la generación de claves GPG y SSH para la firma del código de conducta de Ubuntu.
Este proyecto es un feature adicional al proyecto original cocsign que proporciona una interfaz web intuitiva y documentación completa para usuarios de Windows con WSL y Linux nativo.
Script para la firma del código de conducta de ubuntu
Basado en código de Eduardo Echeverria echevemaster@gmail.com
- Hector Mantellini xombra.com@gmail.com
- Jesus Palencia
cocsign instalar|iniciar nombre apellido tu@correo.comRepositorio original: https://github.com/Ubuntu-Venezuela/cocsign/
Esta herramienta web moderna complementa el script original cocsign proporcionando:
- Interfaz gráfica intuitiva con Streamlit
- Compatibilidad completa con Windows WSL y Linux nativo
- Documentación interactiva paso a paso
- Generación automática de claves GPG y SSH
- Guías específicas para cada sistema operativo
- Detección automática del entorno: Identifica si se ejecuta en Windows con WSL o Linux nativo
- Generación de claves GPG: Soporte para múltiples tamaños de clave (1024, 2048, 3072, 4096 bits)
- Generación de claves SSH: Creación automática de claves SSH para autenticación
- Instalación de dependencias: Verificación e instalación automática de herramientas necesarias
- Interfaz moderna: Diseño responsive con colores oficiales de Ubuntu
- Windows 10/11 con WSL (Windows Subsystem for Linux)
- Linux nativo (Ubuntu, Debian, y derivados)
- Distribuciones WSL soportadas: Ubuntu, Debian
- Instalar WSL:
# Ejecutar en PowerShell como Administrador wsl --install
- Reiniciar el sistema
- Configurar Ubuntu en WSL
# Instalar Python y pip
sudo apt update
sudo apt install python3 python3-pip
# Verificar herramientas
gpg --version
ssh -V-
Clonar el repositorio:
git clone https://github.com/Ubuntu-Venezuela/CDC.git cd CDC -
Instalar dependencias Python:
pip install -r requirements.txt
-
Ejecutar la aplicación:
streamlit run ui/app.py
-
Abrir en el navegador:
http://localhost:8501
La aplicación cuenta con dos pestañas principales:
- Verificar dependencias: Marcar la opción y hacer clic en "Instalar"
- Introducir datos personales:
- Nombre
- Apellido
- Correo electrónico
- Seleccionar tamaño de clave GPG (recomendado: 2048 bits o superior)
- Generar claves: Hacer clic en "Generar Claves"
- Seguir instrucciones post-generación
Documentación completa con:
- Guía específica para Windows + WSL
- Guía específica para Linux nativo
- Preguntas frecuentes (FAQ)
- Solución de problemas
- Mejores prácticas de seguridad
# Configurar Git para usar WSL GPG
git config --global gpg.program "wsl gpg"
git config --global user.signingkey TU_CLAVE_GPG
git config --global commit.gpgsign true
# Agregar clave SSH
wsl ssh-add ~/.ssh/id_rsa# Configurar Git
git config --global user.signingkey TU_CLAVE_GPG
git config --global commit.gpgsign true
# Iniciar agente SSH
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsaubuntucdc/
├── ui/
│ └── app.py # Interfaz principal de Streamlit
├── utils/
│ ├── gpg_utils.py # Utilidades para GPG
│ ├── ssh_utils.py # Utilidades para SSH
│ ├── install_utils.py # Instalación de dependencias
│ └── wsl_manager.py # Gestión de WSL/Linux
├── scripts/
│ └── install.sh # Script de instalación
├── requirements.txt # Dependencias Python
├── setup.py # Configuración del proyecto
└── README.md # Este archivo
# Listar claves privadas
gpg --list-secret-keys --keyid-format LONG
# Exportar clave pública
gpg --armor --export CLAVE_ID
# Enviar clave a servidor
gpg --send-keys CLAVE_ID
# Firmar commit
git commit -S -m "Mensaje del commit"# Probar conexión SSH con GitHub
ssh -T git@github.com
# Copiar clave pública
cat ~/.ssh/id_rsa.pub
# Agregar clave al agente
ssh-add ~/.ssh/id_rsaWSL no funciona:
# Actualizar WSL
wsl --update
# Verificar versión
wsl --version
# Listar distribuciones
wsl --list --verboseProblemas con GPG:
# Reiniciar agente GPG
wsl gpgconf --kill gpg-agent
# Verificar instalación
wsl gpg --versionDependencias faltantes:
# Instalar herramientas necesarias
sudo apt install gnupg openssh-client wget curl
# Verificar instalación
gpg --version && ssh -V- Fork el proyecto
- Crear una rama para tu feature (
git checkout -b feature/nueva-funcionalidad) - Commit tus cambios (
git commit -am 'Agregar nueva funcionalidad') - Push a la rama (
git push origin feature/nueva-funcionalidad) - Crear un Pull Request
- Eduardo Echeverria echevemaster@gmail.com - Código base
- Hector Mantellini xombra.com@gmail.com - Modificaciones y optimizaciones
- Jesus Palencia - Correcciones
- Desarrollo de la interfaz web moderna
- Documentación completa
- Compatibilidad Windows WSL/Linux
- Mejoras de UX/UI
Este proyecto mantiene la misma licencia que el proyecto original cocsign.
- Repositorio original cocsign: https://github.com/Ubuntu-Venezuela/cocsign/
- Repositorio actual: https://github.com/Ubuntu-Venezuela/CDC
- Ubuntu Code of Conduct: https://ubuntu.com/community/code-of-conduct
- Documentación WSL: https://docs.microsoft.com/en-us/windows/wsl/
Proyecto activo en desarrollo. Se aceptan contribuciones y sugerencias.
- Exportación automática de claves
- Integración con servicios de claves
- Soporte para más tipos de claves
- Interfaz en múltiples idiomas
- Modo offline completo