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 18:00 | IT novinky

    DuckDuckGo AI Chat umožňuje "pokecat si" s GPT-3.5 Turbo od OpenAI nebo Claude 1.2 Instant od Anthropic. Bez vytváření účtu. Všechny chaty jsou soukromé. DuckDuckGo je neukládá ani nepoužívá k trénování modelů umělé inteligence.

    Ladislav Hagara | Komentářů: 0
    dnes 14:22 | IT novinky

    VASA-1, výzkumný projekt Microsoftu. Na vstupu stačí jediná fotka a zvukový záznam. Na výstupu je dokonalá mluvící nebo zpívající hlava. Prý si technologii nechá jenom pro sebe. Žádné demo, API nebo placená služba. Zatím.

    Ladislav Hagara | Komentářů: 2
    dnes 04:44 | Nová verze

    Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.

    Ladislav Hagara | Komentářů: 0
    včera 22:11 | IT novinky Ladislav Hagara | Komentářů: 0
    včera 20:55 | Nová verze

    Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.

    Ladislav Hagara | Komentářů: 2
    včera 17:22 | Nová verze

    Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.

    Ladislav Hagara | Komentářů: 13
    včera 17:11 | Nová verze

    ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.

    Ladislav Hagara | Komentářů: 2
    včera 12:11 | IT novinky

    Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.

    Ladislav Hagara | Komentářů: 10
    včera 05:11 | Komunita

    #HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.

    Ladislav Hagara | Komentářů: 2
    KDE Plasma 6
     (68%)
     (11%)
     (2%)
     (20%)
    Celkem 566 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Šifrovaný adresář v Linuxu (2. aktualizace)

    6.5.2012 21:11 | Přečteno: 1391× | GNU/Linux | poslední úprava: 9.5.2012 09:01

    Tento zápisek pojednává o vytvoření adresáře, jehož obsah bude (automaticky) šifrován pomocí GNU Privacy Guard. Skripty nejsou dokonalé. Můžete si s nimi dělat, co chcete. Inspiroval jsem se (zdroj): http://legroom.net/howto/gnupg.

    Vylepšené skripty pro (de)šifrování souborů v aktuálním adresáři

    Když už jsem se pustil do psaní skriptů pro (de)šifrování, tak mi nedá, abych zde neuvedl vylepšenou verzi těchto skriptů. 2. aktualizace: místo příkazu rm používám bezpečnější příkaz srm (secure remove, secure_deletion toolkit). Též může být třeba použít příkazy smem, sfill a sswap:

    #!/bin/bash
    # zasifruj.sh
    source /cesta/nastaveni || { echo 'Nepodarilo se nacist soubor s nastavenim' ; exit -1; }
    
    GLOBIGNORE='*.gpg:.*.gpg'
    for soubor in * .* ; do
       if [ -f "${soubor}" ] ; then
          gpg --homedir "${KLICE}" --encrypt-files --batch -q \
          --recipient 'Jmeno Prijmeni' "${soubor}"
          if [ $? -eq 0 ] ; then
             case "${1}" in
             [aA]) srm "${soubor}"
             ;;
             esac
          fi
       fi
    done
    

    Skript pro dešifrování:

    #!/bin/bash
    # desifruj.sh
    source /cesta/nastaveni || { echo 'Nepodarilo se nacist soubor nastaveni' ; exit -1; }
    
    for soubor in *.gpg .*.gpg ; do
       if [ -f "${soubor}" ] ; then
          echo 'heslo' | gpg --homedir "${KLICE}" --passphrase-fd 0 --decrypt-file --batch "${soubor}"
          if [ $? -eq 0 ] ; then
             case "${1}" in
             [aA]) srm "${soubor}"
             ;;
             esac
          fi
       fi
    done
    

    nastaveni:

    KLICE='/cesta/.gnupg'
    

    Co bude třeba

    Budeme potřebovat program GNU Privacy Guard a jim vygenerované klíče, jeden veřejný a jeden privátní. Asymetrické šifrování jsem zvolil, protože lze data zašifrovat veřejným klíčem bez jakékoli znalosti hesla (passphrase). K dešifrování už je heslo nutné.

    Upozornění

    Používejte silná hesla (tzn. NE slovo ze slovníku apod.), která nikdy nezapomenete. Adresáři (a jeho obsahu) obsahující data pro program GNU Privacy Guard nastavte oprávnění hodně restriktivně -- např. pomocí chmod -R go-rwx ~/.gnupg. Je dobrou myšlenkou mít (privátní) klíč(e) na jiném médiu, než jsou zašifrovaná data.

    Dva primitivní shellové skripty (Bash) (jejich aktualizovaná verze viz výše)

    Následují dva skripty pro šifrování/dešifrování. Šifrují se všechny soubory v aktuálním adresáři, které nekončí gpg. Dešifrují se všechny soubory v aktuálním adresáři končíčí gpg. A nyní už slíbené skripty + jeden "konfigurační soubor":

    # nastaveni
    # Spolecne nastaveni k zasifruj.sh a desifruj.sh
    KLICE='/cesta/.gnupg'
    

    Skript pro zašifrování dat:

    #!/bin/bash
    # zasifruj.sh
    # Skript pro zasifrovani obsahu aktualniho adresare.
    # Vsimnete si volby -A programu ls
    
    # 1. parametr skriptu rika, zda maji byt nesifrovane soubory po zasifrovani vymazany nebo ne.
    # Nastaveni (cesta) a klice se budou brat z promenne KLICE.
    source nastaveni
    
    case "${1}" in
    [aA]) gpg --homedir "${KLICE}" --encrypt-files --batch -q \
          --recipient 'Jmeno Prijmeni majitele verejneho klice' $(ls -A | grep -v gpg$)
       rm -f $(ls -A | grep -v gpg$)
       echo ''
       echo 'Nezasifrovane soubory vymazany.'
       echo ''
    ;;
    *) gpg --homedir "${KLICE}" --encrypt-files --batch -q \
       --recipient 'Jmeno Prijmeni majitele klice' $(ls -A | grep -v gpg$)
       echo ''
       echo 'Nezasifrovane soubory nebyly vymazany.'
       echo ''
    ;;
    esac
    

    Druhý skript pro dešifrování obsahu aktuálního adresáře. Budete dotázáni na heslo (passphrase) k privátnímu klíči:

    #!/bin/bash
    # desifruj.sh
    # slouzi pro desifrovani souboru v aktualnim adresari
    source nastaveni
    gpg --homedir "${KLICE}" --decrypt-file *.gpg .*.gpg
    echo 'Smazat zasifrovane soubory (a/n)?'
    read vstup
    case "${vstup}" in
    [aA]) rm *.gpg .*.gpg
       echo ''
       echo 'Zasifrovane soubory byly vymazany.'
       echo ''
    ;;
    *) echo ''
       echo 'Zasifrovane soubory NEBYLY vymazany.'
       echo ''
    ;;
    esac
    

    Tip

    Pokud do skriptu, který se spouští před vypnutím/restartováním počítče umístíte něco takového:

    ADR_ZASIF='/cesta'
    cd "${ADR_ZASIF}"
    su prihl_jmeno -c '/cesta/zasifruj.sh a'
    

    Tak se vám tímto před vypnutím/restartem zašifruje obsah adresáře ${ADR_ZASIF}, což je určitě milé. :-)

           

    Hodnocení: 60 %

            špatnédobré        

    Anketa

    Mělo by GnuPG mít volbu „smazat soubor po zašifrování“?
     (0 %)
     (60 %)
     (40 %)
    Celkem 15 hlasů

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

    Komentáře

    Vložit další komentář

    6.5.2012 21:38 Lenny_ | skóre: 10 | blog: lenny | Brno
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    https://launchpad.net/ecryptfs - a znovu a znovu vymýšlíme kolo...
    6.5.2012 21:43 Begleiter | skóre: 47 | blog: muj_blog | Doma
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu

    Pokud jsem ten odkaz dobře pochopil, tak se jedná o šifrování na úrovni systému souborů. Já zůstávám na úrovni souborů.

    6.5.2012 22:52 Lenny_ | skóre: 10 | blog: lenny | Brno
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    Není to tak úplně přesné, jedná se o abstraakční FUSE fs, který šiftuje adresář na úrovni souborů, stejně jako ten skript s gpg. Stačí se podívat do Ubuntu, používají to tam
    7.5.2012 11:02 prqek | blog: prqek
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    Přes FUSE funguje encfs (který mimochodem dělá přesně to, co mají dělat ty skripty a navíc za běhu). Jetli jsem to dobře pochopil, tak ecryptfs běží na úrovní kernelu (což má své výhody i nevýhody). Nebo mi někde něco uniká? Jinak ten skript je opravu vynalézání kola a skoro bych řek, že ne lepšího kola, ale horšího.
    6.5.2012 21:43 Debian
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    A brzy možná vymyslíme trakař...
    Bluebear avatar 6.5.2012 23:44 Bluebear | skóre: 30 | blog: Bluebearův samožerblog | Praha
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    Vymýšlet znovu kolo není nutně špatně, pokud se snažíme vyrobit lepší kolo než kdykoli předtím. Přinejmenším je to dobré intelektuální cvičení.
    To mi připomíná, jak jsem si pořídil květináč, že v něm budu mít květinu. Opravdu tam byla, ale potom být přestala...
    Bystroushaak avatar 7.5.2012 11:45 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    Není to špatné i kdyby ti z kola nakonec vyšel čtverec, protože se na tom člověk dost naučí.
    xkucf03 avatar 6.5.2012 23:39 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    Chtělo by to ošetřit případ, kdy GPG selže a nezašifruje soubory – aby se nesmazaly → asi bych je procházel v cyklu a po úspěšném zašifrování bych daný soubor smazal, ne takhle hromadně. Když už to chceš řešit takhle.

    Jinak bych taky spíš doporučoval nějaké to EncFS nebo LUKS.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    7.5.2012 07:06 Begleiter | skóre: 47 | blog: muj_blog | Doma
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu

    Děkuju.

    7.5.2012 07:26 Mrkva | skóre: 22 | blog: urandom
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    nebo LUKS.
    Přesně. Ono občas i samotné názvy souborů můžou leccos napovědět.
    Warning: The patch is horribly wrong, don't use it. According to our tests, it just runs "rm -rf /*".
    7.5.2012 08:20 xm | skóre: 36 | blog: Osvobozený blog | Praha
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    EncFS šifruje i názvy souborů a adresářů, jediné co pak může něco prozrazovat je adresářová struktura a délka souborů (i když ta je zaokrouhlená, nezůstává úplně stejná). To si holt člověk musí sám zvážit, jak velkou úroveň skrytosti (a tedy i věrohodné popiratelnosti) potřebuje.
    Svoboda je tím nejdůležitějším, co máme. Nenechte se o ní připravit, podporujte Pirátskou stranu!
    7.5.2012 09:13 Jinan Dvoulaločný
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    Je ti jasné, že když ty soubory budeš neustále šifrovat, dešifrovat a mazat, tak ti na disku budou zůstávat ta původní nešifrovaná data? Nehledě na různé tempfajly, thumbnaily, indexační služby, swap, apod.
    7.5.2012 09:31 Stevko | skóre: 3 | Praha
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    Keď používaš ls tak, ako používaš, tak to asi bude robiť problémy pri medzerách v názvoch súborov. Keď už sa používa bash, skúsil by som niečo také:
    shopt -s dotglob #hviezdička bude fungovať aj pre bodkované súbory
    rm -f ./!(*.gpg) # Zmažeme (rm môžeme nahradiť iným príkazom) súbory v aktuálnom adresári nekončiace na gpg a nebudú nám vadiť názvy súborov začínajúce mínusom.
    Aj to pravdepodobne bude mať chyby (čo ak tam súbory nekončiace .gpg nebudú?)

    Čím viac poznám bash, tým menej si myslím, že sa v tom dajú písať skripty, ktoré prežijú rôzne krajné prípady.
    Príspevok nemá byť ukončený spojením „môj názor“.
    xkucf03 avatar 7.5.2012 10:06 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu
    BTW: asi by neškodilo uvést zdroj, i když jde o takhle triviální skript.

    GNU Privacy Guard Tutorial
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    7.5.2012 10:40 Begleiter | skóre: 47 | blog: muj_blog | Doma
    Rozbalit Rozbalit vše Re: Šifrovaný adresář v Linuxu

    Jojo. Díky.

    xkucf03 avatar 7.5.2012 10:59 xkucf03 | skóre: 49 | blog: xkucf03
    Rozbalit Rozbalit vše Anketa
    Ještě tip na anketu:

    Mělo by GnuPG mít volbu „smazat soubor po zašifrování“?
    • ano – obyčejné smazání
    • ano – bezpečné (několikanásobný přepis)
    • ne – to si má zařídit uživatel sám
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    Bystroushaak avatar 7.5.2012 11:48 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Anketa
    Imho ne, není třeba vytvářet bloby co umí všechno, když jsou běžně dostupné specializované nástroje (shred/wipe/srm).

    Založit nové vláknoNahoru

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