Linux App
vsFTPd GUI 🐧⚙️
Editor grafico per configurare vsFTPd su Linux senza modificare manualmente il file vsftpd.conf
vsFTPd GUI è un editor grafico per Linux che semplifica la configurazione di vsFTPd (Very Secure FTP Daemon) attraverso un'interfaccia con help in italiano.
vsFTPd è un server FTP open source, leggero e progettato per sistemi Unix-like. La sua architettura consente di gestire anche un numero elevato di connessioni simultanee, rendendolo utilizzabile non solo su piccoli server, ma anche in infrastrutture con molti client.
Naturalmente il numero di accessi che un sistema può sostenere non dipende esclusivamente dal software FTP: CPU, RAM, dischi, banda disponibile, cablaggio e apparati di rete devono essere dimensionati in funzione del carico. Gestire pochi client o centinaia di macchine sono scenari infrastrutturali molto diversi.
Perché vsFTPd
Uno dei motivi alla base del progetto "Cruscotto Maglieria" è proprio la possibilità di utilizzare una soluzione open source e scalabile senza dover ricorrere necessariamente a software FTP proprietario per infrastrutture con numerosi client.
vsFTPd incorpora inoltre meccanismi e limiti progettati per contenere il rischio di sovraccarico e attacchi di tipo DoS (Denial of Service).
In condizioni adeguate, la documentazione di questo servizio/demone riporta la possibilità di gestire oltre 500/1000 utenti simultanei in download continuo, con un utilizzo della CPU indicato intorno al 7% su hardware relativamente limitato.
Questi valori non rappresentano una capacità garantita per qualsiasi installazione: il risultato effettivo dipende dalla configurazione del server, dal tipo di trasferimenti e soprattutto dall'infrastruttura che deve sostenere il traffico.
Un'interfaccia grafica per vsftpd.conf
La prima parte del mio progetto, prevedeva di costruire un interfaccia grafica per vsFTPd, la GUI creata interviene sul file di configurazione /etc/vsftpd.conf sostituendo, dove necessario, la modifica manuale delle direttive con una interfaccia grafica.
L'applicazione è pensata per essere utilizzata su distribuzioni Linux con Python 3 e deve essere avviata con privilegi root, necessari per operare sul file di configurazione di sistema.
Configurazione selettiva
L'aspetto caratteristico del progetto è il modo in cui viene gestito il file di configurazione.
vsFTPd GUI non riscrive automaticamente tutto il file. Ogni direttiva viene gestita individualmente attraverso un flag che permette di stabilire se deve essere presente nella configurazione.
All'avvio il programma:
- legge il contenuto di
vsftpd.conf; - individua le direttive presenti;
- attiva il relativo flag nell'interfaccia;
- mostra il valore realmente presente nel file, anche quando è
NO.
Se una direttiva è presente nel file, quindi, il relativo flag risulta attivo indipendentemente dal valore assegnato.
Solo le direttive selezionate
Al momento del salvataggio vengono scritte nel file soltanto le direttive il cui flag è attivo.
Questo approccio permette di intervenire sulla configurazione in modo selettivo, senza trasformare l'applicazione in un editor che ricostruisce integralmente vsftpd.conf.
Dopo il salvataggio è necessario riavviare o ricaricare il servizio vsFTPd affinché le modifiche vengano applicate.
Caratteristiche
| Caratteristica | Funzione |
|---|---|
| 🖥️ Interfaccia grafica | Gestione di vsftpd.conf senza modificarlo manualmente |
| 🎯 Configurazione selettiva | Vengono mantenute le sole direttive abilitate |
| 🔎 Lettura del file esistente | Rileva direttive e valori direttamente da vsftpd.conf |
| 🇮🇹 Help in italiano | Spiega le direttive disponibili nell'interfaccia |
| 🐧 Linux + Python 3 | Applicazione sviluppata per sistemi Linux |
| 🔐 Privilegi root | Necessari per modificare il file di configurazione di sistema |
| 📈 Scalabilità | Basata su vsFTPd, adatto anche a scenari con numerosi accessi |
Open source e GPLv3
vsFTPd GUI è un progetto pubblico disponibile su GitHub e distribuito con licenza GPLv3, trovi il link in alto a destra.
Il progetto unisce quindi un server FTP open source adatto anche a scenari di carico significativo con uno strumento grafico dedicato alla configurazione, mantenendo il controllo diretto sul file vsftpd.conf, questo permette di contenere i costi di gestione, perché si può far uso di PC dismessi.
vsFTPd GUI fa parte di un progetto più ampio
vsFTPd GUI è la prima parte di un sistema sviluppato per arrivare al monitoraggio delle macchine da maglieria attraverso una rete Linux e un server FTP.
Il suo ruolo è quello di configurare il server vsFTPd, intervenendo sul file vsftpd.conf attraverso un'interfaccia grafica.
Il sistema è stato poi completato con:
- vsFTPd Tray Monitor → per controllare lo stato del demone e l'attività di trasferimento;
- Cruscotto Maglieria → per utilizzare l'infrastruttura FTP nel monitoraggio delle macchine e dei tempi di produzione.
Schema del progetto:
| Progetto | Ruolo |
|---|---|
| vsFTPd GUI | Configurazione del server FTP Linux |
| vsFTPd Tray Monitor | Controllo dello stato e dell'attività del server |
| Cruscotto Maglieria | Monitoraggio delle macchine e della produzione |