Прехвърлянето на файлове в мрежата се извършва благодарение на правилно конфигуриран FTP сървър. Този протокол работи чрез TCP клиент-сървър архитектура и използва различни мрежови връзки, за да осигури предаването на команди между свързани възли. Потребителите, които са се свързали с конкретна хостинг компания, са изправени пред необходимостта да създадат персонален FTP сървър в съответствие с изискванията на компанията, която предоставя услуги за поддръжка на сайта или друг софтуер. След това ще демонстрираме как да създадем такъв сървър в Линукс на примера на една от помощните програми.
Съдържанието
Днес ще използваме инструмент, наречен VSftpd. Предимствата на такъв FTP сървър са, че по подразбиране той работи на много операционни системи, поддържа официалните хранилища на различни дистрибуции на Linux и е сравнително лесен за конфигуриране за правилна работа. Между другото, този конкретен FTP се използва официално в Linux ядрото, а много хостинг компании препоръчват инсталирането на VSftpd. Затова нека обърнем внимание на стъпка по стъпка процеса на инсталиране и конфигуриране на необходимите компоненти.
По подразбиране всички необходими библиотеки VSftpd в дистрибуциите не са достъпни, така че те трябва да бъдат изтеглени ръчно чрез конзолата. Това се прави, както следва:
sudo apt-get install vsftpd
. CentOS, Fedora - yum install vsftpd
, а за Gentoo - emerge vsftpd
. След въвеждането натиснете Enter, за да започнете инсталационния процес. Ние привличаме вниманието на собствениците на CentOS, които използват специален виртуален сървър от всеки хостинг. Ще трябва да актуализирате модула на ядрото на OS, защото без тази процедура по време на инсталацията ще се появи критична грешка. Въведете последователно следните команди:
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
След края на цялата процедура, изпълнете конфигурационния файл / boot / grub / grub.conf по всякакъв удобен начин. Променете съдържанието му, така че следните параметри да имат съответните стойности:
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
След това просто трябва да рестартирате специалния сървър и да пристъпите към незабавна инсталация на FTP сървъра на компютъра.
Наред с програмата, конфигурационният му файл беше зареден в компютъра, започвайки от който функционира FTP сървърът. Всички настройки се правят индивидуално според препоръките на хоста или вашите предпочитания. Можем само да покажем как този файл е отворен и на какви параметри трябва да се обърне внимание.
sudo nano /etc/vsftpd.conf
. В CentOS и Fedora тя е разположена по пътя /etc/vsftpd/vsftpd.conf
, а в Gentoo е /etc/vsftpd/vsftpd.conf.example
. anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
Ако възнамерявате да работите с FTP сървър не през основния си акаунт или искате да дадете достъп на други потребители, създадените профили трябва да имат права на суперпотребител, така че при достъп до помощната програма VSftpd няма грешки с отказан достъп.
sudo adduser user1
, където user1 е името на новия акаунт. sudo adduser user1 sudo
. sudo mkdir /home/user1/files
. cd /home
и ще направите новия потребител собственик на директорията, като въведете chown root:root /home/user1
. sudo service vsftpd restart
на sudo service vsftpd restart
. Само в дистрибуцията Gentoo помощната програма се презарежда чрез /etc/init.d/vsftpd restart
. Сега можете да извършите всички необходими действия на FTP сървъра от името на нов потребител, който има разширени права за достъп.
Потребителите на други дистрибуции могат безопасно да пропуснат тази стъпка, тъй като конфигурацията на портовете вече не се изисква никъде, само в Ubuntu. По подразбиране защитната стена е конфигурирана по такъв начин, че да не допуска входящ трафик от адресите, от които се нуждаем, затова ще трябва да разрешим преминаването му ръчно.
sudo ufw disable
и sudo ufw enable
по един, за да рестартирате защитната стена. sudo ufw allow 20/tcp
и sudo ufw allow 21/tcp
. sudo ufw status
защитната стена на sudo ufw status
на sudo ufw status
. Отделно, искам да спомена няколко полезни команди:
/etc/init.d/vsftpd start
или service vsftpd start
- анализ на конфигурационния файл; netstat -tanp | grep LISTEN
netstat -tanp | grep LISTEN
- валидиране на инсталацията на FTP сървъра; man vsftpd
- обадете се на официалната документация на VSftpd, за да намерите необходимата информация относно работата на програмата; service vsftpd restart
или /etc/init.d/vsftpd restart
- рестартирайте сървъра. Що се отнася до достъпа до FTP-сървъра и по-нататъшната работа с него, свържете се с представителите на вашия хостинг за да получите тези данни. От тях ще можете да изясните информация за тънкостите на поставяне и появата на различни видове грешки.
Тази статия приключва. Днес анализирахме процедурата по инсталиране на VSftpd сървъра, без да се обвързваме с която и да е хостинг компания, така че имайте това предвид, когато изпълнявате нашите инструкции и ги сравнявате с тези, предоставени от компанията, съдържаща виртуалния ви сървър. Освен това ви съветваме да се запознаете с други материали, които се занимават с темата за инсталацията на компонентите на LAMP.
Вижте също: Инсталиране на инструментариума LAMP в Ubuntu