Jak vytvořit FTP server v Linuxu

Přenos souborů v síti se provádí pomocí správně nakonfigurovaného FTP serveru. Tento protokol pracuje s architekturou TCP klient-server a používá různá síťová připojení k zajištění přenosu příkazů mezi připojenými uzly. Uživatelé, kteří se připojili ke konkrétní hostingové společnosti, jsou konfrontováni s potřebou nastavit osobní FTP server podle požadavků společnosti, která poskytuje služby údržby webu nebo jiného softwaru. Dále ukážeme, jak vytvořit takový server v Linuxu na příkladu jednoho z utilit.

Vytvořte FTP server v Linuxu

Dnes budeme používat nástroj VSftpd. Výhody takového FTP serveru spočívají v tom, že standardně běží na mnoha operačních systémech, udržuje oficiální repozitáře různých linuxových distribucí a je poměrně snadno konfigurovatelný pro správnou funkci. Mimochodem, tento konkrétní FTP je oficiálně používán v jádře Linuxu a mnoho hostingových společností doporučuje instalaci VSftpd. Věnujme proto pozornost postupnému procesu instalace a konfigurace nezbytných komponent.

Krok 1: Instalace VSftpd

Ve výchozím nastavení nejsou všechny potřebné knihovny VSftpd v distribucích k dispozici, takže je třeba je ručně stáhnout prostřednictvím konzoly. To se provádí takto:

  1. Otevřete "Terminál" libovolnou vhodnou metodou, například prostřednictvím nabídky.
  2. Přechod na konzolovou interakci v operačním systému Linux

  3. Držitelé verzí Debianu nebo Ubuntu jsou povinni zaregistrovat příkaz sudo apt-get install vsftpd . CentOS, Fedora - yum install vsftpd a pro Gentoo - emerge vsftpd . Po úvodu stiskněte klávesu Enter a spusťte proces instalace.
  4. Příkaz k instalaci VSftpd v operačním systému Linux

  5. Potvrďte, že máte práva ke svému účtu zadáním příslušného hesla.
  6. Zadání hesla pro instalaci VSftpd v operačním systému Linux

  7. Počkejte na přidání nových souborů do systému.
  8. Postup pro přidání souborů VSftpd do operačního systému Linux

Upozorňujeme majitele CentOS, kteří využívají vyhrazený virtuální server z jakéhokoliv hostingu. Budete muset aktualizovat modul jádra OS, protože bez tohoto postupu se během instalace objeví kritická chyba. Postupně zadejte následující příkazy:

yum update
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
yum install yum-plugin-fastestmirror
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-devel-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-devel-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-doc-3.15.6-1.el7.elrepo.noarch.rpm
yum install kernel-ml-doc-3.15.6-1.el7.elrepo.noarch.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-headers-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-headers-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-tools-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-tools-libs-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-tools-libs-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-tools-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-tools-libs-devel-3.15.6-1.el7.elrepo.x86_64.rpm
yum install kernel-ml-tools-libs-devel-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/perf-3.15.6-1.el7.elrepo.x86_64.rpm
yum install perf-3.15.6-1.el7.elrepo.x86_64.rpm
wget http://mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/python-perf-3.15.6-1.el7.elrepo.x86_64.rpm
yum install python-perf-3.15.6-1.el7.elrepo.x86_64.rpm
yum --enablerepo=elrepo-kernel install kernel-ml

Po skončení celého postupu spusťte konfigurační soubor / boot / grub / grub.conf jakýmkoliv vhodným způsobem. Upravte její obsah tak, aby následující parametry měly odpovídající hodnoty:

default=0
timeout=5
title vmlinuz-4.0.4-1.el7.elrepo.x86_64
root (hd0,0)
kernel /boot/vmlinuz-4.0.4-1.el7.elrepo.x86_64 console=hvc0 xencons=tty0 root=/dev/xvda1 ro
initrd /boot/initramfs-4.0.4-1.el7.elrepo.x86_64.img

Pak stačí restartovat dedikovaný server a přistoupit k okamžité instalaci serveru FTP v počítači.

Krok 2: Počáteční instalace serveru FTP

Spolu s programem byl do počítače načten konfigurační soubor, ze kterého server FTP funguje. Všechna nastavení jsou prováděna čistě individuálně na základě doporučení hostingu nebo vlastních preferencí. Můžeme pouze ukázat, jak je tento soubor otevřen a jakým parametrům je třeba věnovat pozornost.

  1. V operačních systémech Debian nebo Ubuntu běží konfigurační soubor takto: sudo nano /etc/vsftpd.conf . V CentOS a Fedoře se nachází podél cesty /etc/vsftpd/vsftpd.conf a v Gentoo je to /etc/vsftpd/vsftpd.conf.example .
  2. Spusťte konfigurační soubor VSftpd v operačním systému Linux

  3. Samotný soubor se zobrazí v konzole nebo v textovém editoru. Zde věnujte pozornost níže uvedeným bodům. Měly by mít ve vašem konfiguračním souboru stejné hodnoty.

    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    chroot_local_user=YES

  4. Udělejte zbytek úpravy sami, a pak nezapomeňte uložit změny.
  5. Uložte konfigurační soubor VSftpd do operačního systému Linux

Krok 3: Přidání pokročilého uživatele

Pokud hodláte pracovat s FTP serverem ne prostřednictvím hlavního účtu nebo chcete dát přístup jiným uživatelům, vytvořené profily musí mít práva superuživatele, aby při přístupu k nástroji VSftpd nebyly žádné chyby s odepřeným přístupem.

  1. Spusťte "Terminal" a zadejte příkaz sudo adduser user1 , kde user1 je název nového účtu.
  2. Vytvořte nového uživatele prostřednictvím terminálu v Linuxu

  3. Nastavte heslo a potvrďte jej. Důrazně doporučujeme, abyste si zapamatovali domovský adresář účtu. V budoucnu budete možná muset přistupovat k němu prostřednictvím konzoly.
  4. Zadejte heslo pro nového uživatele v operačním systému Linux

  5. V případě potřeby vyplňte základní údaje - celé jméno, číslo pokoje, telefonní čísla a další informace.
  6. Další data nového uživatele v Linuxu

  7. Poté udělte uživateli rozšířená práva zadáním příkazu sudo adduser user1 sudo .
  8. Udělte nové Linuxové rozšířené uživatelská práva

  9. Vytvořte pro uživatele samostatný adresář pro ukládání jeho souborů přes sudo mkdir /home/user1/files .
  10. Vytvořte hlavní složku pro uživatele v Linuxu

  11. Dále se přesuňte do domovské složky přes cd /home a tam je nový uživatel vlastníkem vašeho adresáře zadáním chown root:root /home/user1 .
  12. Nastavte vlastnictví nové složky uživatele v systému Linux

  13. Restartujte server po provedení všech změn sudo service vsftpd restart . Pouze v distribuci Gentoo je nástroj znovu načten přes /etc/init.d/vsftpd restart .
  14. Restartujte server FTP prostřednictvím konzoly v systému Linux

Nyní můžete provést všechny potřebné akce na FTP serveru jménem nového uživatele, který má rozšířená přístupová práva.

Krok 4: Nastavení brány firewall (pouze Ubuntu)

Uživatelé jiných distribucí mohou tento krok bezpečně přeskočit, protože konfigurace portů již není vyžadována nikde v Ubuntu. Ve výchozím nastavení je brána firewall nakonfigurována tak, aby nedovolila příchozí komunikaci z adres, které potřebujeme, proto budeme muset povolit její průchod ručně.

  1. V konzole aktivujte sudo ufw enable sudo ufw disable a sudo ufw enable abyste restartovali sudo ufw enable firewall.
  2. Restartujte bránu firewall v operačním systému Ubuntu

  3. Přidání pravidel příchozího spojení pomocí sudo ufw allow 20/tcp a sudo ufw allow 21/tcp .
  4. Přidejte nová pravidla do brány firewall v operačním systému Ubuntu

  5. Zkontrolujte, zda jsou pravidla, která jste zadali, aplikována zobrazením sudo ufw status brány sudo ufw status .
  6. Zkontrolujte stav brány firewall v operačním systému Ubuntu

Samostatně chci zmínit několik užitečných příkazů:

  • /etc/init.d/vsftpd start nebo service vsftpd start - analýza konfiguračního souboru;
  • netstat -tanp | grep LISTEN netstat -tanp | grep LISTEN - ověření instalace FTP serveru;
  • man vsftpd - zavolejte oficiální dokumentaci VSftpd a vyhledejte potřebné informace týkající se provozu utility;
  • service vsftpd restart nebo /etc/init.d/vsftpd restart - restart serveru.

Pokud jde o přístup k FTP serveru a další práci s ním, kontaktujte zástupce svého hostingu, abyste mohli tato data obdržet. Z nich budete schopni objasnit informace o jemnostech nastavení a vzniku různých druhů chyb.

Tento článek končí. Dnes jsme provedli analýzu instalačního postupu serveru VSftpd, aniž bychom byli vázáni na jakoukoliv hostingovou společnost, takže mějte na paměti tuto skutečnost při provádění našich instrukcí a porovnejte je s těmi, které poskytuje společnost obsahující váš virtuální server. Kromě toho Vám doporučujeme seznámit se s naším dalším materiálem, který se zabývá tématem instalace komponent LAMP.

Viz také: Instalace sady nástrojů LAMP v Ubuntu