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

    Byla vydána nová verze 25.12.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Komunita

    Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.

    Ladislav Hagara | Komentářů: 0
    včera 03:33 | Bezpečnostní upozornění

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

    Ladislav Hagara | Komentářů: 0
    29.12. 23:11 | IT novinky

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    🇨🇽 | Komentářů: 1
    29.12. 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    🇨🇽 | Komentářů: 7
    29.12. 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    🇨🇽 | Komentářů: 1
    29.12. 15:33 | Zajímavý software

    Yazi je správce souborů běžící v terminálu. Napsán je v programovacím jazyce Rust. Podporuje asynchronní I/O operace. Vydán byl v nové verzi 25.12.29. Instalovat jej lze také ze Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    26.12. 18:44 | Komunita

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    26.12. 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 7
    Kdo vám letos nadělí dárek?
     (31%)
     (1%)
     (26%)
     (1%)
     (1%)
     (1%)
     (11%)
     (10%)
     (18%)
    Celkem 205 hlasů
     Komentářů: 21, poslední včera 18:58
    Rozcestník

    SSH kluce na usb flashdisku

    14.9.2006 11:07 | Přečteno: 1671× | poslední úprava: 14.9.2006 11:44

    Obcas sa potrebuje kazdy z nas pripojit na nejaky vzdialeny stroj pomocou ssh. Ja osobne na dva. Z prace domov, z prace k priatelke na server a z domu k priatelke na server.
    Kedze stroje su verejne dostupne a logy sa plnili hlaskami o zlom hesle, moja paranoia zacala gradovat. Pristupil som teda k ciastocnej eliminacii rizik, zakazal som password loginy, povolil login len na svoje konto a to len pomocou kluca. To so sebou prinieslo ale dalsiu nevyhodu, ktorou je skladovanie tohoto kluca. Doma s tym problem nemam, ale v praci?
    Tak som si kluc presunul na usb flash disk, ktory som mal vzdy zastrceny v kompe, ked som sa potreboval niekam pripojit. Samozrejme, ked som siel na obed, alebo dlhsie mimo kompu, kluc som braval so sebou. A to znamenalo neustale mounty, unmounty, linky, unlinky. Prestavalo ma to bavit, najma preto, ze to cele bolo okorenene tym, ze som stale musel zadavat heslo ( nie som samovrah, kluc je samozrejme zaheslovany ).

    To ma dozralo a zacal som skumat, ako na to. SSH pouzivam uz roky rokuce a par krat som pocul nieco o nejakom tajuplnom ssh agentovi, ale nikdy som sa nedokopal k tomu, aby som ho trosku nastudoval. Tak som sa do toho pustil.

    Prve, co ma napadlo, bolo ps ax | grep agent. A hu-ha, on uz bezal ( zistil som, ze od startu X, alebo KDE ). Vyskusal som spustit prikaz ssh-add /media/myusbkey1/keys/id_dsa_msk. Vypytal si heslo ku klucu, ktore obratom obdrzal. Nasledne spojenie ku mne domov prebehlo bez hesla. Zajasal som radostou. Huraaaaa, mam to! A tak sa moja diskoteka s usb klucom obmedzila na ranne pripojenie usb-cka, mount, ssh-add, heslo, umount. Ked som siel od kompu, stacilo ssh-add -x + nejake heslo. Samozrejme ako kazdy rypal, musel som to este nejak vylepsit. Co-to som uz pocul o udev, ved ked ten usb kluc strcim do kompu, rozsvieti sa mi pekna modra ikonka usb disku na paneli ( KDE ). A tak som si vymyslel dalsi scenar: rano pridem do prace, strcim tam usb kluc, agent si sam kluce naimportuje a ja mozem usb disk odpojit a cely den si uzivat bezhesloveho pristupu.

    Takze som zacal studovat udev a moznost spustania scriptov pri urcitych eventoch. S udev som sa potrapil, pretoze ani jeden navod, ktory som nasiel na automount usb klucov, u mna nezafungoval. Po case som zistil, ze som vlastnikom usb klucenky, ktora odmieta oznamit svoje SYSFS{serial}. Vygooglil som teda sposob, akym to obist a pokracoval som vo "vyvoji" mojho prveho udev-rule.
    KERNEL="sd*", SYSFS{vendor}="Corsair", SYSFS{model}="Flash*Voyager*", NAME{all_partitions}="myusbkey%n" RUN+="echo lama > /tmp/lama"
    
    Po prvotnom uspechu, ktory sa prejavil tym, ze po vlozeni usb klucenky sa mi v /dev/ objavili zariadenia mysubkey* a v /tmp sa objavil subor lama s rovnakym obsahom, som zacal premyslat, ako to vyuzit tak, aby na mna v Xoch vyskocilo okno a vypytalo si heslo. Najprv som spekuloval s pythonom a qt, kym som si poriadne neprecital manual k ssh-add a nenarazil v nom na zmienku o SSH_ASKPASS. A za par desiatok minut bol na svete tento script:
    #!/bin/sh
    
    # create new file in /etc/udev/rules.d with similar content ( RUN+= must stay!! )
    #KERNEL="sd*", SYSFS{vendor}="Corsair", SYSFS{model}="Flash*Voyager*", NAME{all_partitions}="myusbkey%n" RUN+="/home/msk/bin/import_ssh_key.sh signalize" GROUP="your_login"
    
    # on which device keys are
    KEYPARTITION="myusbkey1"
    
    # path to keys ( from media root, separated by ',' )
    KEYS="keys/id_dsa_key1,keys/id_dsa_key2"		# kluce mam na /media/myusbkey1/keys
    
    # time of sleep between checks
    SLEEPTIME=10
    
    # your login
    USERNAME="msk"
    
    # binary of ssh_askpass
    ASKPASS_BIN=/usr/bin/ssh-askpass-fullscreen
    
    
    
    PIPEFILE=/tmp/keys_pipe
    
    
    if [ "$1" == "signalize" ]; then
    	# send signal
    	echo "MYUSBKEY_INSERTED:$DEVNAME" > $PIPEFILE
    	# and change ownership, because we was called from udev as root
    	chown $USERNAME $PIPEFILE
    
    else
    
    	# create pipe signalization file
    	rm -f $PIPEFILE
    
    	# endless cycle
    	while true; do
    
    		if [ -e $PIPEFILE ]; then	
    
    			# get content of pipe file
    			MSG=$(cat $PIPEFILE)
    		
    			# test if contains message from udev
    			TST=$(echo $MSG | grep "MYUSBKEY_INSERTED:/dev/$KEYPARTITION" | wc -l)
    			if [ "$TST" != "0" ]; then
    	
    				# mount device
    				pmount $KEYPARTITION
    		
    				# for all configured keys
    				IFS=,
    				export SSH_ASKPASS=$ASKPASS_BIN
    				for key in $KEYS; do
    					KEYPATH=/media/$KEYPARTITION/$key
    					# check if key isn't already loaded
    					if [ "$(ssh-add -l | grep $KEYPATH | wc -l)" == "0" ]; then
    						# add key
    						ssh-add $KEYPATH < /dev/null
    					fi
    				done
    	
    				# umount device
    				pumount $KEYPARTITION
    	
    				# done
    				> $PIPEFILE
    	
    			else
    				# no signal from udev, sleep
    				sleep $SLEEPTIME
    			fi
    		fi
    	
    	done
    
    fi
    
    V /etc/udev/rules.d vznikol novy subor 99-myusbkey.rules s nasledovnym obsahom:
    KERNEL="sd*", SYSFS{vendor}="Corsair", SYSFS{model}="Flash*Voyager*", NAME{all_partitions}="myusbkey%n" RUN+="/home/msk/bin/import_ssh_key.sh signalize" GROUP="msk"
    
    Pokial netrpite podobnym problemom s usb klucenkou ako ja, pouzite SYSFS{manufacturer} a SYSFS{serial} ( namiesto vendor a model ) podla navodov dostupnych po celom Internete.

    V KDE autostart spravte link na import_ssh_key.sh tak, aby sa spustil po logine do KDE ( pripadne ineho wm ). Script bude bezat na pozadi a v pripade, ze sa vlozi usb klucenka, pokusi sa naimportovat kluce uvedene v $KEYS. Heslo si vypyta pomocou fulscreen dialogu ( aptitude install ssh-askpass-fullscreen ), ssh askpass je mozne zmenit v $ASKPASS_BIN.
    Povodne som script napisal tak, aby s udev komunikoval pomocou fifo ( a nemuselo by sa cyklicky sleepovat, predsa to zere trosicku vykonu, ale asi zanedbatelne ), ale dochadzalo k deadlockom ( pokial nahodou na druhej strane fifo nikto nepocuval ), na ktorych udev ostal vysiet. Takze som z fifo spravil obycajny textovy subor, na ktorom udev nemoze ostat vysiet a 10 shell instrukcii za 10 sekund je asi v pohode :o).

    Tak a teraz idem zasuvat a vysuvat, pomedzi to budem robit ssh-add -D a uzivat si svoje veldielo :o)
    Snad sa to niekomu hodi...

    Pokial niekto vie o nejakom systemovejsom rieseni, popiste ho v diskusii.        

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    14.9.2006 11:21 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: SSH kluce na usb flashdisku
    Všechno je to moc pěkné, také jsem si takhle hrál, než jsem zjistil, že s jiným jádrem může být všechno jinak. Ted už na to peču. Když potřebuji něco z nějakého usb zařízení, tak si preventivně nejdřív vypíšu
    cat /proc/partition
    a pak to raději mountuju ručně.
    msk avatar 14.9.2006 11:29 msk | skóre: 27 | blog: msk
    Rozbalit Rozbalit vše Re: SSH kluce na usb flashdisku
    No jo, ale ked ja to pouzivam na 2 strojoch s identickym jadrom a distribuciou, tak je to v pohode.
    msk avatar 14.9.2006 11:22 msk | skóre: 27 | blog: msk
    Rozbalit Rozbalit vše Re: SSH kluce na usb flashdisku
    Este som zabudol dodat: chcel by som nieco podobne spravit s openvpn-kovymi certifikatmi ( strcim usb, vypyta si heslo, nahodi vpn ). Tusite niekto, ci by sa na to dal nejak zneuzit ssh agent, pripadne kwallet?
    msk avatar 14.9.2006 11:45 msk | skóre: 27 | blog: msk
    Rozbalit Rozbalit vše Re: SSH kluce na usb flashdisku
    Ehm, trosku nepozornosti a uz je tu druha uprava scriptu :o). Pridal som test, ci existuje pipefile a odstranil -c zo ssh-add, pretoze necitam poriadne manualy :o)
    14.9.2006 12:03 Jan Kundrát (jkt) | skóre: 27 | blog: jkt | Praha - Bohnice
    Rozbalit Rozbalit vše Re: SSH kluce na usb flashdisku
    No, ja osobne pouzivam pam_ssh, kteryzto umi heslem zadanym pri loginu "odemknout" ssh klic, ktery je pravda stale ulozen v ~. Bohuzel jsem jeste nenasel pam_gpg a byl jsem liny si ho napsat sam :).
    14.9.2006 12:55 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: SSH kluce na usb flashdisku
    par veci k bashu

    1.)
    # path to keys ( from media root, separated by ',' )
    KEYS="keys/id_dsa_key1,keys/id_dsa_key2"
    oddeloval by som to medzerou, potom sa netreba srat s prenastavovanim IFS

    2.)
    # get content of pipe file
    MSG=$(cat $PIPEFILE)
    		
    # test if contains message from udev
    TST=$(echo $MSG | grep "MYUSBKEY_INSERTED:/dev/$KEYPARTITION" | wc -l)
    if [ "$TST" != "0" ]; then
    da sa to nahradit
    if grep -q "MYUSBKEY_INSERTED:/dev/$KEYPARTITION" "$PIPEFILE"; then
    
    3.)

    namiesto kazdych 10 sekund sa pokusat citat subor, sa da nieco ako
    tail -f "$PIPEFILE" |
    while true; do
        read msg
        dosomething "$msg"
    done
    
    vtedy sa uz ale neda grepovat priamo subor, ale musi sa cez to echo
    if echo "$msg" | grep -q "MYUSBKEY_INSERTED:/dev/$KEYPARTITION"; then
    
    If you hold a Unix shell up to your ear, you can you hear the C.
    msk avatar 14.9.2006 14:32 msk | skóre: 27 | blog: msk
    Rozbalit Rozbalit vše Re: SSH kluce na usb flashdisku
    Priznam sa, ze s tym tail ma to vobec nenapadlo. A pritom ho pouzivam denne :o). Dik za tip.
    10.5.2011 23:11 lukas
    Rozbalit Rozbalit vše Re: SSH kluce na usb flashdisku
    Zdravím, potreboval by som pomôcť. V ubuntu, na jednej pracovnej stanici si chccem zriešiť prostredníctvom vmware ubuntu server (inú možnosť zatiaľ nepoznám), potrebujem aby ubuntu komunikovalo s ubuntu serverom, pretože mám k dispozícii token ikey2032, na ktorom budem mať certifikát, kľúč atď, ďalej chcem vyriešiť prihlásenie do ubuntu prostredníctvom spomínaného tokenu a to tak, že párový kľúč slúžiaci k autentifikácii bude uložený na strane servera a po zastrčení tokenu do usb portu táto auatentifikácia prebehne a následne by som mal byť prihlásený v ubuntu. Vopred ďakujem, za každú pomoc.. :)

    Založit nové vláknoNahoru

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