www.www.zaachi.com » Blog/Bezpečnost » Password prompt: SSH+SVN & TortoiseSVN

Možná jste narazili na problém, kdy používáte SVN spolu s SSH, že musíte neustále dokola zadávat své přístupové údaje.
Aby jste tento problém vyřešili, budete potřebovat následující:
Jako první je nutné vygenerovat klíč na serveru. Pomocí Putty se připojte a spusťte příkaz:
ssh-keygen -t rsa -b 1024 -f filekey.key
Kde filename.key je jmeno souboru, do kterého bude klíč vygenerován (polu s tímto souborem se vygeneruje ještě jeden soubor - filekey.key.pub, který nás bude zachvíli zajímat).
Při generování se vás zeptá průvodce na zadání passphrase, ten nechtejte prázdný.
Pro správnou autentizaci je nutné nyní vytvořit adresář .ssh ve vašem home adresáři, pokud ještě neexistuje:
mkdir .ssh
a do něj nakopírovat autentizační klíč:
cp filekey.key.pub .ssh/authorized_keys
V dalším kroku je nutné zkopírovat ze serveru privátní vygenerovaný klíč, abychom s nim mohli dále pracovat. Tento klíč si zkopírujte libovolně do svého systému, například pomocí zmíněného programu WinSCP.
Nyní přijde na řadu program PuttyGen, pomocí nejž si nejprve načtete stažený privátní klíč (soubor filekey.key) v kontextovém menu Conversions - Import key a poté zvolíte možnost Save private key. Uloží se vám soubor s příponou ppk (Putty private key)
V posledním kroku je nutné celou relaci přihlášení uložit v Putty, abychom ji mohli v TortoiseSVN využívat.
Nastartujeme novou instanci putty, vyplníme si Host name (or Ip adress), Port a přejdeme do v levém menu do SSH - Auth.
Zde si vybereme v poli Private key file for authentication váš vygenerovaný soubor ppk. Celou relaci uložíme (je nutné přejít do záložky Session, a zde zvolit možnost Save).Můžete si vyzkoušet se přes tuto relaci pomocí putty přpojit. Systém po vás nesmí chtít heslo.
V TortoiseSVN je nutné nyní vytvořit repozitář, který bude vámi vytvořenou relaci používat. Ve stávajícím repozitáři můžete zvolit možnost "Relocate" v kontextové nabídce.
Adresa repozitáře bude vypadat následně:
svn+ssh://username@session/www/svn/rep
kde username je vaše uživatelské jméno, pod který se na server přihlašujete a session je název, pod kterým je uložena relace v putty.
Pokud jste dodrželi všechny kroky, měl by vám tento postup fungovat a TortoiseSVN by po vás neměl chtít znova přihlašovací údaje.
