Protokol TELNET Schéma funkčních modulů komunikace protokolem TELNET Telnet klient Telnet server login shell terminal driver Jádro TCP/IP TCP/IP Jádro Pseudo terminal driver Uživatel u terminálu TCP spojení 1
Protokol TELNET TELNET RFC 854 Zajistí dvousměrný osmibitový komunikační kanál pro procesy terminálově orientované Vytváří TCP spojení pro přenos řídících informací a uživatelských dat (proud znaků) well-known port 23 Principy: NVT (Network Virtual Terminal) je imaginární zařízení vytvořené po ustavení TCP spojení - společný (síťový) terminál komunikujících stran NVT - znakové zařízení I/O s klávesnicí (pro vstup znaků) a tiskárnou (pro výstup znaků ) (na vzdáleném terminálu je virtuální tiskárna implementována zobrazovací jednotkou 2
Protokol TELNET Vyjednání podmínek komunikace mezi stranami (rozšiřující rámec povinného minima definovaného v NVT) Symetrie vyjednávání podmínek mezi klientem a serverem obě strany musí vyjednané podmínky akceptovat Příklady voleb : Echo Typ terminálu Rychlost terminálu Řádkový režim Proměnné prostředí Velikost okna terminálu (počet řádků, sloupců) 3
4
Princip virtuáln lních terminálů NVT Network Virtual Terminals Keyboard Keyboard Printer Printer Mapování do lokální sady User at terminal TELNET COMMANDS TCP spojení Server 5
Protokol TELNET Příkazy protokolu TELNET, které následují prefix IAC (Interpret as Command) kód 255 (0xFF) Příklad (sekvence pro kontrolu kompatibility): Klient: <IAC><AYT> Are you there? Server: `Y` `E` `S` Příkazy <SB> <SE> - začátek a konec výměny hodnot vyjednávaných podmínek 6
Protokol TELNET Výměna podmínek komunikace Odesilatel: IAC,<type of operation>,<option> Příjemce: IAC,<type of operation>,<option> Typ operace DO, DONT, WILL, WONT Číselné kódy některých voleb: 1 Echo 24 Typ terminálu 32 Rychlost terminálu 34 Řádkový režim 36 Proměnné prostředí 7
Šest scénářů pro vyjednávání voleb (podmínek komunikace) protokolu TELNET Sender Receiver Popis děj WILL X WILL X DO X DO X DO X DONT X WILL X WONT X sender vyžaduje souhlas s nastavením volby receiver souhlas sender vyžaduje souhlas s nastavením volby receiver nesouhlasí sender vyžaduje, aby receiver nastavil volbu receiver souhlasí sender vyžaduje, aby receiver nastavil volbu receiver nesouhlasí WONT X DONT X DONT X WONT X sender chce zrušit nastavení volby receiver musí souhlasit sender chce, aby receiver zrušil nastavení volby receiver musí souhlasit 8
9
Protokol TELNET Příklad vyjednání podmínky - nastavení typu terminálu Výzva k nastavení Klient 255(IAC),251(WILL),24 hodnoty podmínky Server 255(IAC),253(DO),24 (tj. typu terminálu) Server 255(IAC),250(SB),24,1,255(IAC),240(SE) Klient 255(IAC),250(SB),24,0,'V','T','2','2','0',255(IAC), 240(SE) Indikace nastavení hodnoty podmínky (tj. typu terminálu) 10
Zabezpečené relace řešení SSH Bezpečnostní problém relace Telnet SSH (Secure Shell) obecné označení pro protokoly i SW produkty Protokoly SSH-1.3, SSH-1.5, SSH-2 Klient server probíhá v zabezpečeném TCP spojení Šifrování symetrická a asymetrická šifra Kryptografická kontrola integrity přenášených dat 11
Zabezpečené relace řešení SSH Bezpečnostní záruky protokolu SSH důvěrnost dat integrita dat autentizace obou komunikujících stran autorizovaný přístup k uživatelským účtům přesměrování spojení (port forwarding), zapouzdření jiného protokolu (tunneling) klient A SSH přímé spojení přesměrované spojení SSH server B 12
Zabezpečené relace řešení SSH Architektura protokolu SSH-2 - protokol modulární (SSH-1 je monolitický) Aplikace Connection Protocol (SSH-CONN) specifikace přenosového kanálu pro různé síťové služby Authentication Protocol (SSH-AUTH) Transport Protocol (SSH-TRANS) TCP IP vlastní autentizace serveru zahájení spojení, dělení dat do paketů, zajistí autentizaci serveru a základní služby šifrování a kontrola integrity 13
Zabezpečené relace řešení SSH Bezpečnostní aspekty SSH volba a dojednání algoritmů generování a výměna klíčů (varianty používaných klíčů: klíč uživatele, klíč hostitele, klíč relace) vazba mezi klíčem a identitou metoda certifikace veřejných klíčů, správa veřejných klíčů typ a postup autentizace kontrola integrity implementace SSH sshd ( naslouchá na portu 22) - server ssh, scp - klienti 14
Zabezpečené relace řešení SSH Zprávy SSH (záhlaví určuje typ zprávy, SSH definuje vlastní jazyk pro popis dat zpráv) data služebních protokolů (režijní data) aplikační data Datové pakety komprimace výpočet výtahu záhlaví + výplň šifrování záhlaví záhlaví DATA Komprimovaná DATA výtah Komprimovaná DATA výtah výplň Komprimovaná DATA výtah výplň 15