ProFTPD – instalacja i konfiguracja serwera FTP na Debianie
![](http://blog.brakoniecki.pl/wp-content/uploads/2015/02/proftpd.jpg)
W dzisiejszym artykule przedstawię, jak krok po kroku „postawić” na swoim VPS serwer FTP z wykorzystaniem bardzo popularnego i często polecanego pakietu ProFTPD. Przedstawię również kilka podstawowych punktów, które pomogą zdiagnozować przyczynę potencjalnych problemów z połączeniem do serwera. Jeśli kiedykolwiek instalacja FTP przysporzyła Ci zmartwień i siwych włosów, a SFTP nie spełnia Twoich wymagań, ten artykuł może okazać się przydatny przy nadarzającej się okazji.
1. Instalacja
Używamy apt-get, aby wyszukać i zainstalować pakiet proftpd:
apt-get install proftpd
Instalacja rozpoczyna się. Na starcie dokonujemy wyboru pomiędzy uruchamianiem ProFTPD z serwera inetd albo jako standalone. Polecam w tym miejscu wybrać opcję standalone. Po chwili serwer jest już zainstalowany. Pierwszy krok wykonany.
2. Konfiguracja
Otwieramy plik konfiguracyjny ProFTPD używając prostego edytora tekstowego, np. nano:
nano /etc/proftpd/proftpd.conf
Znajdziemy w nim kilka pozycji, które warto ustawić według własnych potrzeb:
ServerName "Serwer FTP" #nazwa serwera DisplayLogin welcome.msg #nazwa pliku z tekstem powitalnym DefaultRoot ~ #katalog główny dla łączących się użytkowników #powoduje zamknięcie użytkowników w ich katalogach domowych #(tzw. jail) #zakomentuj, aby usunąć to ograniczenie RequireValidShell off #wymaga, aby użytkownicy posiadali poprawny shell Port 21 #domyślny port FTP, można zmienić dla bezpieczeństwa User proftpd #domyślny użytkownik (i grupa), który jest wykorzystywany Group nogroup #do uruchamiania serwera
To oczywiście nie wszystkie dostępne ustawienia serwera – wybrałem jedynie te najważniejsze.
Gotowe. W tym momencie serwer FTP może już przyjmować połączenia.
Co jeśli nie mogę się połączyć?
Tak może się zdarzyć, szczególnie gdy próbujesz zalogować się jako root (odradzam wykorzystywanie konta root do realizacji połączeń FTP). Znajduje się on bowiem w pliku /etc/ftpusers, który zawiera listę użytkowników, którym odebrano prawo do używania połączenia FTP. Przy próbie połączenia wystąpi błąd 530 Login incorrect. Jeśli nie możesz połączyć się do serwera, upewnij się, że wykorzystywany użytkownik nie znajduje się w pliku /etc/ftpusers.
Warto również sprawdzić, czy użytkownik posiada prawidłowy shell, np. /bin/bash. Jest to istotne w sytuacji, gdy w konfiguracji serwera opcja RequireValidShell jest ustawiona na „on”. Zmianę shella można przeprowadzić za pomocą polecenia:
chsh -s /bin/bash nazwausera
gdzie /bin/bash można zastąpić dowolną powłoką systemową.
Może się również zdarzyć, że połączenie nie może zostać zrealizowane, ponieważ ustawiony został niestandardowy port do połączeń FTP. Sprawdzenie tej opcji konfiguracyjnej (o ile to możliwe) pozwoli zaoszczędzić czas na poszukiwaniach przyczyny problemu.