
Key Maker è un’applicazione open source pensata per semplificare la gestione delle chiavi SSH su Linux. Sviluppata con GTK4 e Libadwaita, offre un’interfaccia grafica elegante e conforme alle linee guida GNOME, rendendo accessibile un’attività spesso relegata al terminale. Il progetto nasce dall’esigenza di fornire agli utenti uno strumento sicuro, intuitivo e completo per generare, visualizzare, distribuire e proteggere le chiavi SSH, fondamentali per l’autenticazione remota e la sicurezza dei sistemi.
L’applicazione è scritta in Python e utilizza PyGObject per l’integrazione con le librerie GTK. Tutte le operazioni crittografiche sono delegate agli strumenti OpenSSH, garantendo affidabilità e compatibilità con gli standard di sicurezza. Key Maker non memorizza mai le passphrase, non le registra nei log e applica automaticamente i permessi corretti ai file generati.
Generazione e gestione delle chiavi SSH
Key Maker consente di generare chiavi Ed25519, RSA e ECDSA, con opzioni personalizzabili per nome file, commento e passphrase. Per le chiavi RSA, è possibile scegliere tra diverse dimensioni: 2048, 3072, 4096 e persino 8192 bit. L’interfaccia di generazione include validazione in tempo reale, feedback visivo e messaggi di errore chiari, rendendo il processo accessibile anche ai meno esperti.
Una volta generate, le chiavi vengono automaticamente rilevate nella directory ~/.ssh, con visualizzazione del tipo, dell’impronta digitale e dei metadati. È possibile copiare la chiave pubblica con un clic, visualizzare i dettagli, modificare la passphrase o eliminare la coppia di chiavi in modo sicuro. L’applicazione genera anche comandi ssh-copy-id pronti per essere eseguiti, facilitando la distribuzione delle chiavi su server remoti.
Sicurezza e protezione dei dati
La sicurezza è al centro del progetto Key Maker. Tutte le operazioni sono eseguite tramite strumenti di sistema, evitando l’uso di shell injection e garantendo la validazione degli input con Pydantic. I file delle chiavi private vengono creati con permessi 600, impedendo l’accesso non autorizzato. Le passphrase non vengono mai salvate, ma gestite solo in memoria durante le operazioni crittografiche.
Queste misure rendono Key Maker adatto anche a contesti professionali, dove la gestione delle chiavi SSH deve rispettare criteri rigorosi di sicurezza e conformità. L’applicazione è progettata per essere affidabile, trasparente e conforme alle best practice del settore.
Installare Key Maker
Key Maker può essere compilato dal sorgente, i requisiti includono Python 3.9+, le librerie di sviluppo GTK4 e Libadwaita, Meson, Ninja e il compilatore di schemi GLib. Le istruzioni di installazione sono dettagliate e includono setup per Ubuntu, Fedora e Arch Linux.
Per Arch Linux è disponibile anche via AUR (immagini articolo) digitando:
yay -S keymaker
Una volta installato, l’applicazione può essere eseguita direttamente o integrata nel sistema con un file .desktop. È possibile configurare le preferenze tramite GSettings o variabili d’ambiente, scegliendo il tipo di chiave predefinito, la dimensione RSA, la directory SSH e il livello di logging.

Un progetto in evoluzione con roadmap ambiziosa
Key Maker è ancora in fase attiva di sviluppo, con una roadmap che prevede l’integrazione con l’agente SSH, la gestione del file ~/.ssh/config, il supporto per known_hosts, l’auditing della sicurezza delle chiavi e la distribuzione diretta su GitHub e GitLab. Queste funzionalità renderanno l’applicazione ancora più completa e adatta a scenari avanzati.
Il progetto è aperto ai contributi, con linee guida chiare per lo stile del codice, la documentazione e i test. Gli sviluppatori interessati possono partecipare tramite GitHub, proponendo nuove funzionalità, segnalando bug o migliorando l’interfaccia.
Key Maker è lo strumento giusto per gestire le chiavi SSH su Linux
Key Maker rappresenta una svolta nella gestione delle chiavi SSH su Linux. Con un’interfaccia moderna, funzionalità complete e un’attenzione rigorosa alla sicurezza, semplifica un compito essenziale per sviluppatori, sysadmin e utenti avanzati. È un esempio di come il software open source possa coniugare usabilità e potenza, offrendo soluzioni eleganti a problemi concreti.