Własny i bezpieczny serwer FTP - cz.1 - IIS

Często, kiedy musimy wymienić się z kimś dużą ilością danych np. kilkuset megabajtowym archiwum z logami lub zdjęciami zrobionymi nowiutkim aparatem napotykamy problem - jak przesłać taką ilość informacji? Maile odpadają, a wysłanie nośnika nie zawsze jest możliwe. Posiadanie własnego serwera FTP rozwiązuje ten problem. Jak więc przygotować taki serwer tak, aby oprócz pełnienia podstawowej funkcji zapewniał odpowiedni poziom bezpieczeństwa?

Jeżeli mamy gdzieś starszy, przykurzony komputer, w łatwy sposób możemy przekształcić go w sprawnie działający serwer FTP. PII i 256 MB RAM-u w zupełności wystarczą. Przyda się jedynie odpowiednio pojemny dysk twardy np. 30GB - można go kupić na aukcjach za ok. 60 zł.

Mając sprzęt trzeba zastanowić się, co na nim uruchomić. Wybór jak zwykle ogranicza się albo do Windowsa, albo do Linuksa. Wszystko zależy od tego, czy mamy licencję na Windowsa, a konkretnie na Windowsa 2000/XP Professional lub 2000/2003 Server (wersja Home Windowsa XP niestety nie oferuje takiej funkcjonalności). Jeżeli tak, to można pokusić się o konfigurację serwera FTP w oparciu o usługi IIS. Więcej możliwości, rzecz jasna, oferuje IIS w serwerowym wydaniu systemu operacyjnego. Rzadko jednak mamy "luźne" licencje tego typu, dlatego rzućmy okiem na konfigurację IIS-owego serwera FTP na bazie Windowsów dla stacji roboczych. Mimo, że nie wspominamy o Viście (mówimy o systemie uruchamianym na starszym sprzęcie...) warto wiedzieć, że dostępne dla niej usługi IIS w wersji 7 niosą za sobą bardzo wiele istotnych zmian - szczególnie z punktu widzenia bezpieczeństwa - zwłaszcza możliwość uruchomienia SSL FTP.

Ze względu na kwestie bezpieczeństwa planując uruchomienie serwera IIS, podczas instalacji systemu operacyjnego dobrze jest podzielić przestrzeń dyskową na dwie partycje (jedną systemową - mniejszą np. 5GB; a drugą przeznaczoną dla serwera FTP - wykorzystującą pozostałą przestrzeń) oraz wybrać jako systemy plików NTFS.

Zainstalowanie IIS-a to dodanie kolejnego komponentu systemu Windows (Panel sterowania->Dodaj lub usuń programy -> Dodaj/Usuń składniki systemu Windows -> Internetowe usługi informacyjne -> Szczegóły):

Własny i bezpieczny serwer FTP - cz.1 - IIS
Własny i bezpieczny serwer FTP - cz.1 - IIS

Po instalacji mamy już gotowy serwer FTP. Prawie. Utworzony zostanie katalog "C:\inetpub\ftproot", który stanie się katalogiem domyślnym serwera - tzw. katalogiem macierzystym, który można -a w naszym przypadku nawet trzeba- zmienić. Podczas instalacji systemu stworzyliśmy przecież dwie partycje. Stwórzmy zatem na tej drugie osobny katalog (np. FTP) i zmieńmy we właściwościach serwera (zakładka "Katalog macierzysty") lokalizację katalogu.

Jeżeli w naszym systemie występuje kilka podłączonych kart sieciowych, a co za tym idzie widoczny jest on pod kilkoma adresami IP, można ograniczyć dostępność serwera FTP do konkretnego adresu (pomijamy kwestię samego wystawienia serwera np. w DMZ-cie - to już inny temat):

Własny i bezpieczny serwer FTP - cz.1 - IIS

Zaraz po zainstalowaniu usługi pozostali użytkownicy uzyskują anonimowy dostęp do tego katalogu bez prawa zapisu (login: anonymous) - mogą więc jedynie pobierać to, co dla nich przygotujemy. Żeby inne osoby mogły zacząć "wrzucać" coś na nasz serwer musimy stworzyć dodatkowe konta użytkowników, za pośrednictwem których możliwe będzie logowanie się do usługi. Wcześniej jednak warto wyłączyć dostęp anonimowy przez co udostępnimy nasz serwer tylko uwierzytelnionym i "właściwym" użytkownikom:

Własny i bezpieczny serwer FTP - cz.1 - IIS

Jako, że serwer FTP w wydaniu IIS-a dostępnym w desktopowych Windowsach przesyła dane uwierzytelniające otwartym tekstem, warto włożyć odrobinę trudu w minimalizację ewentualnych strat (w razie przejęcia konta użytkownika). W tym celu stwórzmy osobną grupę użytkowników (np. FTP), a następnie w jej ramach kilka kont, dla których grupa FTP będzie jedyną, do której należą. Stworzenie użytkownika powoduje, że może on logować się do systemu - a tego nie chcemy (ma mieć dostęp jedynie do serwera FTP). Dlatego też, aby zabezpieczyć się przed próbami logowania możemy we właściwościach katalogu: "C:\Documents and Settings" w zakładce "Zabezpieczenia" dodać grupę FTP, a następne odmówić jej jakichkolwiek praw do katalogu. Oprócz tego odmówić można także praw do dysku systemowego (w Windowsie uprawnienia "Odmów" mają pierwszeństwo przed uprawnieniami "Zezwól").

Własny i bezpieczny serwer FTP - cz.1 - IIS
Własny i bezpieczny serwer FTP - cz.1 - IIS
Własny i bezpieczny serwer FTP - cz.1 - IIS
Własny i bezpieczny serwer FTP - cz.1 - IIS

Na koniec, warto jeszcze na naszym serwerze zainstalować firewalla, który ograniczy dostęp do samej maszyny z zewnątrz do portu TCP 21. Dobrym i sprawdzonym rozwiązaniem jest darmowy Comodo Firewall.

IIS FTP Serwer jest w tym momencie przygotowany do pracy. A co jeżeli nie chcemy korzystać z produktu Microsoftu, a w dalszym ciągu upieramy się przy Windowsie, jako systemie operacyjnym? Są oczywiście alternatywy. Niektóre komercyjne (np. WS_FTP czy Serv-U), ale też darmowe (np. bardzo dynamicznie rozwijany FileZilla). Są one szczególnie przydatne wówczas, gdy potrzebujemy bardziej zaawansowanych funkcji jak SSL FTP, katalogi wirtualne, segmentacja użytkowników, rozbudowany monitoring itp.

W części II przyjrzymy się instalacji, konfiguracji i utwardzeniu usługi FTP na bazie systemu z rodziny Linux.


TOP 200