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.
Obsah
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.
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:
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. 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.
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.
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
. anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
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.
sudo adduser user1
, kde user1 je název nového účtu. sudo adduser user1 sudo
. sudo mkdir /home/user1/files
. cd /home
a tam je nový uživatel vlastníkem vašeho adresáře zadáním chown root:root /home/user1
. sudo service vsftpd restart
. Pouze v distribuci Gentoo je nástroj znovu načten přes /etc/init.d/vsftpd restart
. 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.
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ě.
sudo ufw enable
sudo ufw disable
a sudo ufw enable
abyste restartovali sudo ufw enable
firewall. sudo ufw allow 20/tcp
a sudo ufw allow 21/tcp
. sudo ufw status
brány sudo ufw status
. 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