Projekt powstał na bazie istniejącego serwera FujiNetWIFI/tnfsd. Nie pisałem całego protokołu TNFS od zera i wykorzystałem oryginalny kod serwera i rozszerzyłem go o obsługę wielu użytkowników oraz panel do zarządzania.
Dodałem:
rejestrację i logowanie użytkowników,
osobny katalog dla każdego konta,
uwierzytelnianie TNFS loginem i osobnym tokenem,
panel WWW do wysyłania, pobierania, usuwania i zmiany nazw plików,
tworzenie katalogów,
limity przestrzeni dla użytkowników,
tryb TNFS tylko do odczytu lub z możliwością zapisu,
panel administratora,
blokowanie i aktywowanie kont,
włączanie i wyłączanie rejestracji,
interfejs po polsku i angielsku,
izolację sesji i katalogów użytkowników,
usługi systemd,
instalator i aktualizator
Panel i serwer TNFS korzystają z tych samych katalogów, więc plik wrzucony przez stronę jest od razu dostępny przez TNFS. Zmiany uprawnień, limitu lub tokenu są pobierane przy następnym montowaniu udziału.
Projekt jest jeszcze w fazie rozwojowej, ale podstawowa funkcjonalność już działa.
Projekt można pobrać z mojego repo na GitHub: https://github.com/Kermit83Lair/tnfs-multitenant
Załączam kilka screenów z panelu admin.