it:linux:elektronicky-podpis

Toto je starší verze dokumentu!


Elektronický podpis

Elektronický podpis je způsob, jak bezpečně a ověřitelně podepisovat elektronické dokumenty. Umožňuje nahradit ruční podpis v digitálním světě a zajišťuje autenticitu a neměnnost dokumentu.

Bohužel toto řešení nelze použít pro komunikaci s úřady. Nicméně pro podepisování dokumentů mezi firmami či jednotlivci mi přijde použitelné – je zdarma a jednoduché na použití. Postup je jednoduchý: nahraji dokument, pomocí bankovní identity jej podepíšu a následně podepsaný soubor stáhnu.

Podepisování pomocí Bank ID zajišťuje tato služba: https://bankid.cz/lide/podepisujte/

Podrobnější informace najdete zde: https://www.lupa.cz/clanky/bankid-sign-elektronicky-podepsat-pomoci-bankovni-identity-muzete-uz-i-svuj-vlastni-dokument/

To je podpis, který už poslouží pro komunikaci se státní správou. Řešil jsem ho pro firmu. Budu jej používat v Linuxu a inspiraci čerpám z tohoto článku: https://www.root.cz/clanky/elektronicky-podpis-a-linux-v-roce-2021/

Soupis kroků pro získání certifikátu přes PostSignum:

Postupoval jsem podle informací zde: https://www.postsignum.cz/pravnicke_osoby_instituce_firmy_organizace.html

Vyplnil jsem formulář, odeslal ho datovou schránkou a nyní čekám na zpracování, abych mohl pokračovat dalšími kroky.

V dalším kroku jsem podepsal dokument seznam žadatelů. Tam uvádím konkrétní lidi, kteří budou na certifikátu. Opět jsem poslal datovou schránkou a další pracovní den mi přišlo podepsané.

Na stránkách mají matoucí informaci, že když chci na certifikát, tak musím přinést na pobočku pošty (Czech POINT) podepsaný dokument Seznam žadatelů a Smlouvu o poskytování certifikačních služeb. Jenže tím, že jsem poslal oba dokumenty datovou schránkou a mám z jejich strany elektronicky podepsané, už nemusím nic takového na poštu nosit.

Pro jistotu jsem na poštu volal a potvrzovali mi, že dokumenty už nepotřebuji. Takže poslední krok je vygenerování ID žádosti o certifikát a přijít na Czech POINT.

Protože jsem v Linuxu, tak mi nejde žádost vygenerovat z webových stránek. Musím vygenerovat certifikát pomocí OpenSSL, pak nahrát a když bude všechno v pořádku, přidělí mi ID žádosti a mohu jít na poštu.

Tady je postup pro vygenerování certifikátu pomocí OpenSSL:

Generování žádosti o certifikát:

Přesunul jsem se do adresáře, kde budu chtít žádost o certifikát uložit.

Nejprve jsem si vytvořil soubor openssl.cnf s tímto nastavením:

[ req ]
default_bits       = 2048
prompt             = no
distinguished_name = dn
req_extensions     = req_ext

[ dn ]
C                    = CZ
O                    = NÁZEV SPOLEČNOSTI ZE ŽÁDOSTI
OU		     = ČÍSLO ZAMĚSTNANCE ZE ŽÁDOSTI
CN                   = Petr Nosek
emailAddress         = EMAILOVÁ ADRESA ZE ŽÁDOSTI

[ req_ext ]
# Pokud chcete, aby se e‑mail zkopíroval i do SAN:
subjectAltName = email:copy

Samozřejmě jsem doplnil název společnosti, číslo zaměstnance a e-mailovou adresu dle žádosti. Podle žádosti má být nastaveno číslo zaměstnance na OU3, ale vypadá to, že by mohlo stačit OU na číslo zaměstnance. Uvidím, jestli se s tím poperou.

Pak jsem spustil vygenerování certifikátu tímto způsobem:

openssl req -out request.req -new -newkey rsa:2048 -keyout privatekey.key -config openssl.conf
  • request.req: soubor vygenerované žádosti o certifikát (název si můžete zvolit libovolně)
  • rsa:2048: bitová délka klíče (lze zvolit 2048 nebo 4096)
  • privatekey.key: záloha soukromého klíče (název je opět libovolný)

Po zadání příkazu budete vyzváni k zadání hesla k soukromému klíči a následně k jeho potvrzení.

V dalším kroku jsem nahrál soubor request.req pomocí tohoto webového formuláře: https://www.postsignum.cz/ulozeni_zadosti_o_certifikat.html

A teď mohu jít na poštu, aby mě ověřili a certifikát mi potvrdili.

Pro kontrolu informací obsažených v certifikátu mohu spustit tento příkaz:

openssl req -in request.req -noout -text

Spárování klíčů:

Nejprve je nutné stáhnout certifikát ve formátu PEM. Certifikát doporučuji uložit do stejného adresáře, kde byla generována žádost o certifikát.

Spusťte Terminál, přesuňte se do adresáře kde byla generována žádost a kde je uložen certifikát ve formátu PEM. Ve vybraném adresáři spusťte tento příkaz:

openssl pkcs12 -export -out certifikat.p12 -inkey privatekey.key -in certifikat.pem
  • certifikat.p12: název výstupního souboru (libovolný)
  • privatekey.key: záloha soukromého klíče (název podle toho, jak jste jej pojmenovali)
  • certifikat.pem: stažený certifikát ve formátu PEM

Po zadání příkazu budete vyzváni k zadání hesla k soukromému klíči. Následně zadáte heslo k vytvořenému záložnímu certifikátu (soubor .p12). Heslo bude nutné potvrdit.

Čerpám z jejich oficiálního návodu: https://www.postsignum.cz/files/navody/openssl/

Certifikát pak nahraji zde: https://www.postsignum.cz/ulozeni_zadosti_o_certifikat.html

  • it/linux/elektronicky-podpis.1753388217.txt.gz
  • Poslední úprava: 2025/07/24 20:16
  • autor: Petr Nosek