9. cvičení - Konfigurace síťových služeb
Cíle cvičení
- Instalace a nastavení DHCP serveru.
- Instalace a nastavení FTP serveru.
- Instalace a nastavení Webového serveru.
- Instalace a nastavení Sdílení souborů.
- Instalace a nastavení vzdáleného přístupu.
Instalace a vyzkoušení funkčnosti pro jeden OS je za 1,5 bodu.
Odposlechy a komunikace přes Telnet je za 1 bod (stačí vypracovat jen u Linuxu nebo u Windows).
Virtuální počítače si spusťte s parametrem X, odpovídajícím poslednímu číslu IP adresy hostitelského počítače. Například pro IP adresu 158.194.80.70 hostitelského stroje:
virtualpc /cesta/k/obrazu-disku.qcow 70
Linux
DHCP server
Dynamic Host Configuration Protocol (DHCP) slouží k automatické konfiguraci parametrů potřebných pro komunikaci v místní síti.
Na Linuxu se k tomuto účelu používá dhcp3-server. V distribuci Debian/GNU Linux se instaluje následovně:
apt-get update apt-get install dhcp3-server
Potom je třeba nastavit pevnou ip adresu na druhé síťové rozhraní (eth1).
Dále je potřeba přidat následující řádky do souboru /etc/dhcp/dhcpd.conf
:
subnet 10.70.70.0 netmask 255.255.255.0 { range 10.70.70.10 10.70.70.100; # zapujcovat adresy z rozsahu option routers 10.70.70.1; # routovani option domain-name-servers 208.67.222.222, 208.67.222.220; # dns servery option domain-name "test.local"; # domena }
A nakonec restartovat DHCP server:
/etc/init.d/isc-dhcp-server restart
Úkol: Nainstalovat DHCP server, nastavit ho a na Windows z něho nechat přidělit nastavení sítě.
Úkol: Odposlechnout DHCP komunikaci.
FTP server
File Transfer Protocol (FTP) jak již název napovídá, slouží k přenosu souborů po sítí.
Na Linuxu poskytuje služby FTP serveru například ProFTPD, který se v distribuci Debian GNU/Linux dá nainstalovat následovně:
apt-get update apt-get install proftpd
Pro povolení anonymního přístupu (login ftp a heslo emailová adresa) je potřeba v konfiguračním souboru /etc/proftpd/proftpd.conf
odkomentovat celou sekci:
<anonymous ~ftp> ... </anonymous>
A nakonec restartovat FTP server:
/etc/init.d/proftpd restart
Další informace o nastavení lze nalézt na této adrese.
FTP protokol je postaven na textových příkazech přenášených přes TCP. Výčet FTP příkazů lze nalézt například zde a na následující stránce je popsán postup stažení souboru za pomoci FTP příkazů.
Úkol: Nainstalovat ProFTPD server, zkusit se na něj přihlásit z Windows.
Úkol: Přihlásit a odhlásit se na server pomocí telnetu (telnet localhost 21
a posloupnost příkazů user
, pass
, quit
).
Webový server
Webové servery slouží k poskytování hypertextových informací. Příkladem je Apache server. V distribuci Debian GNU/Linux se dá nainstalovat následujícím příkazem:
apt-get update apt-get install apache2
Takto nainstalovaný server má kořen webových stránek uložen v adresáři /var/www/
.
Další informace o nastaveních lze najít na stránkách projektu.
Stejně jako FTP používá k přenosu dat TCP protokol. Jednotlivé požadavky a odpovědi se skládají z textových hlaviček a obsahu. Tělo a hlavička jsou od sebe odděleny prázdným řádkem.
Například požadavek na získání kořenové stránky by mohl vypadat takto:
GET / HTTP/1.1 Host: localhost Connection: close
Úkol: Nainstalovat Apache server a zobrazit si kořenovou stránku.
Úkol: Pomocí telnetu si zobrazit kořenovou stánku ze serveru (telnet localhost 80
a výše uvedená hlavička).
Samba server
Server Message Block (SMB) slouží ke sdílení souborů, tiskáren a portů a komunikaci mezi uzly sítě. Nejvíce je používán ve Windows.
Pro Linux existuje projekt Samba vyvíjející server a klienta pro tento protokol.
V distribuci Debian GNU/Linux se instaluje následovně:
apt-get update apt-get install samba
Potom je ještě potřeba vytvořit nového užívatele a pro tohoto uživatele vytvořit samba heslo:
adduser user smbpasswd -a user
Úkol: Nainstalovat Samba server nastavit uživateli samba heslo, zkusit se na něj přihlásit z Windows.
Úkol: Odposlouchat SMB komunikaci.
Vzdálený přístup
Ke vzdálenému přístupu na linuxu slouží SSH protokol. Server pro něj implementuje projekt openssh-server.
Ve virtuálních linuxech je již nainstalován. Pokud by nebyl tak by se v distribuci Debian GNU/Linux instaloval následovně:
apt-get update apt-get install openssh-server
Jako SSH klient pro Windows se dá použít například program Putty (je již na virtuálních Windows nainstalován).
Úkol: Z Windows se pomocí Putty připojit na linux.
Úkol: Odposlouchat SSH komunikaci.
Windows
Stejně jako v předchozím cvičení je třeba k virtuálnímu stroji připojit ISO obraz instalačního CD Windows 2003.
V konzole QEMU se to provede příkazem:
change ide1-cd0 /cesta/k/iso-souboru.iso
Druhá možnost je připojit na konec příkazu pro start virtuálního stroje parametr -cdrom
:
virtualpc /cesta/k/obrazu-disku.qcow -cdrom /cesta/k/iso-souboru.iso
DHCP server
Postup jak nastavit DHCP server na Windows je popsán v článku na www.Windowsnetworking.com.
V distribuci Debian GNU/Linux se parametry sítě nastavují v souboru /etc/network/interfaces
.
Možnost, aby se informace o síti pro rozhraní eth1 načítaly z DHCP serveru vypadá následovně:
iface eth1 inet dhcp
Nakonec je ještě potřeba nahodit toto rozhraní pomocí příkazu:
ifup eth1
Úkol: Nainstalovat DHCP server na Windows, nastavit ho se stejnými parametry jako na linuxu a na linuxu si z něho nechat přidělit nastavení sítě.
FTP server
FTP server je přímo obsažen v instalaci Windows.
Po instalaci se již nastaven, aby umožňoval anonymní přihlášení. Kořen tohoto anonymního úložiště se nachází v adresáři c:/Inetpub/ftproot
.
Postup jak nainstalovat a nastavit FTP server na Windows je popsán na stránkách podpory Microsoftu.
FTP protokol je postaven na textových příkazeh přenášených přes TCP. Výčet FTP příkazu lze nalézt například zde a na následující stránce je popsán postup stažení souboru za pomoci FTP příkazů.
Úkol: Nainstalovat FTP server a zkusit se na něj přihlásit.
Úkol: Přihlásit a odhlásit se na server pomocí Telnetu (telnet localhost 21
a posloupnost přikážu user
, pass
, quit
).
Webový server
Stejně jako na linuxu je možné i na window použít jako webový server Apache. Microsoft také nabízí svůj vlastní server podporující jeho technologie (ASP/.NET, ...). Tento server se nazývá Internet Information Services (IIS).
Pro základní fungování není třeba server po instalaci nijak dále nastavovat. Kořen stránek se v tomto případě nachází v adresáři c:/Inetpub/wwwroot
.
IIS byl nainstalován spolu s FTP.
Postup jak nastavit IIS server na Windows je popsán v článku na www.Windowsnetworking.com.
Úkol: Nainstalovat IIS server a zkusit si zobrazit kořenovou stránku.
Úkol: Pomocí Telnetu zobrazit kořenovou stánku ze serveru (telnet localhost 80
a výše uvedená hlavička).
Sdílení souborů
Sdílení souborů ve Windows je postaveno na Server Message Block (SMB) protokolu.
Nastavit se dá po kliknutí pravým tlačítkem na požadovaný adresář pomocí možnosti Properties z kontextového menu. Sdílení se nachází v druhé záložce.
V linuxu se k připojení ke sdílené složce pomocí SMB protokolu dá použít program smbclient
. Následujícím příkazem se dá prohlížet složka public
na serveru 10.1.70.1 jako uživatel administrator:
smbclient -U administrator //10.1.70.1/public
Pro připojení sdílené složky do souborového systému na linuxu slouží smbfs. V distribuci Debian GNU/Linux se dá nainstalovat následovně:
apt-get update apt-get install smbfs
Příkaz pro připojení stejné složky jako u příkladu použití smbclient
vypadá takto:
mount -t smbfs -o user=administrator,passwd=virtual,uid=root //10.1.70.1/public /mnt
Úkol: Nasdílet nějakou složku na Windows a namoutovat ji do nějakého adresáře (např. /mnt/
) na linuxu.
Úkol: Odposlouchat SMB komunikaci.
Vzdálený přístup
Vzdálený přístup na Windows zajišťuje komponenta Remote Desktop Service (dříve Terminal Services), která se dá nastavit v dialogu System v záložce Remote.
Remote Desktop Service využívá pro komunikaci Remote Desktop Protocol (RDP).
Na linuxu se k přístupu na Remote Desktop Service dá použít program rdesktop, který se v distribuci Debian GNU/Linux instaluje následovně:
apt-get update apt-get install rdesktop
Příkaz pro připojení na server 10.1.70.1 vypadá takto:
rdesktop 10.1.70.1
Úkol: Povolit Remote Desktop Service, připojit se na něj z linuxu.
Úkol: Odposlechnout RDP komunikaci.