GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat a používat SoftHSM na Ubuntu 16.04 LTS

Hardwarové/softwarové tokeny nebo hardwarové bezpečnostní moduly (HSM) se používají s různými aplikacemi k ukládání kryptografických klíčů (veřejných a soukromých) a certifikátů. Například NitroKey a Smartcard-HSM jsou pár HSM. Existují však také některé softwarové alternativy, jako je SoftHSM(v2), který je konkrétně vyvíjen jako součást projektu OpenDNSSEC..

SoftHSM je v podstatě implementace kryptografického úložiště přístupného přes rozhraní PKCS #11. Rozhraní PKCS#11 se používá pro komunikaci nebo přístup ke kryptografickým zařízením, jako jsou HSM (Hardware Security Modules) a čipové karty. Primárním účelem HSM zařízení je generovat kryptografické klíče a podepisovat/šifrovat informace, aniž by byl soukromý klíč odhalen ostatním.

Abychom vám poskytli rychlý přehled, nebylo možné pro uživatele OpenDNSSEC zakoupit nový hardwarový token pro ukládání kryptografických klíčů. Aby se tedy tomuto problému zabránilo, začala OpenDNSSEC poskytovat „SoftHSM“, softwarovou implementaci generického kryptografického zařízení s rozhraním PKCS#11. SoftHSM je navržen tak, aby splňoval požadavky OpenDNSSEC a také spolupracoval s dalšími kryptografickými produkty.

Závislosti

S projektem SoftHSM lze použít kryptografické knihovny Botan nebo OpenSSL. Pokud se Botan používá se SoftHSM, pak se ujistěte, že má podporu pro GNU MP (--with-gnump), něco, co zlepší výkon při operacích s veřejným klíčem.

Instalace

SoftHSM je k dispozici na webu OpenDNSSEC a lze jej stáhnout pomocí příkazu wget následujícím způsobem.

wget https://dist.opendnssec.org/source/softhsm-2.3.0.tar.gz

Nyní extrahujte balíček pomocí příkazu tar následujícím způsobem.

Po extrakci spusťte konfigurační skript pro kontrolu závislostí softwaru SoftHSM.

./configure 

Následující snímek ukazuje, že konfigurační skript zobrazuje chybu kvůli chybějícímu balíčku "OpenSSL header".

Takže to vyřešte, nainstalujte balíček "openssl-dev" způsobem zvýrazněným níže.

apt-get install openssl-dev

Výstup konfiguračního skriptu ukazuje, že všechny požadované balíčky jsou nyní k dispozici pro kompilaci nástroje.

Následující snímek ukazuje možnosti dostupné pro konfigurační skript nástroje SoftHSM.

Všechny možnosti nabízené konfiguračním skriptem jsou přístupné pomocí následujícího příkazu:

./configure --help 
--disable-ecc		Disable support for ECC (default enabled)
--disable-gost		Disable support for GOST (default enabled)
--disable-visibility	Disable hidden visibilty link mode [enabled]
--with-crypto-backend	Select crypto backend (openssl|botan)
--with-openssl=PATH	Specify prefix of path of OpenSSL
--with-botan=PATH	Specify prefix of path of Botan
--with-migrate		Build the migration tool. Used when migrating
			a SoftHSM v1 token database. Requires SQLite3
--with-objectstore-backend-db
			Build with database object store (SQLite3)
--with-sqlite3=PATH	Specify prefix of path of SQLite3
--disable-p11-kit	Disable p11-kit integration (default enabled)
--with-p11-kit=PATH	Specify install path of the p11-kit module, will
			override path given by pkg-config

Nyní spusťte příkaz make pro kompilaci zdrojového kódu SoftHSM.

make 

Dále spusťte příkaz "make install" a nainstalujte nástroj SoftHSM.

make install

Konfigurační soubor

Výchozí umístění konfiguračního souboru je /etc/softhsm2.conf který lze změnit nastavením SOFTHSM2_CONF proměnná prostředí.

export SOFTHSM2_CONF=Path_of_SoftHSM_Conf_file

Výchozí nastavení SoftHSM je zobrazeno na následujícím snímku.

Inicializovat softwarový token

Úplně prvním krokem k použití SoftHSM je použít jej inicializovat. K inicializaci zařízení můžeme použít rozhraní „softhsm2-util“ nebo „PKCS#11“. Následující snímek ukazuje inicializaci zařízení SoftHSM.

 softhsm2-util --init-token --slot 0 --label "Token-1" 

PIN bezpečnostního úředníka (SO) se používá k opětovné inicializaci tokenu a uživatelský PIN je předán aplikaci, aby mohla s tokenem interagovat (jako při použití s ​​Mozilla Firefox). Proto nastavte SO i uživatelský PIN. Jakmile je token inicializován, budou k novému neinicializovanému tokenu automaticky přidány další sloty. Inicializované tokeny budou znovu přiřazeny do jiného slotu na základě sériového čísla tokenu. Doporučuje se najít token a pracovat s ním vyhledáním štítku tokenu nebo sériového čísla v seznamu slotů/informacích o tokenu.

Další možnosti "softhsm2-util" jsou uvedeny níže.

Následující snímek ukazuje pozice tokenu.

Záloha

Všechny tokeny a jejich objekty jsou uloženy v umístění dané softhsm2.conf. Zálohování tak může být provedeno jako běžná kopie souboru.

SOFTHSM s OpenSC Utilities

V tomto tutoriálu se pro přístup k zařízení SoftHSM používají nástroje PKCS11 projektu OpenSC. Podrobnosti o instalaci a používání "OpenSC" jsou k dispozici na stránce howtoforge.

apt-get install opensc

 

Následující snímek ukazuje, že příkaz PKCS#11 je spuštěn na SoftHSM. Přepínač "-t" se používá k testování mechanismu SoftHSM.

pkcs11-tool --module /usr/local/lib/softhsm/libsofthsm2.so -l -t

Závěr

V tomto článku jsme diskutovali o tom, jak lze nainstalovat a inicializovat softwarový nástroj HSM SoftHSM na platformě Ubuntu. Lze jej nakonfigurovat pomocí standardu PKCS11 pro přístup k zařízením HSM/Smartcard.


Ubuntu
  1. Jak nainstalovat a používat iostat na Ubuntu 16.04 LTS

  2. Jak nainstalovat a používat Telnet na Ubuntu 20.04 LTS

  3. Jak nainstalovat Libreoffice 4.3 na Ubuntu 12.04 a 14.04 LTS

  1. Jak nainstalovat a používat Wine na Ubuntu 20.04

  2. Jak nainstalovat a používat FFmpeg na Ubuntu 18.04

  3. Jak nainstalovat Libreoffice 4.4 na Ubuntu 15.04 a 14.04 LTS

  1. Jak nainstalovat a používat Wine na Ubuntu 18.04

  2. Jak nainstalovat a používat Curl na Ubuntu 18.04

  3. Jak nainstalovat a používat Curl na Ubuntu 20.04