Celem zajęć jest zapoznanie się z serwerami FTP. W czasie laboratorium zostanie pobrany z sieci, zainstalowany oraz skonfigurowany serwer FTP. Konfiguracja, wykonanane zadania administracyjne oraz testy zostaną przeprowadzone przy użyciu aplikacji klienckich FTP.
1. Serwer BulletProof FTP
Serwer BulletProof FTP jest popularną, stabilną aplikacją komercyjną. 30 dniową pełną wersję tego serwera można pobrać z witryny producenta: http://www.bpftpserver.com. Głównymi cechami tego pakietu (poza normalną funkcjonalnością oprogramowania typu serwer FTP) są:
Możliwość monitorowania aktywności i ruchu.
Możliwość limitowania przestrzeni dyskowych i stosunku upload/download dla użytkowników.
Możliwość tzw. “szpiegowania” aktywności serwera/użytkownika.
Generator statystyk.
2 Instalacja
Trzydziestodniowa wersja serwera BulletProof FTP jest udostępniona za darmo. Pakiet instalacyjny ma około 1,5 MB. Wersję instalacyjną można pobrać z witryny producenta http://www.bpftpserver.com. W trakcie zajęć należy postępować zgodnie z poniższym schematem:
1. Pobierz wersję próbną aplikacji.
2. Zapoznaj się z instrukcją udostępnioną przez producenta w trybie online (instrukcję tą można także pobrać z sieci) http://www.bpftpserver.com/manual/manual_en/.
3. Postępując zgodnie z instrukcjami zainstaluj serwer BPFTP.
4. Zapoznaj się z 2 rozdziałem instrukcji opisującej wszystkie najważniejsze cechy i możliwości serwera.
Iterfejs użytkownika serwera BulletProof FTP.
3. Konfiguracja serwera
Po instalacji serwer należy odpowiednio skonfigurować - umożliwi to lepsze poznanie zalet i wad serwera FTP. Poniższe opcje konfiguracji serwera FTP zostaną przetestowane:
Ustawienie katalogów domowych użytkowników i przydzielenie im praw pełnego dostępu.
Ustawienie katalogów do pobierania i wgrywania dla konta typu gość (guest).
Ustawienie wiadomości powitalnych, pożegnalnych.
Ustawianie ograniczeń praw dostępu dla użytkowników, np. limit ilości użytkowników zależny od dnia, itp.
Zapoznanie się z działaniem opcji kick i ban dla połączeń, użytkowników i hostów.
3.1. Ustawienia serwera
Po zainstalowaniu uruchamiamy aplikację serwera. Powinniśmy zobaczyć okno głównego interfejsu użytkownika. Pierwszym krokiem będzie ustawienie kont użytkowników, dostępu do plików, itd. Bez tych czynności nasz serwer jest bezużyteczny.
3.2. Konta użytkowników
Aby skonfigurować konta użytkowników kliknij ikonę na pasku narzędzi. W efekcie pojawi się okno zamieszczone na rysunku nr poniżej.
Aby dodać nowe konto użytkownika klinknij prawym przyciskiem w lewej kolumnie i wybierz opcję „Add” w menu.
Nadaj nazwę i kliknij OK.
Jeżeli chcesz, aby użytkownik posługiwał się loginem to zaznacz opcję „Login”. Jeśli nie zaznaczysz tej opcji to użytkownik będzie mógł się zalogować używając dowolnego loginu. Ta opcja jest wskazana przy ustawieniu konta użtytkownika„anonymous”.
Zaznaczenie opcji „Password” spowoduje wymóg logowania się przy użyciu hasła. Nie zaznaczenie tej opcji oznaczać będzie możliwość logowania z dowolnym hasłem, nawet pustym.
Poniżej znajduje się krótkie omówienie różnych kombinacji:
Przypadek 1:
+ opcja Login zaznaczona i wpisany login
+ opcja Password zaznaczona i wpisane hasło
-> użytkownicy logują się przy pomocy zarówno loginu jak i hasła
Przypadek 2:
- opcja Login nie zaznaczona
- opcja Password nie zaznaczona
->Dowolny użytkownik może mieć dostęp do tego konta przy użyciu dowolnej nazwy użytkownika i hasła (nawet pustego)
Przypadek 3:
+ opcja Login zaznaczona
- opcja Password nie zaznaczona
-> Użytkownik musi wpisać poprany login, ale może się zalogować przy użyciu dowolnego (nawet pustego) hasła
Przypadek 4:
- opcja Login zaznaczona
+ opcja Password zaznaczona
-> Można wpisać dowolny login, jedynie hasło jest weryfikowane -> jeżeli istnieje użytkownik z takim hasłem to użytkownik będzie zalogowany do tego konta.
Na potrzeby laboratorium możemy wpisać:
Login:
Demo
Password:
Demo
3.3. Dostęp do katalogów
Mając już konto użytkownika należy mu przypisać dostęp do dzielonych zasobów.
Kliknij prawym przyciskiem myszy na liście katalogów i wybierz opcję „Dodaj”
Wybierz odpowiedni katalog i przypisz odpowiedni tryb dostępu:
Dla plików:
R: Read Access: użytkownik może pobierać z danego katalogu.
W: Write Access: użytkownik może wgrywać do danego katalogu
D: Delete Access: użytkownik może kasować w danym katalogu.
A: Append Access: użytkownik może wznowić wgrywanie do danego katalogu
Dla katalogów:
M: Make Directory: użytkownik może tworzyć katalogi w danym katalogu.
L: List Directory: użytkownik może listować katalogi w danym katalogu
K: Delete Directory: użytkownik może kasować katalogi w danym katalogu.
S: Subdir: użytkownik może poruszać się w głąb struktury katalogów w danym katalogu.
Uwagi:
Przy próbie udostępnienia katalogu głównego servera (tzn. dawanie dostępu do swoich plików „.ini”) serwer poprosi o potwierdzenie, ponieważ jest to poważne uchybienie bezpieczeństwa.
Przy podaniu niepoprawnej nazwy katalogu (nieistniejącego katalogu), katalog ten będzie przekreślony.
Katalog domowy użytkownika jest zawsze pierwszym katalogiem na liście wyświetlony czerwoną czcionką.
Aby zmienić nazwę katalogu należy kliknąć na nim prawym przyciskiem i wybrać opcję „Edit”
Hierarchia katalogów nie jest istotna. Serwer BPFTP zawsze zna najbliższy katalog wyższego rzędu na liście, np. użytkownik ma dostęp do:
c:\temp\upload - RWDMLSK
c:\temp\upload\read - R---L--
oraz
c:\temp\upload
ma następującą strukturę:
c:\temp\upload\my favourite picture\
c:\temp\upload\amiga 500\
c:\temp\upload\read\
w takim przypadku użytkownik ma dostęp RWDMLSK do wszystkich katalogów poza c:\temp\upload\read - w tym katalogu jego prawa będą się ograniczać jedynie do RL. Przetestuj różne ustawienia uprawnień dostępu do katalogów.
3.4. Właściwości zaawansowane:
W razie potrzeby dostępne są także bardziej zaawansowane opcje konfiguracji. Na rysunku poniżej pokazane są te ustawienia:
Hide hidden files/dirs: pliki z atrybutem “ukryte” nie będą widoczne na liście.
Enable Account: ta opcja powinna być zawsze włączona, chyba że chcemy tymczasowo wyłączyć użytkownika bez kasowania jego konta.
Allow Noop Command: użytkownik może pozostać podłączony do serwera wysyłając po prostu polecenie NOOP, jeśli zaś tego nie zrobi, to zostanie odłączony po czasie ustawionym w opcji Time Out
Enable Time Out: “bezczynni” użytkownicy będą rozłączani po zdefiniowanym w tym miejscu czasie.
Max users: maksymalna dozwolona liczba użytkowników zalogowanych na to samo konto. Domyślnie: nie zaznaczone => bez ograniczeń
Connection per IP: maksymalna dozwolona liczba użytkowników podłączonych z jednego adresu IP. Domyślnie: nie zaznaczone => bez ograniczeń
Show Relative Path: użytkownicy zobaczą ich domowy katalog jako główny katalog systemu plików.
user can change his password: zmiana hasła przy użyciu: SITE PSWD <stare hasło> <nowe hasło >
user can chat with other users: możliwość rozmowy z innymi użytkownikami za pomocą: SITE CHAT <użytkownik> <wiadomość>
user can see who is connected: użytkownicy widzą kto jest podłączony: SITE WHO => zwraca: nazwę_użtykownika - datę_podłączenia - IP/Nazwę_Hosta - prędkość
Pliki typu Message Files
Są trzy typy plików wiadomości:
plik Login message: przesyłany przez menadżera wydarzeń po wiadomości powitalnej
plik ChangeDir message: wysyłane każdorazowo po zmianie przez użytkownika bieżącego katalogu
plik Links File: przetwarzany w czasie wysyłania listy katalogów
Więcej informacji znajdziesz w oryginalnej instrukcji dostępnej online na stronie producenta.
Ustawienia Ratio/Quota/Bps
Opcja Ratio, pozwala nam ustawić nam ograniczenia w przypadku, gdy np. chcemy ograniczyć niektórym użytkownikom możliwości pobierania plików z serwera, jeżeli sami nie wgrywają żadnych plików. Np. ustawiając Ratio, czyli stosunek danych wgrywanych do pobieranych na poziomie 1/2 to oznacza to jeden bajt danych wgrywanych na każde dwa bajty danych pobieranych.
Quota
Quota to kolejna bardzo przydatna opcja pozwalająca na przydzielanie maksymalnej ilości przestrzeni dyskowej dostępnej dla danego użytkownika.
Bps, Limit Prędkości
Pozwala wprowadzić limit dla danego konta. Pamiętaj, że 1KB = 1024 bajtów!
IP & Banned Files - Niedozwolone pliki i adresy IP
IP Access: lista adresów IP dozwolonych ze znakiem (+) (lub “zabanowanych”, czyli niedozwolonych ze znakiem (-)) dla danego konta.
Banned Files: klienci próbujący wgrywać pliki, których nazwy pasują do masek nie będą mogli wgrywać (co prawda wystarczy, że zmienią nazwę pliku).
3.5. Wybieranie grupy dla kont użytkowników
W przypadku, gdy chcemy dać dostęp do serwera kilku użytkownikom mającym posiadać takie same uprawnienia, to możemy zdefiniować dla nich wspólną grupę zamiast osobnego ustawiania kont dla każdego z nich. Aby tego dokonać, kliknij na ikonie:
Na rysunku powyżej została zdefiniowana grupa „Demo_Group”. Członkowie tej grupy mają prawa dostępu RLS do „C:\”. Hasło dla grupy nie zostało zdefiniowane, chcąc nadać hasła dla członków grupy można zdefiniować:
Jedno hasło dla całej grupy => wszyscy będą mieli to samo hasło
Jedno hasło dla każdego z członków grupy => każdy z członków grupy będzie miał własne hasło
Uwagi dotyczące zasad dla grup:
Katalogi użytkownika składają się z katalogu użytkownika (jeżeli taki zdefiniujemy) oraz katalogów grupy => pierwszy to zawsze katalog domowy użytkownika.
Prawa dostępu użytkownika zawsze mają pierwszeństwo przed uprawnieniami grupy, do której on należy.
3.6. Ograniczenia dostępu na podstawie adresu IP
Poniższe okno służy do definiowania adresów IP i można je wywołać klikając prawym przyciskiem na liście IP (prawa kolumna) i wybraniu opcji „Add IP”, czyli „dodaj adres IP”.
Za jego pomocą można określić (zezwolić/odmówić) dostęp na podstawie adresu IP lub nazw hostów. Na rysunku powyżej widać trzy definicje praw dostępu:
+192.168.0.*: zezwala na dostęp wszystkim z zakresu 192.168.0.*
+192.168.1.*: to samo dla 192.168.1.*
-192.168.0.[1-3]: odrzuca połączenia z adresów IP od 192.168.0.1 do 192.168.0.3 aby wyłączyć je z powyższych uprawnień dostępu
Ustawienia te umożliwiają dostęp tylko z komputerów lokalnego intranetu.
Dozwolone znaki specjalne
Dozwolone jest stosowanie następujących znaków specjalnych tzw. "dzikich kart” (ang. wildcard): ?, *, [xxx-xxx].
Na przykład:
19?.16?.*.[100-120]: 192.163.125.101 i 190.168.5.116 mogą się zalogować, 190.168.5.1 nie może, ponieważ “1” nie jest z zakresu [100-120]
zapis: *.wanadoo.fr będzie się odnosił do wszystkich z domeny „wanadoo.fr”
Uwaga
Dopóki nie ma zdefiniowanych żadnych adresów IP, to połączyć może się każdy, ale w momencie dodania choćby jednego adresu (+) IP powstaje sytuacja, w której załogować będą się mogli tylko użytkownicy łączący się z tego adresu.
4. Testowanie
Testowanie ustawionej konfiguracji może być przeprowadzone za pomocą dowolnego klienta FTP (FTP, CuteFTP, BulletProof FTP, itd...). Należy przetestować mechanizmy interakcji po obu stronach, tzn. po stronie klienta i serwera. Po stronie serwera należy zapoznać się z działaniem opcji menu kontekstowego (patrz rysunek poniżej). Menu to jest dostępne po kliknięciu prawym przyciskiem na ikonie użytkownika w prawej kolumnie głównego okna interfejsu serwera albo w czasie pracy w trybie „Server Activity”.
Praca w trybie „Server Activity” oferuje również kilka ciekawych opcji. Aby ją wywołać kliknij dwukrotnie na ikonie użytkownika w prawej kolumnie w głównym oknie interfejsu serwera. Opcja „ Spy user”, czyli “szpiegowanie użytkownika” jest dostępna także tutaj, tak jak w menu kontekstowym omawianym wcześniej.
SKiSO, lab. 8 |
|
|
1 |