Článek pro lidi, kteří potřebují pracovat s Unixem (Linuxem) přes síť z MS Windows. Obsahuje letmý popis principu SSH protokolu, ale především srovnání dvou programů podporujících češtinu a barevný terminál - tj. programu PuTTY a TeraTerm Pro.

Pokud jste uživatelem MS Windows a potřebujete pracovat prostřednictvím lokální sítě nebo Internetu s počítačem, na kterém běží některý operační systém typu unix (takovým je např. volně šiřitelný Linux), máte na výběr ze dvou technologií. Buď použijete telnet, nebo Secure Shell (SSH). U obou komunikace probíhá podobně: zadáte adresu počítače, ten se zeptá na login (tj. uživatelské jméno) a heslo. Jestliže máte na daném stroji účet (jste zde zaregistrováni), otevře se textová konzole, která se chová, jako byste seděli přímo u tohoto počítače. Všechny příkazy, které zadáte na klávesnici, se přenesou prostřednictvím sítě a jsou vykonány na vzdáleném počítači. To znamená, že plně využíváte jeho výpočetní sílu, protože spušťené programy se provádí na procesoru tohoto serveru. Nazpět přes síť putuje výstup spuštěných programů, který se zobrazuje v okně konzole. V případě, že použijete první z nabízených možností, tj. program telnet, pak se veškerá data při přenosu posílají v nezašifrované formě - a to včetně hesel při přihlašování! Potom pro schopného hackera, kterému se dostane do rukou příslušný paket, tj. část dat posílaných po síti, není problém získat přístup k vašim souborům, či provádět pod vaším jménem nějakou nekalou činnost. Z tohoto důvodu je mnohem lepší použít některý z programu využívající SSH. Při takovém spojení se totiž veškeré informace přenášené sítí šifrují a prosté "odposlechnutí" po ceste je proto zněmožněno. Donedávna byly programy pro použití SSH - SSH klienty - zdarma pouze na unixových platformách. To se však změnilo a nyní je i pro Windows 9x, NT i 2000 na výběr z několika freeware aplikací. V tomto článku jsou popsány dvě, které mají navíc zabudovanou plnou podporu pro kódování češtiny.

Jak SSH funguje

Na počítači, se kterým chcete pracovat pomocí SSH, musí být spuštěn program (tzv. démon sshd), který odpovídá na žádosti o přihlášení. Po spojení obou stran server vyšle dvojici klíčů: hostitelský klíc, jedinečný pro každý stroj, a veřejný server klíč, který se mění jednou za hodinu. Klient si vybere z nabízených typů šifrovacích algoritmů a vytvoří originální klíč pro spojení. Ten zašifruje na základě obdržených klíčů a pošle jej serveru. Od tohoto momentu již komunikace probíhá kryptovaně. Nyní je teprve poslán login a heslo. Pro větší bezpečnost se na straně klienta ukládají hostitelské klíče již navštívených serverů, aby se někdo nemohl za daný server vydávat. Při takovém pokusu jste upozorněni, že daný hostitelský klíč není v databázi, kam se uloží při prvním navštívení serveru. Ke změne tohoto klíče může dojít i v případě, že správce serveru přeinstaloval sshd a vygeneroval nové klíče. Na to by vás však měl upozornit předem. SSH je možné použít nejenom k přenosu informací pro textové terminály a k bezpečnému kopírování souborů, ale protokol podporuje i přenos výstupu grafických aplikací pro X-Window. Je také možné přesměrovat některé TCP/IP porty a používat přes ně jiné služby - například FTP. Tyto možnosti ale nejsou ve zmíněných volně šiřitelných programech pro Windows zatím obsazeny.

Perspektivní PuTTY

Prvním programem, který popíši, je mladší a rozvíjející se PuTTY Simona Tethama. Aktuální verze 0.48 beta je již plně funkčním textovým SSH klientem. Zároveň podporuje protokol telnet a přímou komunikaci na daném portu. Ale začněme od píky, respektive od instalace. Celý program je jediný exe-soubor. Veškeré informace se ukládají do registru Windows. Díky tomu stačí program stáhnout z Internetu a všechny potřebné instalační procedury se provedou při prvním spuštění. Odpadá proto složité naplňování systémových proměnných známé z jiných SSH klientů. Po startu nás PuTTY uvítá oknem s konfigurací, kde se nastavují všechny volby tohoto programu, kterých je opravdu dostatek. V ČR bude pravděpodobně prvním krokem výběr překladu znakových sad podporujících češtinu ISO8859-2/Win-1250 v menu Language. Samozřejmě lze nastavit login, který se má standardně použít při přihlašování. Po zvolení adresy serveru je možné všechny volby uložit, aby šly znovu načíst při příštím spuštění programu. Mimochodem, okno s konfigurací je možné vyvolat i později stiskem pravého tlačítka myši na liště se jménem programu. V případě, že při startu zadáme jako parametr '@jméno uloženého spojení' otevře se přímo terminál a okno s konfigurací je vynecháno. Po přihlášení na správně nastavený server vše funguje, a to včetně automatického překladu znakových sad s češtinou, zobrazování barev na terminálu a správného reagování na funkční klávesy. Perličkou při práci s tímto programem je, že operace "cut - paste" (tj. kopírování do schránky a vkládání zpět) probíhá jako v unixech - pro kopírování stačí text označit a pro vložení funguje pravé (resp. prostřední) tlačítko myši.

Starý dobrý TeraTerm

Ke známějším programům patří TeraTerm Pro od T. Teranishiho. Existuje pro Windows 3.1, pro Windows 9x a NT. Nová je verze pro přenosná zařízení s Windows CE. Samotný TeraTerm je klientem služby telnet a plnohodnotným terminálem (lze jej použít i na prohlížení BBS stanic a stahování souboru pomocí protokolu, jako je např. Xmodem ci ZModem). SSH se musí přihrát zvlášť jako přídavný modul. Podpora češtiny ve standardní instalaci není. Nicméně, je možné si stáhnout z Internetu soubor ttsshcz.zip, který sestavil Pavel Smerk na FI MU. Tento soubor obsahuje TeraTerm s podporou pro češtinu a SSH. Stačí jej rozbalit. Po spuštění můžou nastat drobné problémy, např. s funkčními klávesami, ale vše jde přepsat v konfiguraci. Hlavní vlastností programu TeraTerm je rozšiřitelnost a možnost nastavit snad cokoliv. Důkazem může být, že je používán i v Japonsku a Rusku. Všechny volby jsou uloženy pomocí textových konfiguračních souborů. Program je dobře dokumentován a je s ním dodávána nápověda. Dostupný je i zdrojový text stejně jako pro PuTTY.

A co přenos souborů?

Pokud pracujete na vzdáleném počítači, je občas nutné přenést datové soubory z klienta na server či opačně. Jestliže chcete použít šifrovaný přenos, nabízí se unixový Secure Copy, který používá techniku SSH. Opět existuje několik portů tohoto příkazu pro platformu Windows. Asi nejvýhodnější je použít pscp, který spolupracuje s klíči PuTTY a je od stejného autora. Velkou výhodou proti ostatním implementacím scp je nulová instalace, podobně jako u jeho "bratríčka". Pscp, čili PuTTY Secure Copy, je program pro Příkazový řádek DOSu. Používá se podobně jako standardní příkaz copy. Bližší nápovědu získáte, pokud jej spustíte bez parametru.

Závěrem

Nelze říct, že by byl některý z popisovaných programů lepší nebo horší. Funkřní jsou oba. Nespornou výhodou PuTTY je nulová instalace a snadná konfigurace společně s možností kopírovat soubory pomocí pscp. TeraTerm má zase navrch v použití s BBS stanicemi a v textové konfiguraci. Konečný výběr záleží na tom, které vlastnosti preferujete. Já bych zvolil PuTTY - pro jednoduchost ovládání, a až v případě, že by mi něco nefungovalo či nešlo nastavit, sáhnul bych po TeraTermu.

Kde hledat další informace

Domácí stránka programu PuTTY (anglicky): http://www.chiark.greenend.org.uk/~sgtatham/putty/

Domácí stránka programu TeraTerm (anglicky): http://hp.vector.co.jp/authors/VA002416/teraterm.html