Стварэнне FTP-сервера ў Linux

Перадача файлаў у сеткі ажыццяўляецца дзякуючы правільна наладжанаму FTP-серверу. Такі пратакол працуе з ужываннем TCP па архітэктуры кліент-сервер і задзейнічае розныя сеткавыя злучэння для забеспячэння перадачы каманд паміж падлучанымі вузламі. Карыстальнікі, якія падключыліся да вызначанага хостынгу, сутыкаюцца з патрэбай налады асабістага FTP-сервера па патрабаванням кампаніі, якая прадстаўляе паслугі забеспячэння працы сайта або іншага забеспячэння. Далей мы прадэманструем, як ствараецца такі сервер у Linux на прыкладзе адной з утыліт.

Ствараем FTP-сервер у Linux

Сёння мы будзем выкарыстоўваць інструмент пад назвай VSftpd. Перавагі такога FTP-сервера ў тым, што ён па змаўчанні працуе на многіх АС, абслугоўвае афіцыйныя рэпазітары розных дыстрыбутываў Linux і адносна проста наладжваецца для карэктнага функцыянавання. Дарэчы, на ядры Лінукс афіцыйна ўжываецца менавіта гэты FTP, і многія хостынгі рэкамендуюць ставіць VSftpd. Таму давайце звернем увагу на пакрокавы працэс інсталяцыі і налады неабходных кампанентаў.

Крок 1: Усталёўка VSftpd

Па змаўчанні ўсіх патрэбных бібліятэк VSftpd ў дыстрыбутывах не маецца, таму іх трэба ўручную загрузіць праз кансоль. Ажыццяўляецца гэта наступным чынам:

  1. Адкрыйце «Тэрмінал» любым зручным метадам, напрыклад, праз меню.
  2. Уладальнікам версій Debian або Ubuntu патрабуецца прапісаць камандуsudo apt-get install vsftpd. CentOS, Fedora -yum install vsftpd, А для Gentoo -emerge vsftpd. Пасля ўвядзення націсніце на Enter, Каб запусціць працэс інсталяцыі.
  3. Пацвердзіце наяўнасць правоў у сваёй ўліковага запісу, паказаўшы адпаведны пароль.
  4. Чакайце завяршэння дадання новых файлаў у сістэму.

Звяртаем увагу ўладальнікаў CentOS, якія задзейнічаюць вылучаны віртуальны сервер ад любога хостынгу. Вам спатрэбіцца вырабіць абнаўленне модуля ядра АС, паколькі без гэтай працэдуры падчас інсталяцыі адлюструецца крытычная памылка. Паслядоўна ўводзіце такія каманды:

yum update
rpm -Uvh //www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
yum install yum-plugin-fastestmirror
wget //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 //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 //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 //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 //mirrors.neterra.net/elrepo/kernel/el7/x86_64/RPMS/kernel-ml-tools-3.15.6-1.el7.elrepo.x86_64.rpm
wget //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 //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 //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 //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-сервера на кампутар.

Крок 2: Першапачатковая налада FTP-сервера

Разам з праграмай на кампутар быў загружаны яе канфігурацыйны файл, адштурхваючыся ад якога і адбывацца функцыянаванне FTP-сервера. Усе налады выконваюцца асабліва індывідуальна па рэкамендацыях хостынгу або уласным перавагам. Мы толькі можам паказаць, як адкрываецца гэты файл і якім параметрах абавязкова варта надаць увагу.

  1. У аперацыйных сістэмах Debian або Ubuntu канфігурацыйны файл запускаецца так:sudo nano /etc/vsftpd.conf. У CentOS і Fedora ён знаходзіцца па шляху/etc/vsftpd/vsftpd.conf, А ў Gentoo -/etc/vsftpd/vsftpd.conf.example.
  2. У кансолі ці тэкставым рэдактары адлюструецца сам файл. Тут звярніце ўвагу на адзначаныя ніжэй пункты. У вашым канфігурацыйным файле яны павінны мець такія ж значэння.

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

  3. Астатняе рэдагаванне ажыццяўляйце самі, а пасля не забудзьцеся захаваць змены.

Крок 3: Даданне карыстальніка з пашыранымі правамі

Калі вы збіраецеся працаваць з FTP-сэрвэрам праз сваю асноўную уліковы запіс або жадаеце падаць доступ іншым карыстальнікам, створаныя профілі абавязкова павінны мець права суперпользователя, каб пры звароце да ўтыліты VSftpd не ўзнікала памылак з адмовай ў доступе.

  1. запусціце «Тэрмінал» і ўвядзіце камандуsudo adduser user1, дзе user1 - імя новай ўліковага запісу.
  2. Задайце для яго пароль, пасля чаго пацвердзіце яго. Акрамя гэтага, настойліва раім запомніць хатні каталог ўліковага запісу, у далейшым можа спатрэбіцца зварот да яго праз кансоль.
  3. Запоўніце асноўную інфармацыю - поўнае імя, нумар пакоя, нумары тэлефонаў і іншую інфармацыю, калі патрабуецца.
  4. Пасля гэтага прысвойце карыстачу пашыраныя правы шляхам уводу камандыsudo adduser user1 sudo.
  5. Стварыце для юзера асобную дырэкторыю пад захоўванне яго файлаў празsudo mkdir / home / user1 / files.
  6. Далей перамесціцеся у сваю хатнюю тэчку празcd / homeі там зрабіце новага карыстальніка уладальнікам сваёй дырэкторыі, увёўшыchown root: root / home / user1.
  7. Перазапусціце сервер пасля ажыццяўлення ўсіх змяненняўsudo service vsftpd restart. Толькі ў дыстрыбутыве Gentoo ўтыліта перазагружаецца праз/etc/init.d/vsftpd restart.

Цяпер вы можаце вырабляць усе неабходныя дзеянні на FTP-серверы ад асобы новага юзера, які валодае пашыранымі правамі доступу.

Крок 4: Налада Firewall (Толькі для Ubuntu)

Карыстальнікі іншых дыстрыбутываў могуць смела прапускаць гэты крок, паколькі налада партоў нідзе больш не патрабуецца, толькі ў Ubuntu. Па змаўчанні Firewall наладжаны такім чынам, што не прапусціць ўваходны трафік з патрэбных нам адрасоў, таму спатрэбіцца дазволіць ягоным рухам ўручную.

  1. У кансолі па чарзе актывуйце камандыsudo ufw disableіsudo ufw enable, Каб перазапусціць Firewall.
  2. Дадайце правілы ўваходзяць злучэнняў, выкарыстоўваючыsudo ufw allow 20 / tcpіsudo ufw allow 21 / tcp.
  3. Праверце, ці былі ўжытыя уведзеныя правілы, прагледзеўшы статус фаерволsudo ufw status.

Асобна хочацца адзначыць некалькі карысных каманд:

  • /etc/init.d/vsftpd startабоservice vsftpd start- аналіз канфігурацыйнага файла;
  • netstat -tanp | grep LISTEN- праверка карэктнасці ўстаноўкі FTP-сервера;
  • man vsftpd- выклік афіцыйнай дакументацыі VSftpd для пошуку неабходнай інфармацыі касаемо працы ўтыліты;
  • service vsftpd restartабо/etc/init.d/vsftpd restart- перазагрузка сервера.

Што тычыцца атрымання доступу да FTP-серверу і далейшай працы з ім, звяртайцеся па атрыманне гэтых дадзеных да прадстаўнікоў свайго хостынгу. У іх жа вы зможаце ўдакладніць інфармацыю з нагоды тонкасцяў налады і ўзнікненню рознага роду памылак.

На гэтым артыкул падыходзіць да канца. Сёння мы разабралі працэдуру ўстаноўкі сервера VSftpd без прывязкі да якога-небудзь хостынгу, таму ўлічыце гэта пры выкананні нашых інструкцый і параўноўвайце іх з тымі, што прадастаўляе кампанія, якая змяшчае ваш віртуальны сервер. Акрамя ўсяго, раім азнаёміцца ​​з іншым нашым матэрыялам, у якім разбіраецца тэма ўстаноўкі кампанентаў LAMP.

Чытайце таксама: Усталёўка набору праграм LAMP ў Ubuntu

Глядзіце відэа: How to install Ubuntu Server virtual machine in macOS (Снежні 2024).