Provided by:
manpages-cs_0.17.20080113-1_all 
JMÉNO
ssh - secure shell klient (program pro remote login)
POUŽITÍ
ssh [-l pihlaovac_jmno] počítač [pkaz]
ssh [-a] [-c idea|blowfish|des|3des|arcfour|none] [-e escape_znak]
[-i soubor_identit] [-l pihlaovac_jmno] [-n] [-k] [-V] [-o volba]
[-p port] [-q] [-P] [-t] [-v] [-x] [-C] [-L port:pota:vzdlport]
[-R port:pota:vzdlport] pota [pkaz]
POPIS
Příkaz ssh (secure shell, bezpečný shell) slouží pro přihlašování na
vzdálené počítače a pro spouštění příkazů na vzdálených počítačích. Je
navržen jako náhrada příkazů rlogin a rsh a umožňuje bezpečnou
zašifrovanou komunikaci mezi dvěma nedůvěryhodnými počítači přes
nezabezpečenou síť. Umožňuje také forwardování X11 spojení nebo
libovolných TCP/IP portů bezpečným kanálem.
Program ssh slouží k připojení a přihlášení uživatele na zadaný
pota. Uživatel musí prokázat svoji identitu na tomto vzdáleném
stroji použitím jedné z následujících autentizačních metod:
První metoda je převzata z protokolu rsh/rlogin; normálně nebývá ssh
serverem povolena, protože představuje ohrožení jeho bezpečnosti.
Pokud je počítač, z něhož se uživatel hlásí, uveden v souboru
/etc/hosts.equiv nebo /etc/ssh/shosts.equiv na vzdáleném stroji, a
přihlašovací jména jsou na obou stranách stejná, uživateli je okamžitě
povoleno přihlášení. Stejně funguje, jestliže uživatel má ve svém
domovském adresáři na vzdáleném stroji soubor .rhosts nebo .shosts, v
němž je řádek tvořený jménem klientského stroje, mezerou a jménem
uživatele na klientském počítači.
Druhá (preferovaná) autentizační metoda používá soubor rhosts nebo
hosts.equiv ve spojení s RSA autentizací počítače. To znamená, že
přihlášení bude možné, jestliže by bylo povoleno podle souborů .rhosts,
.shosts, /etc/hosts.equiv, nebo /etc/ssh/shosts.equiv, a zároveň server
zná a zkontroluje klíč klientského počítače (viz $HOME/.ssh/known_hosts
a /etc/ssh/ssh_known_hosts v části SOUBORY). Tato autentizační metoda
uzavírá bezpečnostní díry využívající IP spoofingu, DNS spoofingu a
routing spoofingu. [Poznámka pro správce: /etc/hosts.equiv, .rhosts, a
protokol rlogin/rsh obecně jsou ze své podstaty nebezpečné a pokud je
požadována bezpečnost, musí být zakázány.]
Jako třetí autentizační metodu používá ssh autentizaci založenou na
RSA. Toto schéma je založeno na šifrování s veřejným klíčem, což je
šifrovací systém, v němž jsou pro šifrování a dešifrování použity dva
různé klíče, přičemž ze šifrovacího klíče nelze odvodit dešifrovací
klíč. Jedním z těchto systémů je RSA. Myšlenka je taková, že si každý
uživatel pro účely autentizace vytvoří dvojici klíčů; jeden veřejný a
druhý soukromý. Server zná veřejný klíč, soukromý klíč zná pouze
uživatel. Soubor $HOME/.ssh/authorized_keys obsahuje seznam veřejných
klíčů, které je možné použít pro přihlášení. Když se uživatel
přihlásí, program ssh oznámí serveru, kterou dvojici klíčů chce použít
pro autentizaci. Server zkontroluje, zdali mu je daný klíč známý, a
pokud ano, pošle uživateli (přesněji ssh programu spuštěnému
uživatelem) výzvu -- náhodné číslo, zašifrované uživatelovým veřejným
klíčem. Výzva může být dešifrována pouze použitím odpovídajícího
soukromého klíče. Uživatelův klient dešifrováním výzvy prokáže, že zná
soukromý klíč, aniž by jej prozradil serveru.
Program ssh implementuje RSA autentizační protokol automaticky.
Uživatel vytvoří svůj pár RSA klíčů spuštěním programu ssh-keygen(1).
Ten uloží soukromý klíč do souboru .ssh/identity a veřejný klíč do
souboru .ssh/identity.pub v uživatelově domovském adresáři. Uživatel
potom musí přidat obsah souboru identity.pub do .ssh/authorized_keys ve
svém domovském adresáři na vzdáleném stroji (soubor authorized_keys
odpovídá konvenčnímu souboru .rhosts a obsahuje jeden klíč na každém
řádku -- jeho řádky mohou být velmi dlouhé). Poté se uživatel může
přihlašovat bez zadávání přihlašovacího hesla. RSA autentizace je
mnohem bezpečnější než autentizace pomocí souboru rhosts. Soubor s
uživatelovým soukromým klíčem je chráněn právy v operačním systému Unix
(neúčinné jako ochrana před superuživatelem) a navíc přístupovým heslem
(passphrase).
Nejpříjemnější způsob použití RSA autentizace je s použitím
autentizačního agenta. Podrobnější informace viz ssh-agent(1).
Jako čtvrtou autentizační metodu program ssh podporuje autentizaci
uživatele pomocí TIS autentizačního serveru authsrv(8). V některých
případech není vhodné, aby byla uživatelská jména v TIS databázi shodná
se jmény lokálních uživatelů. Může k tomu například dojít, pokud se
uživatel autentizuje pomocí karty smartcard nebo Digipass. V tomto
případě je v databázi jako uživatelské jméno obvykle uvedeno sériové
číslo autentizačního zařízení. Mapování mezi jmény v TIS databázi a
uživatelskými jmény zajišťuje soubor /etc/ssh/sshd_tis.map. Jestliže
tento soubor neexistuje, nebo v něm uživatel není uveden, předpokládá
se, že obě jména jsou shodná.
Jestliže všechny autentizační metody selžou, ssh se zeptá uživatele na
přihlašovací heslo. Heslo je posláno na vzdálený počítač pro obvyklé
ověření. Nicméně protože veškerá komunikace je šifrovaná, nelze
odposlechem provozu v síti přihlašovací heslo zjistit.
Jestliže byla uživatelova identita serverem akceptována, server buď
provede zadaný příkaz, nebo zajistí přihlášení uživatele a spustí pro
něj normální shell. Přitom veškerá komunikace se vzdáleným počítačem je
automaticky šifrována.
Jestliže byl vytvořen pseudoterminál (pro normální login session), může
uživatel zadáním "~." ukončit spojení, zadáním "~^Z" suspendovat ssh,
zadáním "~#" vypsat všechna forwardovaná spojení, a pokud se session
čekáním na ukončení forwardovaného X11 nebo TCP/IP spojení zablokuje,
může být převedena do pozadí zadání "~&" (nesmí být použito, dokud je
aktivní uživatelský shell, protože by mohlo dojít k jeho zamrznutí).
Všechny dostupné escape posloupnosti lze vypsat pomocí "~?".
Aby byl escape znak interpretován jako speciální, musí být použit na
začátku session nebo po znaku konec řádku (newline). Samotný znak vlnka
je nutné vkládat zdvojený "~~" (nebo následovaný jiným znakem než je
popsáno výše). V konfiguračním souboru nebo volbou v příkazovém řádku
lze escape znak změnit.
Pokud nebyl alokován žádný pseudoterminál, session bude transparentní a
může být použita pro spolehlivý přenos binárních dat. Na většině
systemů nastavení escape znaku na ``none'' také způsobí, že session
bude transparentní i při použití tty.
Session skončí, pokud skončí příkaz nebo shell na vzdáleném stroji a
spojení není používáno žádnými X11 a TCP/IP spojeními. Návratový kód
vzdáleného programu je vrácen jako návratový kód příkazu ssh.
Jestliže uživatel používá X11, je nastavena proměnná prostředí DISPLAY
tak, jako kdyby program komunikoval s X serverem na stejném stroji (tj.
na ssh serveru). Číslo displeje však bude větší než nula, protože se
nejedná o skutečný X server na ssh serveru, ale pouze o "proxy" X
server, který zajišťuje forwardování X11 spojení bezpečným kanálem
vytvořeným programem ssh na skutečný X server běžící na stejném stroji
jako ssh klient. Aby vše fungovalo, jak je zde popsáno, uživatel nesmí
ručně nastavovat proměnnou prostředí DISPLAY. Pro konfiguraci
forwardování X11 spojení lze použít parametry na příkazovém řádku nebo
v konfiguračním souboru.
Program ssh umožňuje automatické nastavování Xauthority dat na serveru.
K tomuto účelu vygeneruje náhodné autorizační cookie, uloží jej v
souboru Xauthority na serveru, a zajistí, že všechna forwardovaná
spojení ponesou toto cookie a při otevření spojení jej nahradí
opravdovým cookie. Skutečné autentizační cookie není nikdy posíláno na
server (a žádné cookies nejsou nikdy posílány nezašifrovaně).
Jestliže uživatel používá autentizačního agenta, spojení s agentem bude
automaticky forwardováno na vzdálenou stranu, pokud to není zakázáno
volbou na příkazovém řádku nebo v konfiguračním souboru.
Forwardování libovolného TCP/IP spojení přes bezpečný kanál může být
vyžádáno buď z příkazového řádku nebo v konfiguračním souboru. Jednou
z možných aplikací TCP/IP forwardingu je bezpečné spojení s
elektronickou peněženkou; druhou je zajištění průchodu firewallem.
Program ssh umí automaticky udržovat a používat databázi obsahující RSA
identifikace všechny počítačů, se kterými dosud komunikoval. Databáze
je uložena v souboru .ssh/known_hosts v uživatelově domovském adresáři.
Pro kontrolu je používán i soubor /etc/ssh/ssh_known_hosts. Při
nastavení volby StrictHostKeyChecking na "no" budou jakékoli nové
počítače automaticky přidány do uživatelského souboru. Jestliže se
změní identifikace počítače, ssh na to upozorní a zakáže autentizaci
přihlašovacím heslem, aby se zabránilo trojským koním získat
uživatelovo přihlašovací heslo. Dalším účelem tohoto mechanismu je
zabránění útokům typu man-in-the-middle, který by jinak mohl být použit
na obejití šifrování. Volba StrictHostKeyChecking (viz dále) může být
použita na zabránění přihlášení na stroje, jejichž klíč není známý nebo
byl změněn.
VOLBY
-a Zakáže forwardování spojení s autentizačním agentem. V
konfiguračním souboru lze nastavit i pro jednotlivé počítače.
-c idea|des|3des|blowfish|arcfour|none
Vybere šifru použitou pro šifrování session. Implicitně je
použita šifra idea, která je pokládána za bezpečnou. des je
sice standard pro šifrování dat, ale s dostatečným technickým
zázemím (kterým mohou disponovat vlády, velké korporace a velké
kriminální organizace) jej lze rozluštit. 3des (triple-des) je
trojice šifrování-dešifrování-šifrování se třemi různými klíči.
Je pravděpodobně bezpečnější než DES. Pokud některý z konců
nepodporuje šifru IDEA, je implicitně použita šifra 3des.
blowfish je šifrovací algoritmus objevený Brucem Schneierem.
Používá 128 bitový klíč. arcfour je algoritmus publikovaný v
roce 1995 v Usenet News. Věří se, že je stejně silný jako šifra
RC4 od RSA Data Security (RC4 je ochranná značka firmy RSA Data
Security). V současnosti je to nejrychlejší používaný
algoritmus. none zcela zakáže šifrování; je určeno pouze pro
ladící účely, není bezpečné.
-e ch|^ch|none
Nastaví escape znak pro session používající pty (implicitně: ~).
Escape znak je rozpoznán pouze na začátku řádku. Escape znak
následovaný znakem tečka (.) uzavře spojení, následovaný znakem
control-Z suspenduje spojení, a následovaný sebou samým pošle
jeden escape znak. Nastavení znaku na 'none' zakáže jakékoli
escape znaky a způsobí, že spojení bude plně transparentní.
-f Požaduje, aby ssh po provedení autentizace a zahájení
forwardování přešel do pozadí. Tato volba je vhodná, pokud
uživatel chce, aby ssh běžel v pozadí, ale ssh bude ještě ptát
na přihlašovací nebo přístupová hesla. Může být vhodná také ve
skriptech. Implikuje volbu -n. Doporučený způsob pro start X11
programů na vzdáleném počítači je "ssh -f počítač xterm".
-i soubor_identit
Udává jméno soubor, z něhož se čtou identity (soukromé klíče)
pro RSA autentizaci. Implicitně je .ssh/identity v uživatelově
domovském adresáři. V konfiguračním souboru může být zadáno více
souborů identit, pro každý počítač jeden. Lze použít více voleb
-i.
-k Zakáže forwardování kerberos tiketů. V konfiguračním souboru
lze nastavit i pro jednotlivé počítače.
-l login_name
Určuje uživatelské jméno na přihlášení vzdáleném počítači. V
konfiguračním souboru lze nastavit i pro jednotlivé počítače.
-n Přesměruje stdin na /dev/null (zabraňuje čtení ze stdin). Musí
být použito, jestliže je ssh spuštěn na pozadí. Obvyklým trikem
je použít tuto volbu pro spuštění X11 programů na vzdáleném
stroji. Příkaz "ssh -n shadows.cs.hut.fi emacs &" odstartuje
emacs na shadows.cs.hut.fi, a X11 spojení bude automaticky
forwardováno přes zašifrovaný kanál. Program ssh bude spuštěn
na pozadí. (Toto nebude fungovat jestliže ssh se bude ptát na
přihlašovací nebo přístupové heslo; pak je třeba použít volbu
-f.)
-o 'volba'
Může být použito pro zadání voleb ve formátu použitém v
konfiguračním souboru. Lze použít pro zadání parametrů, pro
které neexistuje žádná volba v příkazovém řádku. Volba má stejný
formát jako řádka v konfiguračním souboru.
-p port
Port, na který se připojit na vzdáleném počítači. V
konfiguračním souboru lze nastavit i pro jednotlivé počítače.
-q Tichý režim. Potlačí výpis varování a diagnostických zpráv. Jsou
vypisovány pouze fatální chyby.
-P Použije neprivilegovaný port. S touto volbou nelze použít
autentizaci pomocí rhosts nebo rsarhosts, ale může být použito
na překonání některých firewallů, které nedovolují používat
privilegované zdrojové porty.
-t Vynutí přidělení pseudo-tty. Může být použito pro provádění
libovolného obrazovkově orientovaného programu na vzdáleném
stroji, což může být velmi užitečné například pro programy
ovládané pomocí menu.
-v Upovídaný režim. Způsobí, že program ssh bude vypisovat ladící
zprávy o své činnosti. Lze použít při ladění spojení a při
autentizačních a konfiguračních problémech.
-V Vypíše pouze číslo verze a skončí.
-g Povolí vzdáleným strojům připojování na lokální forwardované
porty. Implicitně se může na tyto porty připojovat pouze
localhost.
-x Zakáže X11 forwardování. V konfiguračním souboru lze nastavit i
pro jednotlivé počítače.
-C Bude komprimovat všechna data (včetně stdin, stdout, stderr, a
dat pro forwardované X11 a TCP/IP spojení). Komprimační
algoritmus je týž jako v programu gzip. Úroveň komprese může být
zadána volbou CompressionLevel volba (viz dále). Komprese je
žádoucí na modemových linkách a pro jiná pomalá spojení, ale
přes rychlou síť bude zpomalovat činnost. Implicitní hodnota
může být nastavenu pro jednotlivé počítače v konfiguračním
souboru; viz volba Compress dále.
-L port:pota:vzdlport
Určuje, že zadaný port na lokálním počítači (tj. ssh klientovi)
má být forwardován přes bezpečný kanál na ssh server a z něj má
být navazováno TCP spojení na zadaný vzdálený počítač a port.
Alokuje soket, který bude naslouchat na zadaném portu na
lokálním počítači, a kdykoli bude vytvořeno spojení na tento
port, bude forwardováno přes bezpečný kanál, a ze vzdáleného
stroje bude navázáno spojení na zadaný počítač:vzdálport.
Forwardování portu může být také nastaveno v konfiguračním
souboru. Privilegované port může forwardovat pouze root.
-R port:pota:vzdlport
Určuje, že zadaný port na vzdáleném počítači (tj. serveru) má
být forwardován na lokální počítač a odtud na další zadaný
počítač a port. Alokuje soket, který bude naslouchat na zadaném
portu na vzdálené straně, a kdykoli je navázáno spojení na tento
port, spojení bude forwardováno přes bezpečný kanál na lokální
stroj, a z něj bude navázáno spojení na zadaný
počítač:vzdálport. Forwardování portů může být zadáno v
konfiguračním souboru. Privilegované porty mohou být
forwardovány pouze při přihlášení jako root na vzdáleném stroji.
KONFIGURAČNÍ SOUBORY
Program ssh získává konfigurační informace postupně z následujících
zdrojů (v uvedeném pořadí): volby v příkazovém řádku, uživatelský
konfigurační soubor ($HOME/.ssh/config), a hlavní konfigurační soubor
(/etc/ssh/ssh_config) pro celý počítač. Pro každý parameter bude
použita první získaná hodnota. Konfigurační soubory obsahují sekce
uvozené řádkem "Host", a každá sekce platí pouze pro počítače, které
vyhovují jednomu ze vzorků zadaných v řádku "Host". Jméno počítače se
porovnává v tom tvaru, v jakém je uvedeno na příkazovém řádku.
Protože se použije první získaná hodnota pro každý parameter, musí být
na začátku souboru hodnoty specifické pro jednotlivé počítače, a obecné
implicitní hodnoty na konci.
Konfigurační soubor má následující formát:
Prázdné řádky a řádky začínající znakem '#' jsou komentáře.
Ostatní řádky mají formát "klíčové-slovo argumenty" nebo
"klíčové-slovo = argumenty". V konfiguračních souborech se
rozlišují malá a velká písmena, ale v klíčových slovech nikoli.
Host Omezuje následující deklarace (až po další řádek s klíčovým
slovem Host) pouze pro počítače, které vyhovují jednomu ze
vzorků zadaných za klíčovým slovem. Vzorky mohou obsahovat
žolíkové znaky '*' a '?'. Vzorek '*' vyhovuje všem počítačům.
Vzorek se porovnává s parametrem hostname zadaným v příkazovém
řádku (t.j., jméno není konvertováno na kanonické před
porovnáním se vzorkem).
BatchMode
Je-li nastaveno na "yes", program se nebude ptát na přístupové
nebo přihlašovací heslo. Vhodné pro skripty a jiné dávkové
úlohy, kde není žádný uživatel, který by zadal přihlašovací
heslo. Argument musí být "yes" nebo "no".
Cipher Určuje druh šifry použité pro šifrování session. V současnosti
jsou podporovány šifry idea, des, 3des, blowfish, arcfour, a
none. Implicitní je "idea" (nebo "3des" jestliže "idea" není
podporována oběma stroji). Použití "none" (bez šifrování) je
určeno pouze pro účely ladění, a výsledné spojení není bezpečné.
ClearAllForwardings
Po načtení všech konfiguračních souborů a zpracování příkazového
řádku zruší veškeré forwardování. Lze použít pro zákaz
forwardování uvedených v konfiguračním souboru při navazování
druhého spojení na počítač, který má forwardování nastaveno v
konfiguračním souboru. Program scp nastavuje tuto volbu
implicitně na "on", takže i kdyby forwardování bylo vyžádáno v
konfiguračním souboru, k chybě nedojde.
Compression
Určuje, zda použít kompresi. Argument musí být "yes" nebo "no".
CompressionLevel
Určuje úroveň komprese, je-li povolena. Argument musí být celé
číslo od 1 (nízká komprese, největší rychlost) do 9 (největší
komprese, nejnižší rychlost). Implicitní úroveň, vhodná pro
většinu aplikací, je 6. Hodnota má stejný význam jako v programu
GNU gzip.
ConnectionAttempts
Určuje počet pokusů o spojení, které se provedou (s opakováním
po sekundě), než ssh použije rsh nebo ukončením programu ssh.
Argument musí být celé číslo. Vhodné pro použití ve skriptech,
pokud se ne vždy podaří navázat spojení.
EscapeChar
Nastaví escape znak (implicitně ~). Escape znak může být také
nastaven na příkazovém řádku. Argument musí být jediný znak (aby
bylo spojení transparentní pro binární data), je třeba použít
hodnotu ``none''.
FallBackToRsh
Pokud se nepodaří navázat spojení pomocí ssh a spojení bude
odmítnuto (protože na vzdáleném počítači neběží sshd), použije
se automaticky rsh (přitom se vypíše varování, že komunikace
nebude šifrovaná). Argument musí být "yes" nebo "no".
ForwardAgent
Určuje, zda spojení s autentizačním agentem (pokud existuje) má
být forwardováno na vzdálený stroj. Argument musí být "yes" nebo
"no".
ForwardX11
Určuje, zda X11 spojení má být automaticky přesměrováno přes
bezpečný kanál a nastavena proměnné prostředí DISPLAY. Argument
musí být "yes" nebo "no".
GatewayPorts
Určuje, že také vzdálené stroje se mohou připojovat na lokálně
forwardované porty. Argument musí být "yes" nebo "no".
GlobalKnownHostsFile
Definuje, jaký soubor použít místo /etc/ssh/ssh_known_hosts.
HostName
Definuje skutečné jméno vzdáleného počítače. Umožňuje používání
přezdívek nebo zkratek pro jména počítačů. Implicitně je jméno
počítače shodné se jménem zadaný v příkazovém řádku. Jsou
povoleny i numerické IP adresy (jak i příkazovém řádku, tak jako
argument HostName).
IdentityFile
Definuje soubor, ze kterého se čte uživatelova RSA autentizační
identita (implicitně .ssh/identity v uživatelově domovském
adresáři). Navíc budou pro autentizaci použity i všechny
identity známé autentizačnímu agentu. Ve jméně souboru lze
použít znak vlnka pro označení uživatelova domovského adresáře.
Konfigurační soubory mohou obsahovat více identit; tyto identity
budou zkoušeny postupně.
KeepAlive
Určuje, zda systém má posílat protistraně udržovací zprávy
(keepalive messages). Tyto zprávy umožňují zjistit přerušení
spojení nebo havárii jednoho ze strojů. Ovšem i při dočasném
přerušení komunikace bude spojení ukončeno. Řadě lidí se toto
chování nelíbí, je však vhodné při dávkovém zpracování.
Implicitní hodnota je "yes" (posílat udržovací zprávy), takže
klient bude informován, pokud dojde k přerušení spojení nebo
havárii vzdáleného počítače.
Pro zákaz zasílání udržovacích zpráv musí být nastaveno "no" jak
v konfiguraci serveru, tak klienta.
KerberosAuthentication
Určuje, zda má být použita autentizace Kerberos V5.
KerberosTgtPassing
Určuje, zda má být Kerberos V5 TGT forwardováno na server.
LocalForward
Určuje, že TCP/IP port na lokálním stroji má být forwardován
přes bezpečný kanál na vzdálený stroj a odtud na další zadaný
počítač:port. První argument musí být číslo portu, druhý
počítač:port. Lze zadat více forwardování a další forwardování
mohou být zadána v příkazovém řádku. Privilegované porty může
forwardovat pouze root.
NumberOfPasswordPrompts
Určuje počet výzev na zadání přihlašovacího hesla. Argument musí
být celé číslo. Pamatujte, že také server omezuje počet pokusů
(implicitně na 5), takže nastavení tohoto parametru na větší
hodnotu nemá význam. Implicitní hodnota je 1.
PasswordAuthentication
Určuje, zda použít autentizaci přihlašovacím heslem. Argument
musí být "yes" nebo "no".
PasswordPromptHost
Určuje, zda ve výzvě k zadání hesla má být obsaženo jméno
vzdáleného stroje. Argument musí být "yes" nebo "no".
PasswordPromptLogin
Určuje, zda ve výzvě k zadání hesla má být obsaženo přihlašovací
jméno na vzdáleném počítači. Argument musí být "yes" nebo "no".
Port Určuje číslo portu pro připojení na vzdálený počítač.
Implicitně 22.
ProxyCommand
Definuje, jaký příkaz použít pro připojení na server. Příkazový
řetězec může pokračovat do konce řádku, a bude prováděn shellem
/bin/sh. V příkazovém řetězci bude %h nahrazeno jménem počítače,
ke kterému se má připojovat a %p číslem portu. Příkaz může být v
zásadě cokoli, ale musí číst z stdin a zapisovat na stdout.
Musí se připojit na sshd server běžící na nějakém stroji, nebo
někde provést "sshd -i". Správa klíčů počítačů bude prováděna
užitím HostName počítače, ke kterému se připojuje (implicitně na
jméno zadané uživatelem).
Pamatujte, že ssh může být také zkonfigurováno pro podporu SOCKS
systémů používajících --s-socks4 nebo --s-socks5 konfigurační
volbu při překladu.
RemoteForward
Požaduje, aby zadaný TCP/IP port na vzdáleném stroji byl přes
bezpečný kanál forwardován na lokální počítač, na kterém vyvolá
TCP spojení na další zadaný počítač:port. První argument musí
být číslo portu na vzdáleném stroji, druhý argument libovolný
počítač:port. Lze zadat více než jedno forwardování a další
mohou být zadána z příkazového řádku. Privilegované porty může
forwardovat pouze root.
RhostsAuthentication
Určuje, zda zkoušet autentizaci založenou na souborech rhosts.
Pamatujte, že tato deklarace ovlivní pouze stranu klienta a nemá
žádný efekt na bezpečnost. Zákaz rhosts autentizace může snížit
dobu autentizace při pomalém spojení, když rhosts autentizace
není použita. Většina serverů nedovoluje RhostsAuthentication,
protože není bezpečná (viz RhostsRSAAuthentication). Argument
této volby musí být "yes" nebo "no".
RhostsRSAAuthentication
Určuje, zda zkoušet autentizaci založenou na souborech rhosts s
RSA autentizací počítačů, což bývá na většině uzlů primární
autentizační metoda. Argument musí být "yes" nebo "no".
RSAAuthentication
Určuje, zda zkoušet RSA autentizaci. Argument musí být "yes"
nebo "no". RSA autentizace může být použita, pokud existuje
soubor identity, nebo běží autentizační agent.
StrictHostKeyChecking
Jestliže je tento příznak nastaven na "yes", ssh nebude
automaticky přidávat klíče počítačů do souboru
$HOME/.ssh/known_hosts, a odmítne požadavek na připojení k
počítači, jehož klíč byl změněn. Toto nastavení poskytuje
maximální ochranu proti útokům typu trojského koně. Nicméně
pokud není nainstalován aktuální soubor /etc/ssh/ssh_known_hosts
obsahující klíče všech počítačů, na něž se často připojujete, je
tato volba nepříjemná, protože nutí uživatele, aby všechny nové
počítače přidával ručně. Kompromisem je nastavení na "ask", kdy
budou nové klíče počítačů přidávány automaticky poté, co
uživatel potvrdí že to opravdu chce. Jestliže je tato volba
nastavena na "no", potom budou nové klíče počítačů přidávány do
souboru $HOME/.ssh/known_hosts automaticky bez potvrzování.
Klíče známých počítačů budou ověřovány automaticky ve všech
případech.
Argument musí být "yes", "no" nebo "ask".
TISAuthentication
Určuje, zda zkoušet TIS autentizaci. Argument této volby musí
být "yes" nebo "no".
UsePrivilegedPort
Určuje, zda při připojování na vzdálený počítač použít
privilegovaný port. Jestliže je povolena autentizace založená na
rhosts nebo rsarhosts, je implicitní hodnota je "yes".
User Definuje uživatelské jméno na vzdáleném stroji. Lze použít,
pokud má uživatel na různých strojích různá uživatelská jména.
Odstraňuje problémy s nutností zadávání uživatelského jména na
příkazovém řádku.
UserKnownHostsFile
Určuje, který soubor použít místo $HOME/.ssh/known_hosts.
UseRsh Určuje, že pro přihlašování na tento počítač musí být použit
nebezpečný protokol rlogin/rsh. Je možné, že počítač vůbec
nepodporuje ssh protocol. Způsobí, že ssh okamžitě vyvolá rsh.
Je-li zadána tato volba, budou všechny ostatní volby (kromě
HostName) ignorovány. Argument musí být "yes" nebo "no".
XAuthLocation
Určuje cestu k programu xauth.
PROMĚNNÉ PROSTŘEDÍ
Program ssh normálně nastavuje následující proměnné prostředí:
DISPLAY
Proměnná prostředí DISPLAY označuje umístění X11 serveru. Je
automaticky nastavena programem ssh, tak že obsahuje hodnotu ve
tvaru "hostname:n", kde hostname označuje počítač, kde běží
shell, a n je celé číslo >= 1. Ssh používá tuto speciální
hodnotu pro forwardování X11 spojení přes bezpečný kanál.
Uživatel normálně nesmí ručně nastavovat proměnnou DISPLAY,
protože pak by X11 spojení bylo nebezpečný (a bude vyžadovat,
aby uživatel ručně kopíroval jakékoli požadované autorizační
cookies).
HOME Bude nastavena na cestu do uživatelova domovského adresáře.
LOGNAME
Synonymum pro USER; nastavuje se pro kompatibilitu se systémy,
které používají tuto proměnnou.
MAIL Bude nastavena na jméno uživatelova mailboxu.
PATH Bude nastavena na implicitní PATH zadanou při překladu programu
ssh, nebo na některých systémech definovanou v /etc/environment
nebo /etc/default/login.
SSH_AUTH_SOCK
Jestliže existuje, bude nastavena na jméno (včetně cesty) unix-
domain soketu použitého pro komunikaci s autentizačním agentem
(nebo jeho lokálním zástupcem).
SSH_CLIENT
Identifikuje klientský konec spojení. Tato proměnná obsahuje tři
hodnoty oddělené mezerou: IP adresu klienta, číslo portu
klienta, a číslo portu serveru.
SSH_ORIGINAL_COMMAND
Bude obsahovat původní příkazový řádek, jestliže je spuštěn
zadaný příkaz. Může být použita pro získání argumentů apod. z
opačného konce.
SSH_TTY
Bude nastavena na jméno tty (včetně cesty) spojeného s aktuálním
shellem nebo příkazem. Jestliže aktuální session nemá žádné tty,
proměnná nebude nastavena.
TZ Proměnná timezone bude nastavena, aby označovala aktuální
časovou zónu, pokud byla nastavena při spuštění démona (tj.,
démon předává hodnota na nové spojení).
USER Bude nastavena na jméno přihlášeného uživatele.
Navíc příkaz ssh čte soubor /etc/environment a $HOME/.ssh/environment,
a přidává řádky tvaru PROMNN=hodnota do prostředí. Některé systémy
mohou mít další mechanismy pro nastavování prostředí, jako soubor
/etc/default/login na systému Solaris.
SOUBORY
$HOME/.ssh/known_hosts
Obsahuje klíče všech počítačů, na které se uživatel přihlásil (a
které nejsou v /etc/ssh/ssh_known_hosts). Viz manuálová stránka
k sshd.
$HOME/.ssh/random_seed
Použit jako hnízdo pro generátor náhodných čísel. Soubor
obsahuje senzitivní data a proto musí mít práva read/write pro
uživatele a žádná práva pro ostatní. Tento soubor je vytvořen
při prvním spuštění programu a je automaticky aktualizován.
Uživatel nikdy nemusí číst nebo modifikovat tento soubor ručně.
$HOME/.ssh/identity
Obsahuje RSA autentizační identitu uživatele. Tento soubor
obsahuje senzitivní data a musí být čitelný uživatelem, ale
nedostupný pro ostatní. Při generování klíče je možné
specifikovat přístupové heslo. Přístupové heslo bude použito na
zašifrování senzitivní části tohoto souboru použitím šifry IDEA.
$HOME/.ssh/identity.pub
Obsahuje veřejný klíč pro autentizaci (veřejnou část souboru
identity v podobě čitelné člověkem). Obsah tohoto souboru musí
být přidán do $HOME/.ssh/authorized_keys na všech strojích, na
které se chcete přihlašovat s použitím RSA autentizace. Soubor
neobsahuje citlivá data a může (ale nemusí) být čitelný pro
kohokoli. Tento soubor není nikdy použit automaticky a není
nezbytný; je použit pouze pro snazší práci uživatele.
$HOME/.ssh/config
Konfigurační soubor pro jednotlivé uživatele. Jeho formát je
popsán výše. Soubor je používán ssh klientem. Obvykle neobsahuje
jakákoli citlivé informace, ale doporučená práva jsou read/write
pro uživatele, a žádná pro ostatní.
$HOME/.ssh/authorized_keys
Obsahuje seznam RSA klíčů, které mohou být použity pro
přihlašování tohoto uživatele. Jeho formát je popsán v manuálové
stránce programu sshd. V nejjednodušším případě je formát
stejný jako formát .pub identity souboru (to jest každý řádek
obsahuje počet bitů v modulu veřejný exponent, modulus, a
komentářové pole, oddělené mezerami). Tento soubor neobsahuje
zvláště citlivé informace, ale doporučená práva jsou read/write
pro uživatele, a žádná práva pro ostatní.
/etc/ssh/ssh_known_hosts
Seznam známých klíčů počítačů pro celý systém. Tento soubor musí
být připraven správcem systému tak, aby obsahoval veřejné klíče
všech počítačů v organizaci. Soubor musí být čitelný pro
všechny. Soubor obsahuje veřejné klíče, jeden na řádku, v
následujícím formátu (pole jsou oddělena mezerami): jméno
počítače, počet bitů v modulu, veřejný exponent, modulus, a
nepovinný komentář. Používají-li se různá jména pro týž stroj,
musí být v souboru uvedena všechna jeho jména oddělená čárkami.
Formát je popsán na sshd manuálové stránce.
Program sshd používá kanonické jméno počítače (vrácené domain
name servery) pro verifikaci klientských počítačů při
přihlašování; ostatní jména jsou potřeba protože ssh
nekonvertuje uživatelem zadané jméno na kanonické jméno před
kontrolou klíče, aby osoba, která má přístup k domain name
serveru, nemohla mást autentizaci počítačů.
/etc/ssh/ssh_config
Konfigurační soubor pro celý systém (pro všechny uživatele).
Tento soubor poskytuje implicitní hodnoty, pro parametry, které
nejsou zadány v uživatelově konfiguračním souboru, a pro
uživatele, kteří nemají konfigurační soubor. Tento soubor musí
být čitelný pro všechny.
$HOME/.rhosts
Tento soubor je použit pro .rhosts autentizaci. Obsahuje seznam
dvojic počítač/uživatel, pro které je povoleno přihlášení.
(Pamatujte, že tento soubor je také používán programy rlogin a
rsh, díky kterým je použití tohoto souboru nebezpečné.) Každý
řádek v tomto souboru obsahuje jméno počítače (v kanonické formě
vrácené domain name serverem) a jméno uživatele na tomto
počítači, oddělené mezerou. Tento soubor musí být vlastněný
uživatelem, a nesmí mít právo zápisu pro nikoho jiného.
Doporučená práva jsou read/write pro uživatele a žádná pro
ostatní.
Pamatujte, že implicitně má být sshd instalován tak, že požaduje
úspěšnou RSA autentizaci počítače před .rhosts autentizací.
Jestliže server nemá klíč klientského počítače v souboru
/etc/ssh/ssh_known_hosts, může uživatel uložit klíč do souboru
$HOME/.ssh/known_hosts. Nejsnazší způsob, jak toho dosáhnout,
je spojit se zpět ze serveru na klienta pomocí ssh; tím se klíč
počítače automaticky přidá do souboru $HOME/.ssh/known_hosts.
$HOME/.shosts
Tento soubor se používá přesně stejným způsobem jako .rhosts.
Jeho účelem je umožnit rhosts autentizaci pro ssh, aniž by bylo
povoleno přihlášení pomocí rlogin nebo rsh.
/etc/hosts.equiv
Tento soubor se používá při autentizaci pomocí souboru .rhosts.
Obsahuje kanonická jména počítačů, na každém řádku jeden (formát
je detailně popsán na manuálové stránce programu
sshd).Jestližejeklientskýpočítačnalezenvtomto souboru, je
automaticky povolené přihlášení, pokud je jméno uživatele na
serveru i klientu stejné. Navíc je normálně nutná úspěšná RSA
autentizace počítače. Tento soubor musí zapisovatelný pouze
uživatelem root.
/etc/ssh/shosts.equiv
Tento soubor je zpracováván přesně jako /etc/hosts.equiv. Může
být užitečný na povolení přihlášení pomocí ssh, ale nikoli pro
rsh/rlogin.
/etc/ssh/sshrc
Příkazy v tomto souboru budou provedeny programem ssh po
přihlášení uživatele, ale před provedením uživatelova shellu
(nebo příkaz). Viz manuálová stránka sshd pro další informace.
$HOME/.ssh/rc
Příkazy v tomto souboru budou provedeny programem ssh po
přihlášení uživatele, ale před provedením uživatelova shellu
(nebo příkaz). Viz manuálová stránka sshd pro další informace.
INSTALACE
Program ssh je normálně instalován jako setuid root. Práva uživatele
root potřebuje pouze pro autentizaci pomocí souboru rhosts (vyžaduje,
aby spojení přicházelo z privilegovaného portu, a alokování takového
portu vyžaduje práva uživatele root). Také musí být schopen číst
soubor /etc/ssh/ssh_host_key pro RSA autentizaci počítačů. Program ssh
lze použít bez oprávnění uživatele root, ale autentizace pomocí souboru
rhosts bude zakázána. Program ssh se vzdá jakýchkoli zvláštních práv
bezprostředně po navázání spojení se vzdáleným počítačem.
Byla vynaložena značná práce, aby byl program ssh bezpečný. Nicméně
pokud objevíte bezpečnostní problém, oznamte to prosím ihned na <ssh-
bugs@cs.hut.fi>.
AUTOR
Tatu Ylonen <ylo@ssh.fi>
Informace o nových verzích, mailing listech, a podobně můžete nalézt na
domovské WWW stránce programu ssh na http://www.cs.hut.fi/ssh.
VIZ TAKÉ
sshd(8), ssh-keygen(1), ssh-agent(1), ssh-add(1), scp(1), make-ssh-
known-hosts(1), rlogin(1), rsh(1), telnet(1)
VAROVÁNÍ
Překlad je pravděpodobně zastaralý. Pokud chcete pomoci s jeho
aktualizací, zamiřte na http://man-pages-cs-wiki.homelinux.net/