3.7 KiB
3.7 KiB
Changelog — WGSecure (WGS)
Toutes les modifications notables de ce projet sont documentées ici.
Format basé sur Keep a Changelog.
Ce projet suit le Versionnage Sémantique.
[0.2.0] — 2026-06-01
Ajouté
- Onglet "À propos" dans le panneau admin : logo bouclier, version, branding JT-Tools by Johnny
- Icône bouclier vectorielle générée par QPainter (7 résolutions : 16→256 px)
- Vert connecté / Rouge déconnecté / Orange connexion en cours / Bleu app / Violet admin
- Icône barre des tâches : installation automatique de
~/.local/share/icons/wgsecure.pnget~/.local/share/applications/wgsecure.desktopau premier démarrage - Thème sombre uniforme sur les 6 onglets du panneau admin (CSS partagé
_TAB_CSS)- Fond
#1c2833, texte blanc, champs semi-transparents - Bandeau coloré par onglet (bleu/navy/teal/bleu/rouge)
- TabBar cohérente avec onglet actif mis en évidence
- Fond
- Makefile : compilation binaire Linux (
make linux) et Windows (make windowsvia Wine) - README enrichi avec badges shields.io (version, Python, PyQt6, plateformes) et emojis
Corrigé
- Bug MDP vide :
set_admin_password("")effaçait incorrectement — hashait la chaîne vide, forçant une demande de mot de passe vide après suppression - Menu systray incomplet :
QActionen variables locales GC'd par Python avant affichage → toutes les actions passent désormaisselfcomme parent Qt - Section infos invisible :
QWidgetsansautoFillBackgroundne peignait pas son fond ; remplacé parQFrameavecsetAutoFillBackground(True)et couleurs explicites - Bouton agrandir persistant :
setWindowFlagseul ignoré par Mutter/XWayland →setWindowFlags()complet sansWindowMaximizeButtonHint
Amélioré
- Fenêtre principale agrandie 380×460 → 400×520 pour afficher les 6 lignes d'infos
- Police des labels infos : 11 → 12 px, couleurs explicites
#2c3e50 - Panneau admin : largeur 620 → 700 px pour éviter le débordement des onglets
app.setWindowIcon()posé surQApplication(multi-tailles) +setDesktopFileName()- Page About : icône 96 → 86 px (−10 %), texte en blanc sur fond sombre
#1c2833
[0.1.0] — 2026-06-01
Ajouté
- Interface graphique PyQt6 avec icône systray (Linux & Windows)
- Mode User (défaut) : connexion / déconnexion WireGuard en un clic, statut en temps réel
- Mode Admin (
--adminou via le menu) protégé par mot de passe - Panneau Admin avec 5 onglets :
- WireGuard : configuration serveur (adresse, port UDP, clé publique, DNS, IP client)
- Clés : génération de paires Curve25519 (clé privée / publique), aperçu config exportable
- MFA : génération de secret TOTP, QR Code compatible Google Authenticator / Aegis
- Test connexion : vérification UDP du serveur avant tunnel
- Sécurité : gestion du mot de passe administrateur (SHA-256 + salt)
- Surcouche MFA : dialogue TOTP avec minuterie de validité (fenêtre glissante ±1)
- Génération de clés WireGuard via
cryptography(X25519, sanswgbinaire) - Écriture automatique du fichier
.confWireGuard avec permissions0600 - Connexion via
wg-quick(Linux) ouwireguard /installtunnel(Windows) - Statut temps réel : trafic RX/TX, dernier handshake
- Réduction dans le systray à la fermeture de la fenêtre principale
- Configuration persistante JSON (
~/.wgsecure/config.json)
Versions planifiées :
0.3.0— Import/export de profils WireGuard (.conf), support multi-profils0.4.0— MFA par clé matérielle (FIDO2/YubiKey)0.5.0— Paquet installable (Windows .exe / Linux .deb)