Jen jsem chtěl poděkovat za pěknou sérii článků. O CA-like infrastruktuře v Secure Shellu jsem nevěděl. Díky.
Názory k článku
Certifikáty v OpenSSH
styl
celé vláknodobre tema, ale autor by mel zapracovat na srozumitelnosti, napr. prehledl jsem co je to ten 'principal'? takto tento clanek je spis nakopnuti si precist znova man pages a patricne readme v openssh source tree :)
Re: styl
celé vláknoPrincipal je autorizované jméno pro certifikát, v případě serverového jde o jméno serveru, u uživatelského jde o jméno uživatele. Seznam principals se zadává za volbu -n programu ssh-keygen. Opravdu je to trochu zamlžené, za to se omlouvám.
Jinak mým cílem samozřejmě není okopírovat celé manuálové stránky, spíše mi jde o to ukázat, jaké možnosti jsou k dispozici a jak se dají prakticky použít.
X509
celé vláknoTrochu (dost) je škoda toho, že se nepoužívá X509. Je to sice šílený moloch, ale bylo by možné použít stávající PKI. A asi by se nestalo něco typu "od verze 5.něco se změnil formát a není zpětně kompatibilní"...
Re: X509
celé vláknoNezkousel jsem ale co treba tohle ? http://roumenpetrov.info/openssh/
Re: X509
celé vláknoPodivam se na to, vypada to zajimave. Bohuzel ale u takovehle veci je (ne)byti ve standardni distribuci pomerne dulezite :-(
Re: X509
celé vláknoV Gentoo podpora X.509 v OpenSSH je, stačí zapnout USE flag x509. Osobně v tom ale nevidím velký přínos. SSH certifikáty jsou jednoduché a funkční.
Re: X509
celé vláknoJe pravda, že ty certifikáty v openssh jsou jednoduché a funkční. Ovšem kolem X509 je spousta technologií, procesů a spol. Máme PKI, různé PKCS, komerční CA, firemní CA,....
priklad?
celé vláknoMuzete mi prosim nekdo napsak nejaky konkretni scenar pouzitit? Ackoli je to zajimave, tak at o tom uvazuju nahoru/dolu, nenapada mne, jak by to mohlo byt uzitecne.
Re: priklad?
celé vláknoCertifikaty obecne slouzi ke zjednoduseni zprostredkovani duvery. T.j. mam jednu certifikacni autoritu, ktere vsichni duveruji. Neni pak napriklad potreba, aby server znal vsechny uzivatele predem. Staci, kdyz server uznava nejakou CA, a uzivatel se prokaze certifikatem od one CA.
Re: priklad?
celé vláknoTakze mne tak napada, firma, ktera provozuje 100 stroju, na ktere se hlasim pres SSH si u vsech podepise privatni klic jednou CA. Kdyz se pak budu na nektery z tech stroju hlasit, muzu si bit jist jejich autenticitou, protoze znam certifikat.
Ma nejaky vyznam podepisovani klice u klienta?
Re: priklad?
celé vláknopardon, ...bYt jist...
Re: priklad?
celé vláknoU uživatelů je to obdobné. Naimportuju na server certifikát od CA a řeknu OpenSSH, že všichni, kdo mají certifikát od té CA, se mohou přihlásit. Samozřejmě je pak potřeba nějaký mechanismus, jak na tom stroji mít uživ jména a spol. ALe to se dá řešit přes LDAP, kopírování, atd... Prostě možnosti tu jsou :-)
Jinak řečeno, certifikát obecně slouží k tomu, že entita A (Alice) potká CA, entita B (Bob) potká CA a pak se A s B můžou navzájem ověřit, aniž by předem potřebovali cokoliv víc, než jendou potkat tu CA....
Re: priklad?
celé vláknorevalidace - nevim jak kde, ale u nas je to peklo, ktere se vyzaduje :D takze mas casove omezeny access, napr. 1 rok; otazka je, jak uzivatele pouzivajici ssh upozornit, ze si ma udelat revalidaci, aby chudak pak necekal tyden, nez mu manazer potvrdi, ze mu opravdu maji novej klic podepsat :)
Re: priklad?
celé vláknoJe potřeba si uvědomit roli jednotlivých kryptografických objektů. Certifikát jako takový je veřejná věc. Je naprosto běžné, že si CA nechává kopii všech certifikátů, které vystavila. Pak není problém je projet a patřičné uživatele upozornit. Pokud by nevadilo vystavení certifikátu na staré klíče, pak je možné rovnou vystavit nový certifikát a ten uživateli poslat (třeba po kontrole nějakým tím mananagerem).
Stejně tak je možné (nevím, zda OpenSSH dělá) poslat celý certifikát SSH serveru s tím, že uživatel k němu bude mít přístup (třeba v nějaké ENV proměnné). Pak ho může zkontrolovat jakákoliv userspace aplikace.

