Jeśli konfigurujesz serwer Linux, potrzebujesz dostępu do FTP. Oznacza to najpierw zainstalowanie serwera FTP w systemie Linux. Powinna to być jedna z pierwszych rzeczy, które robisz po zainstalowaniu systemu operacyjnego serwera.
Wiele serwerów Linux działa na Ubuntu. Spójrzmy więc, jak skonfigurować serwer FTP na serwerze Ubuntu.
Co to jest serwer FTP?
FTP lub protokół przesyłania plików to system używany do przesyłania (wprowadzania) lub pobierania (pobierania) plików z serwera. Prawdopodobnie używałeś go w przeszłości, nie zdając sobie z tego sprawy, podczas pobierania plików lub przesyłania obrazów do sieci. Lub możesz użyć klienta FTP do bezpośredniego połączenia z serwerem plików FTP.
Aby tak się stało, oprogramowanie serwera FTP musi być zainstalowane na zdalnym serwerze obsługującym pliki.
Niezależnie od tego, czy budujesz serwer domowy z systemem Linux, serwer WWW, serwer gier, czy jakikolwiek inny serwer, który pasuje do Twojego projektu, FTP to najprostszy sposób przesyłania danych z jednego systemu do drugiego.
Zainstaluj serwer na Ubuntu
Instalacja serwera FTP na Ubuntu jest prosta. Prawdopodobnie najlepszym rozwiązaniem jest vsftpd. Wykonaj poniższe czynności, aby zainstalować i skonfigurować serwer FTP na Ubuntu z vsftpd.
1. Zainstaluj vsftpd
Być może masz już zainstalowany vsftpd. Aby to sprawdzić, otwórz okno terminala i wprowadź dane
sudo apt list --installed
Powinieneś znaleźć vsftpd u dołu listy. Jeśli nie, po prostu zainstaluj za pomocą
sudo apt install vsftpd
Po zainstalowaniu nadszedł czas na skonfigurowanie vsftpd. Zacznij od zrobienia kopii oryginalnego pliku konfiguracyjnego. Oznacza to, że jeśli coś pójdzie nie tak, można przywrócić domyślną konfigurację.
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf_default
Po wykonaniu tej czynności uruchom usługę za pomocą:
sudo systemctl start vsftpd
Sprawdź, czy serwer działa z:
sudo systemctl enable vsftpd
Po zainstalowaniu vsftpd możesz rozpocząć konfigurację.
2. Utwórz użytkownika FTP
Pierwszą rzeczą, której potrzebujesz, jest konto użytkownika FTP. Dzięki temu możesz użyć dowolnego klienta FTP, aby uzyskać dostęp do plików hostowanych na serwerze za pośrednictwem vsftpd. W terminalu wprowadź:
sudo useradd –m username
(Zastąp „nazwę użytkownika” swoją zamierzoną nazwą użytkownika).
sudo password username
Po ustawieniu nazwy użytkownika i hasła utwórz plik testowy w folderze domowym konta, aby potwierdzić, że działa:
cd /home/username sudo nano testfile.txt
Kiedy po raz pierwszy łączysz się z serwerem FTP Ubuntu, powinieneś zobaczyć plik testfile.txt.
3. Zabezpiecz swój serwer FTP Ubuntu
Jednak przed skonfigurowaniem połączenia musisz upewnić się, że porty FTP są otwarte w Ubuntu. Domyślnie są one zamknięte ze względów bezpieczeństwa w ufw (nieskomplikowany firewall).
Aby umożliwić dostęp przez port 20, użyj
sudo ufw allow 20/tcp
Jeśli twoja dystrybucja używa innej zapory lub zainstalowałeś alternatywną, sprawdź dokumentację, aby otworzyć porty.
Będziesz także chciał, aby użytkownicy mogli przesyłać pliki. Możesz to ustawić w pliku konfiguracyjnym. Otwórz, aby edytować:
sudo nano /etc/vsftpd.conf
Znajdź write_enabled i odkomentuj wpis, upewniając się, że jest ustawiony na „TAK”:
write_enable=YES
Naciśnij Ctrl + X, aby wyjść, i Y, aby zapisać.
W przypadku publicznie dostępnych serwerów FTP będziesz chciał ograniczyć dostęp, jaki ma każdy użytkownik. Dzięki chrootowi możemy ograniczyć każdego użytkownika do jego katalogu domowego. W vsftpd.conf znajdź i odkomentuj tę linię (usuń #):
chroot_local_user=YES
Ponownie, Ctrl+X, aby wyjść, i Y, aby zapisać.
Dla wielu użytkowników prowadzenie listy jest mądrzejszą opcją.
Najpierw otwórz vsftpd.chroot_list w edytorze tekstu.
sudo nano /etc/ vsftpd.chroot_list
Tutaj wymień nazwy użytkowników, które chcesz ograniczyć do własnych folderów. Zapisz i wyjdź, a następnie wróć do vsftpd.conf i upewnij się, że chroot_local_user=YES jest odkomentowany:
#chroot_local_user=YES
Zamiast tego odkomentuj
chroot_list_enable=YES
oraz
chroot_list_file=/etc/vsftpd.chroot_list
To powinno wyglądać tak:
Ponownie zapisz i wyjdź. Na koniec uruchom ponownie usługę FTP:
sudo systemctl restart vsftpd.service
Na koniec użyj polecenia hostname, aby sprawdzić nazwę serwera Ubuntu. Możesz następnie użyć tego do połączenia z serwerem FTP. Jeśli wolisz używać adresu IP, wprowadź polecenie adresu ip i zanotuj je.
4. Szyfrowane połączenia: FTP+SSL=FTPS
Możesz także wymusić szyfrowanie ruchu do iz serwera FTP Ubuntu przy użyciu protokołu SSL/TLS.
Powiązane: Warunki szyfrowania, które każdy powinien znać
W pliku vsftpd.conf poszukaj odniesienia do „połączeń szyfrowanych SSL” i dodaj następujące informacje:
ssl_enable=YES rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
Zapisz i wyjdź z pliku. Możesz teraz określić FTPS jako protokół połączenia w swoim kliencie FTP.
5. Zainstaluj klienta FTP na Ubuntu
Z innego systemu możesz połączyć się z serwerem FTP Ubuntu za pomocą narzędzia wiersza poleceń lub aplikacji komputerowej.
W systemie Linux możesz uzyskać dostęp do serwera w terminalu za pomocą
sudo ftp hostname
Pamiętaj, aby zastąpić „nazwa hosta” nazwą hosta swojego serwera. Możesz również użyć adresu IP
sudo ftp ipaddress
Po wyświetleniu monitu wprowadź nazwę użytkownika i hasło ustawione wcześniej. Następnie możesz użyć poleceń get i put do przesyłania danych.
Chcesz czegoś bardziej intuicyjnego lub chcesz uzyskać dostęp do serwera FTP z innego systemu operacyjnego? Będziesz potrzebować klienta FTP, a prawdopodobnie najlepszym dostępnym jest FileZilla. Rozwiązanie typu open source jest dostępne dla systemu Windows (a także serwera), macOS, a dla systemu Linux dostępne są wersje 32-bitowe i 64-bitowe. Niestety nie ma serwera FTP FileZilla dla Ubuntu ani innych dystrybucji Linuksa.
Pobierz: FileZilla (bezpłatny)
Aby użyć klienta FileZilla do połączenia się z serwerem FTP Ubuntu, zainstaluj i uruchom aplikację. Następnie:
- Kliknij Plik > Menedżer witryny
- Tutaj kliknij Nowa witryna
- W prawym okienku wybierz FTP
- Jeśli korzystasz z FTPS, wybierz TLS dla szyfrowania .
- Następnie wprowadź nazwę hosta lub adres IP w polu Host i dodaj Port .
- W przypadku typu logowania wprowadź dane logowania do konta w polu Użytkownik i Hasło .
- Kliknij Połącz .
Następnie możesz przesyłać i pobierać (umieszczać i pobierać) dane z serwera FTP Ubuntu. Po prostu przeciągnij i upuść pliki, które chcesz przenieść.
Używasz innego klienta FTP? Kroki powinny być w dużej mierze takie same, ale sprawdź dokumentację aplikacji w celu uzyskania wyjaśnień.
Zbudowałeś serwer FTP na Ubuntu
Niezależnie od tego, czy korzystasz z wersji desktopowej, czy serwerowej systemu operacyjnego Ubuntu, teraz działa na nim serwer FTP. Można to wykorzystać do wielu celów, od przesyłania stron internetowych po zapewnianie łatwego dostępu do ważnych danych. Korzystając z FTP możesz pobrać dane, kiedy tylko tego potrzebujesz, bez fizycznego dostępu do serwera.