====== vsftpd ====== **vsftpd** (skrót od: //Very Secure FTP Daemon//) to popularny, szybki i bezpieczny [[serwery:ftp|serwer FTP]] dla systemów Linux/Unix. Poniżej znajduje się instrukcja instalacji i konfiguracji serwera FTP na systemie Fedora, umożliwiająca udostępnianie plików innym komputerom w sieci lokalnej. =====Instalacja vsftpd===== * Aby zainstalować serwer FTP **vsftpd** na Fedora, wykonaj poniższe polecenie: ''sudo dnf install vsftpd'' * Sprawdź, czy serwer został zainstalowany poprawnie: ''vsftpd -version'' * Po zainstalowaniu możesz już uruchomić serwis **vsftpd**: ''sudo systemctl start vsftpd'' * Ustaw automatyczne uruchamianie przy starcie systemu: ''sudo systemctl enable vsftpd'' =====Konfiguracja serwera FTP===== * Plik konfiguracyjny **vsftpd** znajduje się w katalogu: ''/etc/vsftpd/'' * Otwórz go w edytorze tekstowym. ====Zalecane ustawienia==== ===Chrootowanie użytkowników=== Aby zapobiec wychodzeniu użytkowników poza ich katalogi domowe, upewnij się, że linia ''chroot_local_user'' jest ustawiona na ''YES'': ''chroot_local_user=YES'' ===Zezwolenie na logowanie anonimowe=== Jeśli chcesz umożliwić logowanie anonimowe, upewnij się, że linia ''anonymous_enable'' jest ustawiona na ''YES'': ''anonymous_enable=YES'' ===Zezwolenie na logowanie lokalnych użytkowników=== Możesz umożliwić logowanie lokalnym użytkownikom systemowym przez FTP: ''local_enable=YES'' ===Używanie binarnego trybu transferu plików=== ''ascii_upload_enable=NO'' ''ascii_download_enable=NO'' **Zapisz plik i zamknij edytor.** =====Utworzenie użytkownika FTP===== * Utwórz katalog, który chcesz udostępniać: ''sudo mkdir -p /home/jakis_user/FREE'' * Nadaj odpowiednie uprawnienia: ''sudo chown ftp:ftp /jakis_user/FREE'' ''sudo chmod 755 /home/jakis_user/FREE'' * Skonfiguruj jego katalog domowy na katalog udostępniany: ''sudo usermod -d /home/jakis_user/FREE'' * Ustaw chroot, aby użytkownik był ograniczony do swojego katalogu: Dodaj ftpuser do pliku: echo "ftpuser" | sudo tee -a /etc/vsftpd/user_list - Jeśli chcesz utworzyć specjalnego użytkownika FTP, wykonaj następujące polecenie: ''sudo useradd jakis_uzytkownik sudo passwd jakies_haslo'' - Przypisz odpowiednie uprawnienia do katalogu, który będzie używany przez tego użytkownika, np. ''/home/jakis_uzytkownik/FREE'': ''sudo mkdir /home/jakis_uzytkownik/FREE sudo chown jakis_uzytkownik /home/jakis_uzytkownik/FREE'' =====Restart serwera FTP===== Po dokonaniu zmian w pliku konfiguracyjnym, należy zrestartować serwis **vsftpd**, aby zastosować zmiany: ''sudo systemctl restart vsftpd'' =====Sprawdzanie statusu serwera FTP===== Aby sprawdzić, czy serwer FTP działa poprawnie, użyj polecenia: ''sudo systemctl status vsftpd'' =====Połączenie z serwerem FTP===== Po skonfigurowaniu serwera FTP, możesz połączyć się z nim z lokalnej maszyny, używając klienta FTP, np. **ftp**: ''ftp localhost'' Zostaniesz poproszony o podanie nazwy użytkownika i hasła. Po poprawnym zalogowaniu, możesz przesyłać pliki na serwer FTP oraz pobierać je. =====Dodatkowe ustawienia===== * **Zezwolenie na połączenia tylko z określonego adresu IP lub z sieci lokalnej**: W pliku ''/etc/vsftpd/vsftpd.conf'' dodaj: listen_address=192.168.1.1 # Podaj adres IP serwera FTP * **Sprawdzenie logów**: Aby sprawdzić logi serwera FTP, użyj komendy: ''sudo journalctl -u vsftpd'' =====Problemy i rozwiązywanie problemów ===== * Jeśli napotkasz błąd związany z **chroot()**, upewnij się, że w pliku ''/etc/vsftpd/vsftpd.conf'' masz ustawioną opcję ''chroot_local_user=YES''. Jeśli nadal występują problemy, sprawdź plik ''chroot_list'' lub upewnij się, że masz odpowiednie uprawnienia do katalogów użytkowników. =====Konfiguracja zapory sieciowej===== Otwórz porty FTP w zaporze: ''sudo firewall-cmd --add-service=ftp --permanent'' ''sudo firewall-cmd --reload'' ==Kategoria serwery== {{indexmenu>:serwery:ftp#1}} {{pagebox>pagebox:kategorie}}