Криптиране на твърдия диск#

(Nitrokey FIDO2 - Linux)

VeraCrypt (преди това TrueCrypt)#

VeraCrypt е безплатен софтуер за криптиране на дискове с отворен код за Windows, macOS и GNU+Linux. Той е наследник на TrueCrypt и затова се препоръчва, въпреки че следващите инструкции трябва да се прилагат и за TrueCrypt.

Следвайте тези стъпки, за да използвате програмата с Nitrokey Storage 2 или Nitrokey Pro 2:

  1. Инсталирайте последната версия на OpenSC или изтеглете Библиотеката PKCS#11.

  2. Изберете библиотеката във VeraCrypt под Settings>Preferences>Security Token (местоположението зависи от системата, например /usr/lib/opensc).

  3. Генерирайте 64 байтов ключов файл чрез Tools>Keyfile Generator.

  4. Сега трябва да можете да импортирате генерирания ключов файл чрез Tools>Manage Security Token Keyfiles. Трябва да изберете първия слот ([0] User PIN). След това ключовият файл се съхранява в Nitrokey като „Private Data Object 1“ (PrivDO1).

  5. След това трябва безопасно да изтриете оригиналния ключов файл от компютъра си!

  6. Сега можете да използвате VeraCrypt с Nitrokey: Създайте контейнер, изберете ключовия файл на устройството като алтернатива на паролата.

Warning

Съображения за сигурност

Моля, обърнете внимание, че VeraCrypt не използва пълната сигурност, която Nitrokey (и смарт картите като цяло) предлагат. Вместо това тя съхранява ключов файл на Nitrokey, който теоретично може да бъде откраднат от компютърен вирус, след като потребителят въведе ПИН кода.

Забележка: Aloaha Crypt се основава на TrueCrypt/VeraCrypt, но без описаното ограничение на сигурността.

Шифроване на твърдия диск в GNU+Linux с LUKS/dm-crypt#

Ето отлични инструкции как да използвате Nitrokey, за да криптирате твърдия си диск под GNU+Linux с LUKS/dm-crypt. Други инструкции.

Purism е създал прост скрипт за добавяне на Nitrokey/LibremKey като начин за отключване на LUKS дялове (все още не е тестван от Nitrokey).

Този проект има за цел да улесни използването на LUKS с Nitrokey Pro или хранилище, базирано на Password Safe (все още не е тествано от Nitrokey). Описание как да го използвате в Gentoo можете да намерите тук.

За Arch Linux вижте initramfs-scencrypt.

Шифроване на хранилище в GNU+Linux с EncFS#

EncFS е лесна за използване програма за криптирани файлови системи, която се основава на FUSE. Можете да следвате тези стъпки, за да го използвате с много дълги пароли и Nitrokey Pro 2:

Иницииране#

  1. Създаване на ключов файл със случайни данни:

$ dd bs=64 count=1 if=/dev/urandom of=keyfile
  1. Криптирайте файла с ключа и използвайте идентификатора на потребителя на вашия Nitrokey

$ gpg --encrypt keyfile
  1. Премахване на ключовия файл в чист текст:

$ rm keyfile # you may want to use 'wipe' or 'shred' to securely delete the keyfile
  1. Създаване на точка за монтиране:

$ mkdir ~/.cryptdir ~/cryptdir
  1. Създаване на действителната папка за криптиране

$ gpg -d keyfile.gpg | encfs -S ~/.cryptdir ~/cryptdir
# There may appears an error message about missing permission of fusermount
# This message can be ignored
  1. Разглобете новата файлова система:

$ fusermount -u ~/cryptdir

Употреба#

  1. Монтирайте криптираната файлова система и въведете ПИН кода на Nitrokey:

$ gpg -d keyfile.gpg | encfs -S ~/.cryptdir ~/cryptdir
  1. След използване демонтирайте файловата система:

$ fusermount -u ~/cryptdir

Криптиране на хранилища в GNU+Linux с ECryptFS#

eCryptfs е файлово базирана файлова система за прозрачно криптиране за GNU+Linux, която може да се използва с Nitrokey чрез PKCS#11 драйвер.

Вижте тези инструкции:

  1. Импортиране на съществуващ ключ и сертификат

# Warning: This will delete existing keys on your Nitrokey!
$ pkcs15-init --delete-objects privkey,pubkey --id 3 --store-private-key user@example.com.p12 --format pkcs12 --auth-id 3 --verify-pin
  1. Създайте файла ~/.ecryptfsrc.pkcs11:

$ editor ~/.ecryptfsrc.pkcs11
  1. Въведете това съдържание:

$ pkcs11-log-level=5 pkcs11-provider1,name=name,library=/usr/lib/opensc-pkcs11.so,cert-private=true
$ openvpn --show-pkcs11-ids path to opensc-pkcs11 module
Certificate
    DN: /description=Iv4IQpLO02Mnix9i/CN=user@example.com/emailAddress=user@example.com
    Serial: 066E04
    Serialized id: ZeitControl/PKCS\x2315\x20emulated/000500000c7f/OpenPGP\x20card\x20\x28User\x20PIN\x29/03
  1. Копирайте сериализирания идентификатор за по-късна употреба:

$ ecryptfs-manager
# This will show list option. Choose option "Add public key to keyring"
# Choose pkcs11-helper
# Enter the serialized ID of step 3 to PKCS#11 ID.

Алтернативно опитайте ESOSI или следвайте тези стъпки, като използвате OpenSC и OpenVPN.

Източник на ръководството: https://www.nitrokey.com/documentation/applications#a:hard-disk-encryption