Jak hostować serwer FTP w systemie Linux

Trudno w to uwierzyć, ale w 2017 roku FTP nadal pozostaje jednym z najbardziej niezawodnych sposobów przesyłania dużych plików z jednego miejsca do drugiego w Internecie. Wielu ekspertów zwróciło się ku innym rozwiązaniom (takim jak Syncing / Bittorrent i NFS), ale dla tych, którzy chcą szybko, w łatwy i niezawodny sposób przesyłać dane, serwer FTP jest nadal najlepszym rozwiązaniem. W tym samouczku pokażemy, jak hostować serwer FTP w systemie Linux. Będziemy używać narzędzia o nazwie Serwer FTP vsftpd. Istnieje wiele narzędzi serwera w tle, które robią to, co robi to narzędzie. Jeśli nie jesteś zainteresowany używaniem vsftpd jako oprogramowania serwera FTP, bardzo łatwo jest znaleźć dobrą alternatywę. To powiedziawszy, vsftpd ma długą historię i prawdopodobnie jest zdecydowanie najlepszy.
OSTRZEŻENIE SPOILERA: Przewiń w dół i obejrzyj samouczek wideo na końcu tego artykułu.

Instalacja

Uzyskanie vsftpd jest dość łatwe, ponieważ oprogramowanie jest bardzo małe. Jeśli chodzi o narzędzia serwerowe, to jest proste. Jest to mały demon z plikiem konfiguracyjnym, który pozwala każdemu szybko i łatwo hostować serwer FTP w sieci LAN lub przez Internet. Co najlepsze, to narzędzie działa prawie na wszystkim. Oznacza to, że jeśli potrzebujesz szybkiego i brudnego sposobu przesyłania danych z jednego serwera na drugi, możesz uruchomić vsftpd na praktycznie każdej dystrybucji serwera Linux.

Ponadto zwykłe systemy operacyjne Linux na komputery stacjonarne również zawierają to oprogramowanie serwerowe, dzięki czemu można szybko uruchomić serwer bezpośrednio z komputera domowego.

Ubuntu

sudo apt install vsftpd

sudo systemctl enable vsftpd

sudo systemctl start vsftpd

Debian

sudo apt install vsftpd

sudo systemctl enable vsftpd

sudo systemctl start vsftpd

Arch Linux

sudo pacman -S vsftpd

sudo systemctl enable vsftpd

sudo systemctl start vsftpd

Fedora

sudo dnf install vsftpd

sudo systemctl enable vsftpd

sudo systemctl start vsftpd

Otwórz SUSE

sudo zypper install vsftpd

sudo systemctl enable vsftpd

sudo systemctl start vsftpd

Inny

Narzędzie vsftpd to usługa, która umożliwia każdemu serwerowi Linux (lub komputerowi) utrzymywanie i hostowanie serwera FTP. Protokół FTP, pomimo tego, że jest bardzo stary, jest nadal bardzo w użyciu, więc narzędzie vsftpd można znaleźć w prawie wszystkich głównych dystrybucjach Linuksa na PC i serwer.

Aby pobrać go do swojej dystrybucji Linuksa, otwórz terminal i wyszukaj w menedżerze pakietów „vsftpd” lub „serwer FTP”. Powinieneś także wypróbować inne narzędzia do hostingu FTP, jeśli Twój system operacyjny oparty na systemie Linux nie ma go vsftpd.

Konfiguracja

Po zainstalowaniu vsftpd i włączeniu go w systemd usługa działa. Jednak sam serwer FTP nie będzie działał, jeśli nie zostanie skonfigurowany. Aby to zrobić, musimy otworzyć plik konfiguracyjny vsftpd w edytorze tekstu i dodać kilka rzeczy. W terminalu otwórz edytor tekstu.

sudo nano /etc/vsftpd.conf

Domyślnie dozwolone są połączenia anonimowe. Oznacza to, że użytkownicy, bez względu na to, kim są, mogą łatwo łączyć się i używać Twojego serwera FTP. Dla ułatwienia pozostaw tę opcję włączoną. Jeśli nie, dodaj # przed „anonymous_enable = YES”, aby wyłączyć to ustawienie.

Następnie użyj klawiszy strzałek, aby przewinąć w dół. Poszukaj „write_enable = YES” i „anon_upload_enable = YES”. Włącz te ustawienia, usuwając znak # przed nim.

W dalszej części pliku konfiguracyjnego znajduje się ustawienie zabezpieczeń, które należy włączyć. To ustawienie wymusza działanie serwera FTP na własnym użytkowniku i pozbawia go uprawnień roota. Oznacza to, że jeśli ktoś włamie się do twojego serwera FTP, nie będzie w stanie zepsuć całego twojego serwera Linux lub komputera. Dla jasności, vsftpd może działać bez tego ustawienia, ale nie zalecamy tego.

Aby włączyć to ustawienie bezpieczeństwa, znajdź „nopriv_user = ftpsecure” i usuń znak #.

Gdy wszystkie te ustawienia są włączone, uruchom ponownie vsftpd z systemem inicjującym systemd:

sudo systemctl restart vsftpd

Połącz się z serwerem, przechodząc do paska adresu menedżera plików w systemie Linux i wpisując:

ftp://local.ip.address

Uwaga: nie chcesz używać menedżera plików? Próbować FileZilla zamiast.

Możesz również użyć nazwy hosta, takiej jak

ftp://ubuntu-server

itd.

Aby znaleźć adres IP serwera, wykonaj ifconfig, a następnie wprowadź adres IP, który zwraca polecenie (w ramach IPv4). Alternatywnie zrób:

ping hostname

Następnie zapisz znalezione pingi IP.

SSH SFTP

Nie możesz uruchomić tego narzędzia VSftpd? Zbyt skomplikowane? Jest inny sposób! Zainstaluj SSH i użyj wbudowanego narzędzia SFTP. Protokół SSH może na żądanie obsługiwać bezpieczny serwer FTP. Są z tego korzyści, takie jak błyskawiczne uzyskanie serwera do szybkiego przesyłania plików. Istnieją jednak również poważne wady, takie jak wolniejsza szybkość transferu. Tradycyjny protokół FTP, choć nie tak bezpieczny, nie jest obciążony regułami szyfrowania, w wyniku czego użytkownicy mogą bardzo szybko przesyłać pliki.

SFTP z pewnością wyciągnie użytkowników z trudnej sytuacji, ale FTP nie da się zastąpić nawet w 2017 roku. Chcesz się dowiedzieć, jak uruchomić protokół SFTP / SSH? Udaj się tutaj, aby dowiedzieć się więcej!

Wniosek

Mimo swojego wieku, FTP nadal okazuje się niezawodnym narzędziem. Niewiele innych protokołów transferu jest tak niezawodnych podczas szybkiego i łatwego przesyłania danych przez sieć. Niezależnie od tego, czy próbujesz przenieść kilka plików na serwer internetowy, czy też dostarczyć kilka zdjęć znajomym, protokół przesyłania plików nadal udowadnia, że ​​ma swoje zastosowania.