Изграждане на FTP сървър

Обратно към
менюто

 

В локалната мрежа понякога  е доста полезно един от компютрите да изпълнява ролята на  FTP сървър и на него да се намират файлове, които могат да си изтеглят от хора работещи на други компютри от мрежата. Това е доста  удобно, защото често пъти пести време когато ние тръгнем да търсим нужните  файлове из дискове. За това в тази статия смятам да разгледам процеса на създаване на непретенциозен FTP сървър. Този сървър макар и доста непретенциозен показва важна част от създаването на истински FTP сървър.

Целта ни е да изградим сървър, на който да има споделени някакви ресурси. След това ние трябва да можем да  определим как да се свързват потребителите към сървъра, кой има право да използва споделените ресурси и какви права да има върху тях. А и не на последно място да имаме пълен контрол върху действията на потребителя.

Необходим софтуер

  1. FileZilla Client

  2. FileZilla Server

FileZilla е специална програма съдържаща две части, които трябва да бъдат свалени отделно една от друга.
Първата част е Клиент /Client/ и тя служи за установяване на достъп до вече съществуващ FTP сайт. Ще използваме нея за да достигнем FTP сървъра когато го направим. Може да използвате и Internet Explorer или дори Windows Explorer по ваше желание, но с FileZilla е доста по-практично и удобно.

Втората част от програмата е Сървър /Server/. Тя служи за изграждане на сървър на дадена машина. Потребителя статира сървъра и избира кои директории да бъдат включени към него за да могат след това да бъдат разглеждани от други потребители свързани към сървъра.

Сайта, от който можете да ги свалите е filezilla.sourceforge.net  (програмата е безплатна).

В тази статия ще използвам FileZilla Client 2.2.9 и FileZilla Server 0.9.3

Инсталиране на софтуера

Самото инсталиране е елементарен процес. Просто стартирате инсталационната програма и следвате стъпките от инсталационният процес. Единственото по-важно нещо, което ще трябва да определите по време на този процес е мястото където да се инсталира програмата.
Инсталирайте и двете части на програмата - и клиента и сървъра.
Когато инсталирате сървъра в края на инсталационният процес ще трябва да оставите маркирана опцията, която позволява сървъра да бъде статиран веднага след  края на инсталационният процес.

След като завършите инсталацията  сървъра ще се статира и остава само да бъде настроен.

Настройване на FTP сървъра

Стартирайте програмата за управление на сървъра - FileZilla Server Interface. Благодарение на нея ще настроим току що инсталираният сървър за да може да бъде използван от други хора.

Когато се стартира и ако сте включили сървъра при инсталацията програмата ще се свърже с него.
Ако не сте го включили отидете в директорията, в която сте инсталирали FileZilla Server и намерете програмата FileZillaServer.exe. Когато стартирате това приложение, то ще ви попита дали искате да бъде включен сървъра, отговорете с "Yes" и обратното когато сте включили сървъра и стартирате това приложение, то ще ви попита дали искате да спрете сървъра.

Преди да се стартира програмата, която ще управлява сървъра ще ви се покаже следното съобщение:

Фигура 1

То ви показва къде се намира сървъра и  кой порт е зададен за администриране на сървъра (това е порта, на който се свързаме в момента за да може да администрираме сървъра, порта се избира по време на инсталационният процес, аз оставям порта да бъде по подразбиране 14147, разбира се може да си изберете и друг, но това не е от голямо значение). След това трябва да попълним полето "Server Address". След като сте инсталирали сървъра на вашият компютър това означава, че адреса на сървъра е  127.0.0.1, който е зададен по подразбиране. Адресът 127.0.0.1   всъщност представлява  адреса на вашият компютър. Полето долу оставете празно. След това натиснете ОК.

Управляващата програма ще се свърже към сървъра.

Фигура 2

Когато получите това съобщение значи вече сте свързан към него и може да го настройвате.

Ще настройваме сървъра посредством  иконите от горната част на прозореца:

Фигура 3

Натиснете първо третата от тях - ще ви се появи следният прозорец:

Фигура 4

Ако трябва да бъдем честни това е горната половина от прозореца :), но в нея се намират по-важните опции, които ни трябват. Първата от тях се определя автоматично и тя е, на кой порт сървъра да приема заявки от потребители към него - 21 (това е стандартният порт за един ftp сървър). След това изберете в кутията под тази максималният брой потребители, които могат да се свързват към сървъра едновременно. Както виждате съм доста пестелив - само един потребител може да се свърже в даден момент към сървъра (т.е. двама потребителя едновременно не могат да ползват FTP сървъра). Променете тази цифра според нуждите ви (разбира се 1 е много драстично число, сложете по-голяма цифра ако ви се налага). Ако не искате да има ограничения за това колко потребителя могет да се свържат към FTP сървъра напишете 0 в полето за максимарен брой потребители, така към сървъра  ще могат да се вържат неопределен брой клиенти едновременно.

Друга важна настройка е Speed Limits. Чрез нея се определя лимита на връзката за определен потребител или всички потребители.

Фигура 5

В първото поле се задава с какъв лимит на скороста ще разполагат клиентите при сваляне на файлове от сървъра към техните машини. Във вторият прозорец се наглася скороста на ъплоуд (т.е. на качване) на дънни към сървъра (ако дадете права на един клиент да качва информация на сървъра, може да определите с каква скорост той може да качва данни на сървъра). Както виждате имате възможност да избирате колко трансфер/секунда да бъде връзката към сървъра или да няма ограничение на връзката към сървъра използвайки опцията No Limit.

Когато имате сървър е полезно той да води логове за това кой го е използвал и как за това разрешете логването от секцията "logging".

Фигура 6

Активирайте опцията "Enable Logging to File" и след това може да си изберете как да се водият логовете. Най-удобният според мен вариант е да се водеят логове за всеки един ден, като логовете за всеки ден са в различен файл, като по старите файлове от предишни дни се трият.
Това става като маркирате първи настройката "Use Different log file each day" за да може да се създава различен лог файл всеки един нов ден. След това чрез "Delete old log files after " може да си избирате на колко дни да се трият старите логове.

Идва ред на настройката на потребителите. Тази настройка определя кои потребители ще могат да използват този сървър и какъв достъп ще имат до него. Това, което се определя е дали имат право да разглеждат файлове в дадена директория и дали могат да четат или променят тези файлове.

Тази настройка на потребителите ще можете да правите от четвъртата иконка от фигура 3. От тук ще можете  да въвеждате нови потребители към вашият сървър. Когато натиснете гореописаната икона ще ви се покаже долният прозорец.

Фигура 7

Натиснете бутона "Add" в полето "Users" и напишете името на потребителя. При мен съм въвел само един потребител с име "enev" . Маркирайте опцията "Enable account" и ако искате парола към този акаунт маркирайте и "Password" и напишете паролата за този акаунт в полето.
Ето и няколко по-важни неща от опциите на един потребител - чрез опцията
"Bypass userlimit of server" се премахва ограничението от максимален брой потребители, които едновременно могат да използват сървъра за този потребител т.е. независимо от това, че има ограничение на сървъра (което ограничение разгледахме по-горе) за максимален брой потребители за този потребител това ограничение не важи и той може да използва сървъра независимо от това колко потребители са се свързали към FTP сръвъра.
Други интересни настройки са
"Maximum connection count" и "Connection limit per IP" - първата настройка дава възможност да се въведе определен брой пъти, които потребителя може да се свързва към сървъра, втората настройка дава възможност да се настрои по колко пъти този потребител може да се свърже от няколко различни компютъра.
Накрая обърнете внимание на опцията
"Group membership", която ще разгледам после,  защото тя  е доста полезна.

Натиснете Shared Folders, ще ви се покаже долният екран.

 

В най-десният панел се виждат потребителите на сървъра, по средата са директориите, които могат да се преглеждат от всеки един  потребител. За да сложите директории от сървъра, които могат да се виждат от потребителя  използвайте бутона "Add" намиращ се в централната част на екрана. Покажете на сървъра кои директории може да бъдат показвани на потребителите. В моя случай съм дал на сървъра цяло дисково устройство.
Една много важна част от процеса на изграждане на сървър е определянето на правата на дадените потребители върху файловете и директориите. Ако потребителите имат само достъп "
Read" те само ще  могат да четат файловете в директорията като няма да могат  да ги модифицират (само ще могат да свалят информация от сървъра). Ако искате потребителите да имат права да модифицарат файловете и дори качват файлове в избрана от тях папка маркирайте опцията "Write" и "Append", за да може да изтрива файлове маркирайте "Delete".
Друг важен момент  е и достъпа до директориите. Задължително трябва да имате маркирани опциите
"List" и  "+subdirs", защото те са тези, които позволяват на даден потребител да види  директориите на сървъра без тези опции листа с директориите ще е недостъпен.

До тук описах създаването на "профил" за всеки един потребител, но ако има много потребтели ще бъде отегчително да се прави за всеки един отделен, за това е много полезно използването на групи. За да използвате настрйките за групи натиснете петата икона от фигура 3.

Работата с управлението на групите е съшата като при управлението на потребителите - отнове се въвеждат директории по познатият начин и се дават права върху тях.

Един примерен вариант за един FTP сървър е да има например две групи при мен "Crew" и  "Others". На първата група съм дал права да четат и пишат, докато потребителите от другата група ще могат само да четат същите файлове от сървъра.

След като сме създали групи вече ще е по-лесно добавянето на  потребител, защото когато го създаваме трябва да споменем само, на коя група принадлежи без да му задаваме всеки път директории и права върху тях. Така ако искаме потребителя да може да има по-големи права върху даденият системен ресурс го пускаме в групата "Crew", а ако искаме да има ограничени права го пускаме в "Others". Това определяне на потребител в коя група е става когато той се добавя или когато е добавен от полето "Group membership" (показано на фигура 7) може да се определи към коя група спада.

Това са най-важните настройки за изграждането на един непретенциозен FTP сървър. Сега остава само да го тестваме.

Свързване към сървъра

Когато определите кои директории да се сложат на сървъра, кои потребители да го използват и какъв достъп имат те до сървъра значи сте готови, остава както казах само де се тества. Стартирайте клинетската програма на
FileZilla. В горната част на програмата имате следното поле:

При него първо трябва да напишете IP адреса на машината, на която се намира FTP сървъра, който току що направихме.

Ако не знаете  IP адреса на вашият  сървър най-лесният начин да го разберете е като използвате самият компютър, на който е инсталиран FTP сървъра - ако той работи  под Windows XP влезте в DOS и напишете IPCONFIG  (за Windows 98 командата е WINIPCFG) в полето срещу IP Address ще видите адреса. Трябва да знаете, че адреса, който използвахте по-рано 127.0.0.1 няма общо с IP адреса, който трябва да се въведе на отдалечен компютър за да използва сървъра.

След като знаете адреса напишете потребителското име в следващото поле, трябва да сте сигурни, че то има достъп до сървъра. В другото поле напишете и паролата му ако има такава и накрая остана само да определите порта на който ще се свържете към сървъра, но той по подразбиране е 21 (както видяхте можете да го смените, но не епрепоръчително). Когато сте готови натиснете Quicкconnect.

FileZilla ще се свърже към сървъра и в долната част на екрана ще ви покаже неговото съдържание.

Контрол над юзърите

Когато даден потребител се свърже към вашият сървър вие ще получавате отчет за неговите действия, също така ще можете да му спрете достъпа до сървъра по всяко време. Това може да правите като използвате програмата управляваща сървъра.

В моя случай имам един потребител (enev), който използва сървъра. От тук, я и от лог файловете мога да следя всяко негово действие и също така мога да го изхвърля от сървъра като се използва командата Kick.

Е това представлява изграждането на един непретенциозен FTP сървър. Виждате, че процедурата е съвсем елементарна, но ползата понякога е огромна.                                       


Return to ISDN