]> rtime.felk.cvut.cz Git - edu/osp-wiki.git/commitdiff
More hints for setup and use of the SSH keys.
authorpisa <pisa@web>
Fri, 9 Mar 2012 11:48:31 +0000 (12:48 +0100)
committerOSP robot <osp@rtime.felk.cvut.cz>
Fri, 9 Mar 2012 11:48:31 +0000 (12:48 +0100)
cviceni/rtime-git-ssh-key.mdwn

index 9cdf997063e8f379cf10a8a661d30caa4d7a2d61..2d85969cdf85ae7fe69d5878a0e68ac62ffbaae6 100644 (file)
@@ -18,9 +18,49 @@ laboratoři (či na serveru postel.felk.cvut.cz) příkaz
 Ten vytvoří pár klíčů (veřejný a soukromý) a ve výchozím nastavení je
 uloží do správného adresáře pod správným jménem. 
 
+Pokud veřejný klíč kopírujete do svého domovského adresáře z jiného
+počítače, je nezbytně nutné, aby byla správně nastavena práva k vašemu
+adresáři s SSH daty. Do adresáře nesmí mít přístup nikdo jiný než vlastník.
+K privátnímu klíči (ten bez `*.pub`) nesmí mít ostatní uživatelé
+a také žádný přístup a k veřejnému klíči by naopak měla být práva
+pro čtení nastavena pro všechny.
+
+    uzivatel@postel:~$ ls -ld ~/.ssh
+    drwx------ 2 uzivatel users 136 Mar  9 12:23 /home/pisa/.ssh
+    
+    uzivatel@postel:~$ ls -l ~/.ssh
+    total 16
+    -rw------- 1 uzivatel users 1679 Mar  9 12:23 id_rsa
+    -rw-r--r-- 1 uzivatel users  393 Mar  9 12:23 id_rsa.pub
+    -rw-r--r-- 1 uzivatel users 4272 Dec  7 09:39 known_hosts
+
+Pro kontrolu správnosti vygenerování a práv ke klíčům je přidaný na systém
+skript `check-ssh-key`, který upozorní na případné problémy a vypíše,
+které klíče by mechanizmus synchronizace měl na server `rtime` měl
+překopírovat. Pokud je problém s právy k souborům a adresáři,
+prostudujte příkaz `man chmod`.
+
 Doporučujeme, abyste si klíč **zašifrovali heslem** (enter a
 passphrase), protože pak nebude moct být váš soukromý klíč zneužit
 lidmi, kteří mají přístup k datům na serveru (administrátoři atd.).
 Pokud tak učiníte, může se vám hodit příkaz `ssh-add`, kterým klíč
 rozšifrujete v paměti vašeho počítače a až do vašeho odlogování heslo
 nebudete muset zadávat.
+
+Vlastní hesla v paměti si udržuje služba `ssh-agent`, která nastartovaná
+na počítačích v laboratořích (a i většině beěných GNU/Linux distribucí)
+pro každé lokální sezení. K této službě se pro vložení klíče připojuje
+program `ssh-add` stejně jako si příkazy `ssh` (i při použití SSH protokolu v `git`u)
+si nechají touto službou podepisovat autentikační tokeny privátním klíčem.
+
+Na serveru `postel` není automaticky pro vzdálená sezení `ssh-agent` spuštěn.
+Je potřeba si ho pustit, zajistit nastavení proměnných prostředí `SSH_AGENT_PID`
+a `SSH_AGENT_SOCKET` a při odhlášení agenta ukončit příkazem `kill $SSH_AGENT_PID`
+případně `killall ssh-agent`.
+
+Případně je možné agenta pustit na svém počítači lokálně zajistit přeposílání
+požadavků na podpisy ze vzdáleného sezení na svůj počítač. Přeposílání se povolí
+nastavením přepínače `-A` při volání SSH.
+
+    ssh -A uzivatel@postel.felk.cvut.cz
+