GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat vsftpd na RHEL 8 / CentOS 8

Tento tutoriál poskytuje čtenářům pokyny, jak nainstalovat a nakonfigurovat ftp server VSFTPD na serveru RHEL 8 / CentOS 8. Tato příručka začne nejprve základní výchozí konfigurací, ke které přidáme zabezpečenou konfiguraci TLS, anonymní přístup a konfiguraci pasivního režimu.

V tomto tutoriálu se naučíte:

  • Jak nainstalovat ftp server VSFTPD.
  • Jak otevřít bránu firewall pro příchozí připojení FTP.
  • Jak zabezpečit FTP připojení pomocí TLS.
  • Jak povolit anonymní připojení.

VSFTPD ftp připojení na RHEL 8 / CentOS 8 Server/Workstation.

Požadavky na software a použité konvence

Softwarové požadavky a konvence příkazového řádku systému Linux
Kategorie Požadavky, konvence nebo použitá verze softwaru
Systém RHEL 8 / CentOS 8
Software vsftpd:verze 3.0.3
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

Základní pokyny pro konfiguraci VSFTPD krok za krokem

V této sekci jednoduše nainstalujeme ftp server VSFTPD, otevřeme porty firewallu a otestujeme připojení.

  1. Nainstalujte balíček VSFTPD. vsftpd balíček lze nainstalovat pomocí správce balíčků dnf:
    # dnf install vsftpd
    
  2. Udělejte si kopii a zkontrolujte výchozí konfigurační soubor VSFTPD. Nejprve vytvořte kopii původního konfiguračního souboru:
    # mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf_orig
    

    Začněme čistým konfiguračním souborem:

    # grep -v ^# /etc/vsftpd/vsftpd.conf_orig > /etc/vsftpd/vsftpd.conf
    

    Váš nový /etc/vsftpd/vsftpd.conf konfigurace by měla vypadat podobně jako níže:

    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    local_umask=022
    dirmessage_enable=YES
    xferlog_enable=YES
    connect_from_port_20=YES
    xferlog_std_format=YES
    listen=NO
    listen_ipv6=YES
    
    pam_service_name=vsftpd
    userlist_enable=YES
    
  3. Spusťte démona VSFTPD a nastavte jej na spuštění po restartu:
    # systemctl start vsftpd
    # systemctl enable vsftpd
    
  4. Otevřete port FTP brány firewall 21 příchozí připojení:
    # firewall-cmd --zone=public --permanent --add-service=ftp
    # firewall-cmd --reload
    
  5. Otestujte připojení FTP ze vzdáleného hostitele pomocí ftp příkaz. K přihlášení použijte své přihlašovací údaje běžného uživatele. Například vytvořte připojení FTP k hostiteli rhel8-ftp.linuxconfig.org :
    # ftp rhel8-ftp.linuxconfig.org
    Connected to rhel8-ftp.linuxconfig.org.
    220 (vsFTPd 3.0.3)
    Name (rhel8-ftp.linuxconfig.org:lubos): linuxconfig
    331 Please specify the password.
    Password:
    230 Login successful.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> 
    
  6. Tím končí základní konfigurace a testování VSFTPD. V další části přidáme vrstvu zabezpečení konfigurací našeho ftp serveru VSFTPD pomocí TLS.

Zabezpečení VSFTPD pomocí připojení TLS krok za krokem

V této části jednoduše nainstalujeme ftp server VSFTPD, otevřeme porty brány firewall a otestujeme připojení.

  1. Nainstalujte OpenSSL. Tento balíček může být již dostupný ve vašem systému RHEL8. Pro instalaci OpenSSL spusťte:
    # dnf install openssl
    
  2. Vygenerujte certifikát s vlastním podpisem nebo použijte svůj stávající certifikát. V tomto příkladu vygenerujeme soukromý klíč vsftpd.key a podepsaný certifikát vsftpd.crt . Budete vyzváni k zodpovězení některých otázek. Většinu z nich můžete ponechat jako výchozí kromě Common Name :
    # openssl req -newkey rsa:2048 -nodes -keyout /etc/pki/tls/private/vsftpd.key -x509 -days 365 -out /etc/pki/tls/certs/vsftpd.crt
    Generating a RSA private key
    ..................+++++
    ....+++++
    writing new private key to '/etc/pki/tls/private/vsftpd.key'
    -----
    You are about to be asked to enter information that will be incorporated
    into your certificate request.
    What you are about to enter is what is called a Distinguished Name or a DN.
    There are quite a few fields but you can leave some blank
    For some fields there will be a default value,
    If you enter '.', the field will be left blank.
    -----
    Country Name (2 letter code) [XX]:
    State or Province Name (full name) []:
    Locality Name (eg, city) [Default City]:
    Organization Name (eg, company) [Default Company Ltd]:
    Organizational Unit Name (eg, section) []:
    Common Name (eg, your name or your server's hostname) []:rhel8-ftp.linuxconfig.org
    Email Address []:
    #
    
  3. Nakonfigurujte VSFTPD pro šifrované připojení TLS. Otevřete svůj stávající VSFTPD /etc/vsftpd/vsftpd.conf konfiguraci a přidejte k existujícím řádkům následující konfiguraci:
    rsa_cert_file=/etc/pki/tls/certs/vsftpd.crt
    rsa_private_key_file=/etc/pki/tls/private/vsftpd.key
    ssl_enable=YES
    allow_anon_ssl=NO
    force_local_data_ssl=YES
    force_local_logins_ssl=YES
    ssl_tlsv1=YES
    ssl_sslv2=NO
    ssl_sslv3=NO
    require_ssl_reuse=NO
    ssl_ciphers=HIGH
    
  4. Restartujte VSFTPD:
    # systemctl restart vsftpd
    
  5. Otestujte ftp připojení TLS VSFTPD.
    POZNÁMKA
    Upozorňujeme, že pokud neotevřete příslušné porty na firewallu vašeho serveru RHEL 8, nebudete v tomto okamžiku schopni vytvořit pasivní ftp připojení ze vzdáleného hostitele.

    Použijte FTP klienta, který podporuje připojení TLS, jako je například FileZilla:

    Navazování TLS připojení k VSFTPD ftp RHEL 8 serveru.

    Připojeno k serveru VSFTPS RHEL 8 se zabezpečeným připojením TLS.

Vše se zdá být v pořádku. V další části přidáme funkci pasivního připojení k našemu ftp serveru VSFTPD.

Přidání pasivního režimu do VSFTPD pokyny krok za krokem

  1. Otevřete svůj stávající VSFTPD /etc/vsftpd/vsftpd.conf konfiguraci a přidejte k existujícím řádkům následující konfiguraci:

    pasv_enable=YES
    pasv_min_port=10000
    pasv_max_port=10100
    
  2. Restartujte VSFTPD:
    # systemctl restart vsftpd
    
  3. Otevřete rozsah portů brány firewall pro pasivní porty:
    # firewall-cmd --permanent --zone=public --add-port=10000-10100/tcp 
    # firewall-cmd --reload
    

Povolte anonymní přístup VSFTPD pokyny krok za krokem

  1. Otevřete svůj stávající VSFTPD /etc/vsftpd/vsftpd.conf konfiguraci a změňte anonymous_enable a allow_anon_ssl řádků na YES :

    anonymous_enable=YES
    allow_anon_ssl=YES
    
  2. Restartujte VSFTPD:
    # systemctl restart vsftpd
    

Příloha

Pro vaše pohodlí finální /etc/vsftpd/vsftpd.conf konfigurační soubor je uveden níže:

anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES

pam_service_name=vsftpd
userlist_enable=YES

rsa_cert_file=/etc/pki/tls/certs/vsftpd.crt
rsa_private_key_file=/etc/pki/tls/private/vsftpd.key
ssl_enable=YES
allow_anon_ssl=YES
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH

pasv_enable=YES
pasv_min_port=10000
pasv_max_port=10100

Cent OS
  1. CentOS / RHEL 7:Jak nainstalovat a nakonfigurovat ftp server (vsftpd)

  2. Jak povolit FTP v CentOS/RHEL 5 a 6

  3. CentOS / RHEL 4:Jak nainstalovat a nakonfigurovat FTP server (vsftpd)

  1. Jak nainstalovat phpMyAdmin na RHEL 8 / CentOS 8

  2. Jak nainstalovat P7Zip na RHEL 8 / CentOS 8

  3. Jak nainstalovat ntfs-3g na RHEL 8 / CentOS 8

  1. Jak nainstalovat PHP-mbstring na RHEL 8 / CentOS 8

  2. Jak nainstalovat phantomjs na RHEL 8 / CentOS 8

  3. Jak nainstalovat Dropbox na RHEL 8 / CentOS 8