GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nastavit a používat FTP server v Ubuntu Linux

FTP je zkratka pro „File Transfer Protocol“ a je to skvělý protokol pro stahování souborů ze vzdáleného nebo místního serveru nebo nahrávání souborů na server. Používání FTP se po správném nastavení ukazuje jako docela základní úkol. Funguje to tak, že server naslouchá připojení (ve výchozím nastavení na portu 21) od klientů. Klienti mohou pomocí svého uživatelského účtu přistupovat ke vzdálenému adresáři a poté tam stahovat nebo nahrávat soubory v závislosti na oprávněních, která jim byla udělena. Je také možné nakonfigurovat anonymní autorizaci, což znamená, že uživatelé nebudou potřebovat vlastní účet, aby se mohli připojit k serveru FTP.

Na Ubuntu Linux je k dispozici velké množství různých softwarových balíků pro FTP servery a klienty. Jako FTP klienta můžete dokonce použít výchozí grafické uživatelské rozhraní a nástroje příkazového řádku. Velmi oblíbeným a vysoce konfigurovatelným balíkem FTP serveru je vsftpd, dostupný pro mnoho systémů Linux, včetně Ubuntu.

V této příručce projdeme pokyny krok za krokem k instalaci vsftpd na Ubuntu. Ukážeme si také, jak nakonfigurovat FTP server pomocí různých nastavení, pak jak používat příkazový řádek, GNOME GUI nebo FTP klientský software pro připojení k FTP serveru.

UPOZORNĚNÍ
V některých situacích postačí FTP, ale pro připojení přes internet se doporučuje SFTP. Je to proto, že FTP není bezpečné používat přes internetové připojení, protože vaše přihlašovací údaje a data jsou přenášena bez šifrování. „S“ v SFTP znamená „Secure“ a tuneluje protokol FTP prostřednictvím SSH, čímž poskytuje šifrování potřebné k navázání zabezpečeného připojení. Další informace o SFTP naleznete v našem průvodci Jak bezpečně přenášet soubory pomocí SFTP.

V tomto tutoriálu se naučíte:

  • Jak nainstalovat a nakonfigurovat vsftpd na Ubuntu
  • Jak nastavit uživatelský účet FTP
  • Jak se připojit k serveru FTP pomocí příkazového řádku
  • Jak se připojit k serveru FTP prostřednictvím grafického uživatelského rozhraní
  • Jak nakonfigurovat anonymní přihlášení FTP
  • Jak změnit výchozí port naslouchání FTP
  • Odstraňování problémů s chybou připojení FTP „připojení odmítnuto“

Připojení k FTP serveru na Ubuntu Linux

Softwarové požadavky a konvence příkazového řádku systému Linux
Kategorie Požadavky, konvence nebo použitá verze softwaru
Systém Ubuntu Linux
Software vsftpd
Jiné Privilegovaný přístup k vašemu systému Linux jako root nebo prostřednictvím sudo příkaz.
Konvence # – vyžaduje, aby dané linuxové příkazy byly spouštěny s právy root buď přímo jako uživatel root, nebo pomocí sudo příkaz
$ – vyžaduje, aby dané linuxové příkazy byly spouštěny jako běžný neprivilegovaný uživatel

instalace vsftpd

Nainstalujte vsftpd na svůj systém Ubuntu zadáním tohoto příkazu do terminálu:

$ sudo apt install vsftpd

Konfigurace serveru vsftpd

  1. Vždy je nejlepším postupem ponechat si záložní kopii původního konfiguračního souboru pro případ, že by se později něco pokazilo. Pojďme přejmenovat výchozí konfigurační soubor:
    $ sudo mv /etc/vsftpd.conf /etc/vsftpd.conf_orig
    
  2. Vytvořte nový konfigurační soubor vsftpd pomocí nano nebo libovolného textového editoru, který preferujete:
    $ sudo nano /etc/vsftpd.conf
    
  3. Zkopírujte do svého souboru následující základní konfiguraci. Tato konfigurace bude stačit pro základní FTP server a může být později upravena pro specifické potřeby vašeho prostředí, jakmile ověříte, že funguje správně:
    listen=NO
    listen_ipv6=YES
    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    use_localtime=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    chroot_local_user=YES
    secure_chroot_dir=/var/run/vsftpd/empty
    pam_service_name=vsftpd
    rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
    rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
    ssl_enable=NO
    pasv_enable=Yes
    pasv_min_port=10000
    pasv_max_port=10100
    allow_writeable_chroot=YES

    Vložte výše uvedené řádky do nově vytvořeného /etc/vsftpd.conf a poté uložte změny a zavřete soubor.

  4. konfigurační soubor vsftpd

  5. Vestavěný firewall Ubuntu bude ve výchozím nastavení blokovat provoz FTP, ale následující příkaz vytvoří v UFW výjimku, která provoz povolí:
    $ sudo ufw allow from any to any port 20,21,10000:10100 proto tcp
    
  6. S uloženým konfiguračním souborem a aktualizovanými pravidly brány firewall restartujte vsftpd, abyste použili nové změny:
    $ sudo systemctl restart vsftpd
    

Vytvořit uživatele FTP

Náš FTP server je připraven přijímat příchozí připojení, takže nyní je čas vytvořit nový uživatelský účet, který použijeme pro připojení ke službě FTP.

  1. Tento první příkaz použijte k vytvoření nového účtu s názvem ftpuser a druhý příkaz pro nastavení hesla pro účet:
    $ sudo useradd -m ftpuser
    $ sudo passwd ftpuser
    New password: 
    Retype new password: 
    passwd: password updated successfully
    
  2. Abyste si ověřili, že vše funguje správně, měli byste uložit alespoň jeden soubor do domovského adresáře ftpuser. Tento soubor by měl být viditelný, když se v dalších krocích přihlásíme k FTP.
    $ sudo bash -c "echo FTP TESTING > /home/ftpuser/FTP-TEST"
    

Připojte se k serveru FTP pomocí příkazového řádku

Nyní byste měli být schopni se připojit k vašemu FTP serveru buď pomocí IP adresy nebo názvu hostitele. Nejprve se spuštěním následujícího příkazu ujistěte, že je ve vašem systému nainstalován výchozí nástroj FTP klienta. Buď nainstaluje software, nebo vám sdělí, že již v systému existuje.

$ sudo apt install ftp

Chcete-li se připojit z příkazového řádku a ověřit, že vše funguje, otevřete terminál a pomocí příkazu ftp Ubuntu se připojte k vaší adrese zpětné smyčky (127.0.0.1).

$ ftp 127.0.0.1

Připojení k FTP serveru pomocí příkazového řádku

Jak můžete vidět na snímku obrazovky výše, dokázali jsme se přihlásit k serveru FTP zadáním uživatelského jména a hesla, které jsme nakonfigurovali dříve. Dále zkusme vydat ls příkaz, který by měl vypsat testovací soubor, který jsme vytvořili v předchozích krocích.

ftp> ls

Seznam našeho testovacího souboru, abychom zajistili, že můžeme zobrazit obsah FTP serveru

Váš výstup by měl vypadat jako na snímku obrazovky výše, což znamená úspěšné přihlášení a ls příkaz, který odhalí náš testovací soubor, který jsme vytvořili dříve.

Připojte se k FTP serveru přes GUI GNOME

Pokud chcete, můžete se také připojit k vašemu FTP serveru pomocí GUI. Existuje mnoho možností pro FTP klienty, ale výchozí GUI GNOME na Ubuntu již přichází s možností připojení k FTP serverům ze správce souborů. Zde je návod, jak jej použít pro připojení k vašemu FTP serveru.

  1. Otevřete správce souborů z nabídky Aktivity nebo z panelu rychlého spuštění.
  2. Klikněte na „Další umístění“ a zadejte ftp://127.0.0.1 v poli „Připojit k serveru“ ve spodní části okna a klikněte na připojit.
  3. Připojení k FTP serveru pomocí správce souborů GNOME

  4. Vyberte „registrovaný uživatel“ a poté zadejte přihlašovací údaje k FTP účtu, který jsme dříve nastavili, a klikněte na připojit.
  5. Zadání přihlašovacích údajů uživatele FTP

  6. Po úspěšném připojení se zobrazí testovací soubor, který jste vytvořili dříve. Nyní si budete moci stáhnout a zobrazit tento soubor nebo nahrát svůj vlastní obsah do adresáře.
  7. Úspěšné připojení k FTP serveru, ukazuje náš testovací soubor

Povolit anonymní přístup ve vsftpd

Zatím jsme viděli, jak vytvořit nové uživatele, kteří mají přístup k FTP serveru. Pokud chcete, aby ostatní měli přístup k vašemu FTP serveru bez zadání uživatelského jména a hesla, můžete nakonfigurovat anonymní ověřování. Chcete-li jej nastavit, postupujte podle níže uvedených kroků.

  1. Nejprve budeme muset upravit /etc/vsftpd.conf otevřete jej pomocí nano nebo jiného textového editoru.
    $ sudo nano /etc/vsftpd.conf
    
  2. Dále vyhledejte anonymous_enable=NO řádek a změňte nastavení na YES .
    anonymous_enable=YES
    
  3. Až budete hotovi, ukončete tento soubor při ukládání nových změn a poté restartujte službu vsftpd, aby se změny projevily.
    $ sudo systemctl restart vsftpd
    
  4. Chcete-li otestovat anonymní přihlášení, zadejte ftp 127.0.0.1 použijte anonymous jako vaše uživatelské jméno a prázdné heslo. Měli byste obdržet 230 Login successful zpráva, jak je znázorněno na snímku obrazovky níže.
  5. Přihlášení k serveru FTP pomocí anonymního

Změnit výchozí číslo portu FTP

Ve výchozím nastavení naslouchá protokol FTP na portu 21 pro ověření uživatele a na portu 20 pro přenos dat. Toto chování však můžeme změnit drobnou úpravou souboru /etc/vsftpd.conf soubor. V dolní části souboru použijte listen_port direktivu k určení jiného portu, který má vsftpd použít. Například přidání následujícího řádku dá vsftpd pokyn, aby naslouchal na portu 2121:

listen_port=2121

Úvahy na závěr

V této příručce jsme viděli, jak použít softwarový balíček vsftpd k vytvoření FTP serveru na Ubuntu Linux. Také jsme se naučili, jak používat příkazový řádek nebo GUI GNOME jako FTP klienta pro připojení k serveru. Podle této příručky mohou počítače ve vaší místní síti přistupovat k vašemu systému a ukládat a načítat soubory, a to buď prostřednictvím příkazového řádku, nebo prostřednictvím preferovaného FTP klienta.

Odstraňování problémů

Nejčastější chybou, kterou můžete obdržet, je zpráva „Připojení odmítnuto“ při pokusu o připojení k serveru. Může to být z různých důvodů, ale běžně je to spojeno s firewallem blokujícím připojení nebo se špatně nakonfigurovaným souborem vstpd. Ujistěte se, že port FTP není blokován vaší bránou firewall provedením tohoto příkazu:

$ sudo ufw allow from any to any port 20,21,10000:10100 proto tcp

Zkontrolujte také stav služby vsftpd, abyste se ujistili, že běží a nenarazila na žádné chyby při spuštění.

$ systemctl status vsftpd

Kontrola stavu služby vsftpd

Pomocí následujících příkazů spusťte vsftpd nebo restartujte službu po použití změn konfigurace.

$ sudo systemctl start vsftpd
OR
$ sudo systemctl restart vsftpd

A konečně, mějte na paměti, že za blokování vašeho připojení může být také zodpovědný router nebo externí firewall. Pokud se vám podaří úspěšně připojit k vašemu FTP serveru pomocí ftp 127.0.0.1 příkaz na samotném serveru a provedli jste výše uvedené kroky pro odstraňování problémů, přesto se nemůžete připojit k serveru FTP ze vzdáleného systému, pak je pravděpodobně mezi těmito dvěma systémy nějaké zařízení, které blokuje připojení.


Ubuntu
  1. Jak nainstalovat a používat Hubot na Ubuntu Linux

  2. Jak nainstalovat a používat Telnet na Ubuntu 20.04 LTS

  3. Jak nainstalovat a nastavit Universal Media Server v Ubuntu 20.04

  1. Jak nastavit FTP server na Ubuntu 20.04 Focal Fossa Linux

  2. Jak nastavit FTP server s VSFTPD na Ubuntu 20.04

  3. Jak nastavit FTP server s VSFTPD na Ubuntu 18.04

  1. Jak nastavit server a klienta Kerberos na Ubuntu 18.04 LTS

  2. Jak nainstalovat a nastavit Plex Media Server Ubuntu 16.04

  3. Jak nainstalovat a nastavit RabbitMQ na Ubuntu 16.04