abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 13:00 | Nová verze

    Společnost Meta otevírá svůj operační systém Meta Horizon OS pro headsety pro virtuální a rozšířenou realitu. Vedle Meta Quest se bude používat i v připravovaných headsetech od Asusu a Lenova.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | IT novinky

    Společnost Espressif (ESP8266, ESP32, …) získala většinový podíl ve společnosti M5Stack, čímž posiluje ekosystém AIoT.

    Ladislav Hagara | Komentářů: 0
    včera 23:44 | Nová verze

    Byla vydána nová stabilní verze 3.5 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). Přehled novinek také na YouTube. Nově lze využívat cloud (audio.com). Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 16:44 | Zajímavý článek

    50 let operačního systému CP/M, článek na webu Computer History Museum věnovaný operačnímu systému CP/M. Gary Kildall z Digital Research jej vytvořil v roce 1974.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Pozvánky

    Byl zveřejněn program a spuštěna registrace na letošní konferenci Prague PostgreSQL Developer Day, která se koná 4. a 5. června. Na programu jsou 4 workshopy a 8 přednášek na různá témata o PostgreSQL, od konfigurace a zálohování po využití pro AI a vector search. Stejně jako v předchozích letech se konference koná v prostorách FIT ČVUT v Praze.

    TomasVondra | Komentářů: 0
    včera 03:00 | IT novinky

    Po 48 letech Zilog končí s výrobou 8bitového mikroprocesoru Zilog Z80 (Z84C00 Z80). Mikroprocesor byl uveden na trh v červenci 1976. Poslední objednávky jsou přijímány do 14. června [pdf].

    Ladislav Hagara | Komentářů: 6
    včera 02:00 | IT novinky

    Ještě letos vyjde Kingdom Come: Deliverance II (YouTube), pokračování počítačové hry Kingdom Come: Deliverance (Wikipedie, ProtonDB Gold).

    Ladislav Hagara | Komentářů: 5
    21.4. 19:11 | Komunita

    Thunderbird 128, příští major verze naplánovaná na červenec, přijde s nativní podporou Exchange napsanou v Rustu.

    Ladislav Hagara | Komentářů: 25
    21.4. 04:44 | Komunita

    Byly vyhlášeny výsledky letošní volby vedoucího projektu Debian (DPL, Wikipedie). Novým vedoucím je Andreas Tille.

    Ladislav Hagara | Komentářů: 7
    21.4. 00:11 | Nová verze

    Po osmi měsících vývoje byla vydána nová verze 0.12.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 268 vývojářů. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 2
    KDE Plasma 6
     (71%)
     (10%)
     (2%)
     (18%)
    Celkem 678 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Neinteraktivni zadani hesla ssh klientovi

    29.11.2010 01:34 | Přečteno: 2137× | linux | Výběrový blog | poslední úprava: 29.11.2010 03:12

    Jiste to taky znate. Kazdy den se logujete na spousty stroju po ssh. Dejme tomu, ze tak cinite na "stoprocentne" duveryhodne siti. Potom, pokud budete cist dale, se dozvite, jak si trosku ulehcit praci a usetrit par vrasek.

    Pokud vas stale stve rucni zadavani hesla a prihlasovani pomoci klice nepripada v uvahu, tak lze pouzit utilitku sshpass. Je to programek, ktery lze v prikazovem radku predradit klasickemu ssh klientu. Umoznuje zadani hesla jako parametr prikazove radky (pouziti volby -p), nebo z promenne prostredi jmenem SSHPASS (pouziti volby -e).

    Tento programek snad najdete v kazde distribuci (doufam). V debianu lze instalovat opravdu velmi snadno:
    aptitude install sshpass
    Jeho jednoduche pouziti by nasledne mohlo vypadat nejak takto:
    martin@anicka:~$ sshpass -p "heslo" ssh root@seppuku
    Pripadne vyuziti promenne prostredi SSHPASS:
    SSHPASS="heslo" sshpass -e ssh root@seppuku
    Vyse uvedene prikazy budou fungovat, pokud jiz mate verejny klic daneho pocitace (v mem pripade seppuku) ve svem ~/.ssh/known_hosts. Pokud ho tam jeste nemate, tak mate dve moznosti. Bud se jednou prihlasit rucne a potvrdit obligatnim "yes" pridani klice do souboru, nebo udelat jednu velmi nebezpecnou vec a rict ssh klientovi, aby se na kontrolu known_hosts a verejneho klice proste vykaslal. To by se dalo realizovat asi takto:
    sshpass -p "heslo" ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@seppuku
    Takto dostanete uspesne prihlaseni (v pripade spravneho hesla) prakticky hned a bez premysleni.

    Jiste toto reseni asi nebude uplne bezpecne. Uplne zakazeme kontrolu verejneho klice vzdaleneho pocitace, takze se teoreticky muze stat, ze na zadane ip adrese budeme komunikovat s nejakym zlobivakem, ktery se bude vydavat za nas duveryhodny stroj. Osobne jsem tento postup pouzil na domaci siti, ktere bezvyhradne verim (to je asi take chyba), k automatizovanemu ziskavani ruznych stavovych informaci(vyuziti pameti, disku, teploty) z pocitacu na ni:
    martin@anicka:~$ sshpass -p "heslo" ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@seppuku 'cat /proc/cpuinfo'
    Warning: Permanently added 'seppuku,192.168.89.163' (RSA) to the list of known hosts.
    processor	: 0
    vendor_id	: GenuineIntel
    cpu family	: 6
    model		: 8
    model name	: Celeron (Coppermine)
    stepping	: 3
    cpu MHz		: 547.333
    cache size	: 128 KB
    fdiv_bug	: no
    hlt_bug		: no
    f00f_bug	: no
    coma_bug	: no
    fpu		: yes
    fpu_exception	: yes
    cpuid level	: 2
    wp		: yes
    flags		: fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 mmx fxsr sse up
    bogomips	: 1096.35
    clflush size	: 32
    power management:
    
    martin@anicka:~$
    Jiste jste si vsimli toho otravneho warningu, ktery nas informuje o tom, ze byl verejny klic vzdaleneho pocitace pridan do known_hosts. Jelikoz jsme ale standardni umisteni tohoto souboru prepsali natvrdo na /dev/null, je tento warning celkem beze smyslu. Jednoduchym postupem pro zbaveni warningu je presmerovat standardni chybovy vystup ssh klienta take do /dev/null:
    martin@anicka:~$ sshpass -p "heslo" ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@seppuku 'cat /proc/cpuinfo' 2>/dev/null
    processor	: 0
    vendor_id	: GenuineIntel
    cpu family	: 6
    model		: 8
    model name	: Celeron (Coppermine)
    stepping	: 3
    cpu MHz		: 547.323
    cache size	: 128 KB
    fdiv_bug	: no
    hlt_bug		: no
    f00f_bug	: no
    coma_bug	: no
    fpu		: yes
    fpu_exception	: yes
    cpuid level	: 2
    wp		: yes
    flags		: fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 mmx fxsr sse up
    bogomips	: 1096.37
    clflush size	: 32
    power management:
    
    martin@anicka:~$
    Doufam, ze tento zapisek nikoho moc neznudil ani nepobouril. Potreboval jsem si to nekam zapsat, abych to treba za par let opet nasel. Pokud toto pomuze nekomu jinemu, budu jen rad.

    Abych pomohl pripadnemu zajemci o toto tema, musim rict, ze stejnou praci lze udelat pomoci nastroje Expect,ktery lze vyuzit k automatizaci prihlaseni (precteni vstupu od ssh klienta a zadani hesla) a naslednemu predani konzole uzivateli (nebo poslani prikazu a ukonceni). Ovsem tato metoda se mi zda pomerne krkolomna ve srovnani s sshpass. Nebezpecne budou obe dve asi stejne :-) (nekde musite mit plain-text heslo).

    Dobrou noc preji vsem GNU/Linuxakum ;-)        

    Hodnocení: 83 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    29.11.2010 05:09 Suchý čert
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    A má to nějakou výhodu oproti použití klíčů, ssh-agent a ssh-add?
    29.11.2010 07:41 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Jistě. Je to složitější, méně bezpečné a navíc hrozně cool…
    Michal Fecko avatar 29.11.2010 07:53 Michal Fecko | skóre: 31 | blog: Poznámkový blog
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    lol :-D
    Marián Kyral avatar 29.11.2010 08:12 Marián Kyral | skóre: 29 | blog: Sem_Tam | Frýdek-Místek
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Taky existují servery ke kterým má developer přístup jen výjimečně (třeba produkční) a tam si nemůže přidávat svůj klíč jen tak.
    29.11.2010 08:16 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    To jistě, ale právě v takových případech mi připadá použití technik z textu tím spíš nevhodné.
    29.11.2010 09:42 otec
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    No, asi to má svůj důvod - k produkčnímu by vývojář neměl mít přístup vůbec, například;-)
    Marián Kyral avatar 29.11.2010 10:06 Marián Kyral | skóre: 29 | blog: Sem_Tam | Frýdek-Místek
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    No, asi to má svůj důvod - k produkčnímu by vývojář neměl mít přístup vůbec, například;-)
    Však taky píšu výjimečně. Ony jsou i projekty, kde to bez toho nejde. Třeba masívní migrace dat při které je třeba provádět průběžné kontroly a řešit vzniklé problémy.
    29.11.2010 10:11 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Já se s tím teď u jednoho zákazníka potýkám z druhé strany, z pozice systémáka, který by nejradši vývojáře nepustil ani na testovací stroj, protože mu z jejich skriptů vstávají hrůzou vlasy na hlavě a musí je po nich od základu přepisovat.
    29.11.2010 12:48 YYY | skóre: 29 | blog: martinek
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    V blogpostu jsem ale uvedl, ze tato cesta je pomerne nebezpecna.
    houska avatar 29.11.2010 09:32 houska | skóre: 41 | blog: HW
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    je to delsi, ale za to horsi cestou ...
    30.11.2010 19:22 platYpus
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    linux jako ssh-client, cisco ios jako ssh-server
    finc avatar 29.11.2010 10:13 finc | skóre: 8 | blog: Finc | Kolín
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Jednu vyhodu v tom osobne spatruji. Prenasim nektere data mezi servery a jelikoz cilovy server nemam pod spravou, je to problem. Dost casto totiz dojde k tomu, ze na druhe strane nekdo zmeni ssh klice a pote mi jaksi autentifikace ssh pomoci klicu je k nicemu.
    Kdo Vam dal pravo ty lidi urazet? A kdo ti dal pravo cumet z okna, ty kr.vo!
    29.11.2010 10:50 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    SSH klíč patří uživateli (člověku), ne serveru nebo účtu. Takže na druhé straně vám maximálně někdo váš klíč může smazat – otázka je, proč by to někdo dělal, na klíče jiných uživatelů by neměl sahat.
    finc avatar 29.11.2010 10:58 finc | skóre: 8 | blog: Finc | Kolín
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Bohuzel k tomu dochazi. Duvod se mi nepodarilo zjistit
    Kdo Vam dal pravo ty lidi urazet? A kdo ti dal pravo cumet z okna, ty kr.vo!
    29.11.2010 10:56 CET
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Nepletes si nahodou RSA klice serveru a uzivatelovo klice?

    RSA klice serveru jsou v /etc/ssh/.... a ty slouzi k tomu, aby si klient overil, ze se pripojuje na cilovy server a ne nejaky MITM server. Ty by se opravdu menit nemely a pokud to nekdo dela pravidelne, tak to neni moc dobre. Obyvkle se zmeni pri preinstalaci systemu a uzivatel by to mel vedet a vymazat si stare klice.

    Pokud se to meni casto, lze pouzit nastaveni StrictHostChecking=no v kombinaci s UserKnownHostsFile=/dev/null, pak bude klient hlasit pouze warning, ale bude fungovat.

    Uzivatelovo klice muze menit jenom uzivatel v .ssh/id_rsa/dsa a na serveru jsou ulozene v ~/.ssh/authorized_keys. Ze by nekdo tohle casto menil, to pochybuju, leda by se to automaticky cistilo nebo se uploadoval soubor ze zalohy.

    Zadavat nekam heslo k ssh je pakarna. Pokud ma neco ssh, tak to umi urcite pouzivat i klice. Mame switche HP ProCurve s ssh a umoznuji take vlozit ssh klice. Naopak, ssh klice je lepsi pouzivat, protoze se tak daji lepe regulovat prava - stejny login muze byt pristupny ruznym uzivatelum pres klice a lze pak jednotlive uzivatele zakazovat a povolovat pouze smazanim/pridanim klice. Navic klice mohou uzivatel sifrovat jedinym silnym heslem, takze odpada nutnost znalost nekolika ruznych slabych hesel a pamatovani si, na kterych server jsou ktere.

    Klice jsou obvykle v sshd zapnute.
    29.11.2010 10:35 Tomáš
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Dobrá věc. Pro hnidopichy bych ukázal příklad, kdy uvedený postup má smysl. Vyvíjíme nějaká embedded zařízení, vývojový tým má pár kousků na hraní a často se potřebujeme přihlásit na zařízení, pustit pár příkazů a zase se odhlásit, dá se to pěkně naskriptovat. Vše v důvěryhodné síti, ale klíč si na zařízení prostě nepřidám. Na Windows jsem k tomu našel program plink (z dílny Putty).

    Neví někdo o něčem podobném pro Windows a telnet? Zrovna plink to má nějak domotané a při telnetu to nebere z commandliny skoro nic, snad ani username. Potřeboval bych něco ve stylu: nejakytelnet -l username -p password - c commands.
    30.11.2010 19:21 platYpus
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Kermit95
    30.11.2010 13:21 imploder | skóre: 11
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Proč vlastně nefunguje normálně echo 'heslo' | ssh ...? Zkoušel jsem to a překvapilo mě, že to nejde.
    pavlix avatar 30.11.2010 17:10 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Proč vlastně nefunguje normálně echo 'heslo' | ssh ...? Zkoušel jsem to a překvapilo mě, že to nejde.
    Protože tvůrci OpenSSH mají určitý názor na to, co by uživatel měl a neměl dělat. A tento svůj názor prosazují zablokováním určitých možností (například této) a naopak poskytnutím bezpečnějších alternativ (například přihlašování pomocí klíčů a SSH agenta).
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    30.11.2010 23:52 imploder | skóre: 11
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    No, já vím, že to není bezpečné. Chtěl jsem to použít na ssh v bezpečné LAN za NATem, jen pro sebe, takže to zrovna vůbec nevadilo. Jinak s tím souhlasím, tyhle aplikace by měly být nekompromisní a nespoléhat se na to, že uživatel ví, co dělá (tady platí víc ještě než jinde, že tomu běžný uživatel nerozumí - nejde jen o to, aby to fungovalo, ale aby to fungovalo bezpečně, a v tom se i mistr snadno utne).
    pavlix avatar 1.12.2010 06:17 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Odpovídal jsem na otázku :).
    Chtěl jsem to použít na ssh v bezpečné LAN za NATem, jen pro sebe, takže to zrovna vůbec nevadilo.
    V takovém případě bych nehledal bezpečné řešení, ale jednoduché řešení. Co je zajímavé, tak nejjednodušší řešení je ale stejně použít SSH klíče (třeba bez passphrase). Vygenerováno je hned a na heslo už se to pak neptá.
    Jinak s tím souhlasím, tyhle aplikace by měly být nekompromisní a nespoléhat se na to, že uživatel ví, co dělá (tady platí víc ještě než jinde, že tomu běžný uživatel nerozumí - nejde jen o to, aby to fungovalo, ale aby to fungovalo bezpečně, a v tom se i mistr snadno utne).
    Tady je zajímavý úkaz, že když se člověk chová tak, aby si nekomplikoval život, tak výjimečně dostane určitou úroveň bezpečnosti v podstatě zadarmo.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    1.12.2010 21:00 imploder | skóre: 11
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    V takovém případě bych nehledal bezpečné řešení, ale jednoduché řešení. Co je zajímavé, tak nejjednodušší řešení je ale stejně použít SSH klíče (třeba bez passphrase). Vygenerováno je hned a na heslo už se to pak neptá.
    To jsem taky udělal, potom co jsem zjistil, že tím nebezpečným způsobem to nejde.
    pavlix avatar 1.12.2010 22:00 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Neinteraktivni zadani hesla ssh klientovi
    Takže se jim povedlo tě konvertovat :). Tomu říkám úspěch.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.