Pure-FTPd to jeden z najbardziej bezpiecznych serwerów FTP do tego stabilny i dość prosty w konfiguracji. Tak więc jego popularność wśród systemów Unix/Linux nie jest przypadkowa. Poniżej przedstawiam krok po kroku instalację jak i konfigurację serwera i opis rozwiązywania ewentualnych problemów. Przeprowadzony proces instalacji i konfiguracji wykonywany był na dystrybucji Linux: Ubuntu Mate dla PC jak i dla Raspberry.
Instalacja Pure-FTPd
Proces instalacji zaczynamy od aktualizacji pakietów:
apt-get update | apt-get upgrade
Następnie przechodzimy do instalacji pakietów dla naszego serwera FTP:
apt-get install pure-ftpd pure-ftpd-common
Konfiguracja
Dostęp ( autoryzacja ) do zasobów będzie możliwy poprzez konta wirtualnych użytkowników ( login i hasło niezależne od userów systemowych ) a prawa do udostępnionego katalogu będą uzależnione od użytkownika systemowego przypisanego właśnie do nowo utworzonego użytkownika wirtualnego serwera Pure-FTPd.
Tworzymy grupę i użytkownika systemowego:
groupadd pftpd
i samego użytkownika:
useradd -g pftpd -d /dev/null -s /etc pftpd
Następnie dodajemy użytkowników wirtualnych do których przypisujemy użytkowników systemowych. Chodzi tutaj o odpowiednie uprawnienia dla udostępnianych zasobów. Tak więc może to być nasz nowo utworzony użytkownik systemowy pftpd lub jakiegokolwiek inny z pliku /etc/passwd. Trzeba tylko pamiętać aby udostępnione katalogi miały ustawionych odpowiednich właścicieli jak i chmoda 755.
pure-pw useradd [USER] -u [USER_SYSTEMOWY] -d /home/[KATALOG_USERA]
Jeśli w powyższym poleceniu dodamy wirtualnego użytkownika bez podania istniejącego użytkownika systemowego dostaniemy poniższy komunikat:
You must give (non-root) uid and gid
musisz bezwzględnie podać w opcji -u istniejącego użytkownika systemowego !
Sprawdzamy czy katalog [KATALOG_USERA] ma odpowiednie prawa i właściciela, na przykład:
drwxr-xr-x 6 [USER_SYSTEMOWY] [GRUPA] 4096 Jun 21 14:46 [NAZWA_UDOSTEPNIONEGO_KATALOGU]
Aby autoryzacja przebiegała prawidłowo należy utworzyć odpowiedni link symboliczny:
ln -s /etc/pure-ftpd/conf/PureDB /etc/pure-ftpd/auth/50pure
Zmiana hasła użytkownika wirtualnego:
pure-pw passwd [USER_WIRTUALNY]
Dane dotyczące wirtualnych użytkowników dla Pure-FTPd znajdują się w pliku /etc/pure-ftpd/pureftpd.pdb oczywiście hasła są zakodowane 🙂
Aby zmiany dotyczące nowo wprowadzonych użytkowników zostały wprowadzone należy przegenerować bazę użytkowników:
pure-pw mkdb
Modyfikowanie ustawień użytkownika wirtualnego:
pure-pw usermod [USER_WIRTUALNY] -u [USER_SYSTEMOWY] -d [SCIEZKA_DO_KATALOGU]
Powyższe polecenia zmienia dwie podstawowe opcje, większą ilość opcji zobaczymy wpisując polecenie pure-pw bez żadnych parametrów.
Kasowanie użytkownika:
pure-pw user_del [USER_WIRTUALNY]
Spis wszystkich użytkowników wirtualnych:
pure-pw list
Pokazanie wszystkich danych dotyczących podanego użytkownika:
pure-pw show [USER_WIRTUALNY]
Opcje konfiguracyjne zawarte są w lokalizacji: /etc/pure-ftpd/conf. Konfigurowanie parametrów serwera polega na utworzeniu pliku z nazwą opcji i zapisanie odpowiedniej wartości, dla przykładu nałożenie Chroota:
echo "yes" > /etc/pure-ftpd/conf/ChrootEveryone
Słowa kluczowe: pure-ftpd, konfiguracja, instalacja, linux, ubuntu, debian, autoryzacja ftp, serwery ftp, raspberry, raspbian