Виртуальный диск шифрованный LUKS

На волне паранои вот вам инструкшн как создать себе шифрованный виртуальный диск где можно хранить свои коды запуска к ядерным ракетам:

1) создаём файл нужного нам размера

fallocate -l 10G /path/to/file.img

или

dd if=/dev/zero of=/path/to/file.img bs=1G count=10 

или

pv /dev/zero | dd of=/path/to/file.img bs=1G count=10 

2) превращаем файл в супершифрованый файл

cryptsetup luksFormat /path/to/file.img

вводить YES надо БОЛЬШИМИ БУКВАМИ, и пароль придумывать надо СЛОЖНЫЙ;

3) подключаем наш файл для работы с ним

cryptsetup luksOpen /path/to/file.img somebodyname

вводим пароль придуманый на предыдущем шаге;

4) создаём ФС

mkfs.ext4 /dev/mapper/somebodyname

вместо ext4 можно взять любую другую какую душе угодно;

5) монтируем наш псевдораздел куда хотим

mount /dev/mapper/somebodyname /path/to/mount

6) работаем с ним, ложим туда файлы которые надо спрятать например

7) отмонтируем псевдораздел

umount /dev/mapper/somebodyname

или

umount /path/to/mount

8) закрываем файл для работы чтобы никто его больше не примонтировал

cryptsetup luksClose  somebodyname

Такой виртуальный диск можно таскать с собой на флешке и не бояться что данные из него кто-то дёрнет, такое возможно только терморектальным криптоанализом.

Apache: No space left on device: Couldn’t create accept lock

Если апач упал и вы видите в логах такую ошибку но место на диске и квоты говорят вам что всё нормально то проверьте есть ли семафоры.

ipcs -s

и если вы видите много срок с apach или httpd в зависимости от дистрибутива (при условии что апач не запущен) то можно отчистить список вот так:

for i in `ipcs -s | awk '/httpd/ {print $2}'`; do (ipcrm -s $i); done

(httpd в некоторых случаях заменять на apache так как будет в выхлопе первой команды)
и запускать сервис
Чтобы избежать такой проблемы в дальнейшем вносим следующие изменения и перезагружаемся:

kernel.msgmni = 1024
kernel.sem = 250 256000 32 1024

Инфа отсюда: https://major.io/2007/08/24/apache-no-space-left-on-device-couldnt-create-accept-lock/

Установка КриптоПРО на openSUSE

За статью спасибо https://t.me/JIeKapb_CJLupToM

Из распакованного каталога с пакетами запустить от root install скрипт:

sudo ./install.sh

После завершения установки из скрипта не выходя из каталога

sudo zypper in cprocsp-rdr-rutoken-64-4.0.0-4.x86_64.rpm ifd-rutokens-1.0.1-1.x86_64.rpm cprocsp-rdr-pcsc-64-4.0.0-4.x86_64.rpm lsb-cprocsp-pkcs11-64-4.0.0-4.x86_64.rpm

В случае, если необходимо использования Криптопро ЭЦП Browser Plugin

sudo zypper in cprocsp-rdr-gui-gtk-64-4.0.0-4.x86_64.rpm libpangox

Работает только в Firefox ESR, т. к. нужна поддержка NPAPI, в ESR будет поддерживаться до конца 2018 года, потом выпилят вообще.

Просмотр лицензии

/opt/cprocsp/sbin/amd64/cpconfig -license -view

Установка лицензии

sudo /opt/cprocsp/sbin/amd64/cpconfig -license -set СерийныйНомер

Просмотр корневых сертификатов

/opt/cprocsp/bin/amd64/certmgr -list -store root

Установка корневых сертификатов

sudo /opt/cprocsp/bin/amd64/certmgr -inst -store root -file /путь/до/сертификата

Создаем хранилище ключей на HDD

sudo /opt/cprocsp/sbin/amd64/cpconfig -hardware reader -add HDIMAGE store

Узнаем какие контейнеры у нас есть (разумеется флешка или токен уже торчит в USB)

/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifycontext -fqcn

Должны получить нечто подобное

CSP (Type:80) v4.0.9014 KC1 Release Ver:4.0.9842 OS:Linux CPU:AMD64 FastCode:READY:AVX. 
AcquireContext: OK. HCRYPTPROV: 9224835 
\\.\FLASH\УИД контейнера или его имя
OK. 
Total: SYS: 0,020 sec USR: 0,120 sec UTC: 0,190 sec 
[ErrorCode: 0x00000000]

Копируем контейнер на HDD, делается это от того пользователя под которым будут подписываться документы, если выполнить эту команду от root, то контейнер будет работать только по root. Контейнеры хранятся в папке /var/opt/cprocsp/keys/имя пользователя

/opt/cprocsp/bin/amd64/csptest -keycopy -contsrc '\\.\FLASH\УИДконтейнераИлиЕгоИмя' -contdest '\\.\HDIMAGE\Vasyan'

В папке /var/opt/cprocsp/keys/username должен появиться каталог с ключами Vasyan.000

Проверяем видит ли его КриптоПРО

/opt/cprocsp/bin/amd64/csptest -keyset -enum_cont -verifycontext -fqcn
CSP (Type:80) v4.0.9014 KC1 Release Ver:4.0.9842 OS:Linux CPU:AMD64 FastCode:READY:AVX. 
AcquireContext: OK. HCRYPTPROV: 9224835 
\\.\FLASH\УИДконтейнераИлиЕгоИмя
\\.\HDIMAGE\Vasyan #вот он
OK. 
Total: SYS: 0,020 sec USR: 0,120 sec UTC: 0,190 sec 
[ErrorCode: 0x00000000]

Ассоциация сертификата с контейнером

sudo /opt/cprocsp/bin/amd64/certmgr -inst -file /путь/до/сертификата/сертификат.cer -cont '\\.\HDIMAGE\Vasyan'

Список установленных сертификатов

/opt/cprocsp/bin/amd64/certmgr --list

Смотрим строки

PrivateKey Link     : Yes #если Yes то можно подписыват, No - связи нет, и использовать такой контейнер для подписи не удастся.

Container           : HDIMAGE\\Vasyan.000\A123 #Как и задуманно, сертификат пренадлежит этому контейнеру. 

Discord лечим black screen в OpenSUSE 42.3

sudo zypper addrepo http://download.opensuse.org/repositories/devel:/tools:/compiler/openSUSE_Leap_42.3/ devel:tools:compiler
sudo zypper in libc++1

Filesystem Hierarchy Standard 2.3

http://www.pathname.com/fhs/pub/fhs-2.3.pdf