Настройка ПК для работы

Это руководство предназначено для тех из нас, кто заботится о безопасности себя и своих партнеров. Если вы сделаете все, что описано ниже, вы значительно уменьшите шансы быть пойманным.

Во-первых, нам нужно установить свободный и безопасный Linux в качестве хост ос. Когда-то я думал, что в полной безопасности включив VPN на Windows. К сожалению, это совсем не так, проблема не только в IP, даже не в отпечатке браузера. Проблема в ОС и приложениях, доверять проприетарному коду невозможно, его единственная задача - заработать на вас деньги. Я советую вам забыть о Windows и MacOS. Например, общеизвестный факт, что Windows синхронизирует ваш ПК с akamai при первой загрузке, насколько я знаю, в новых версиях не запускается ПК без учетной записи и доступа в Интернет. Pазве это ваше устройство?
Подойдет любая ОС с режимом Live, но в этом руководстве я буду использовать Kicksecure. Почему Kicksecure? Это система с открытым исходным кодом, много полезных функций и ничего лишнего, все стабильно и эффективно. В виртуальных машинах можно безопасно установить любое необходимое вам по, углубившись в Linux, вы поймете, что есть все и даже больше, удобнее, безопаснее, бесплатно. Основные функции безопасной хост-ОС:
- очистка оперативной памяти
- режим «live» (все данные хранятся в оперативной памяти)
- минимум софта
Установка Kicksecure.
Старайтесь всегда устанавливать последнюю стабильную версию. Здесь вы найдете официальное руководство с актуальной информацией - https://www.kicksecure.com/wiki/ISO
Откройте BIOS и выберите флеш-накопитель первым в очереди запуска.
Выберите LIVE Mode | SYSMAINT Session | system maintenance, install

Установите систему:

Полностью удалить данные с выбранного диска и зашифровать устройство. Здесь можно выбрать метод шифрования - https://www.kicksecure.com/wiki/Full_Disk_Encryption#TPM_Encryption_Comparison_Table

Установка завершена, выключите ПК

- Отсоедините флешку от компьютера.
- Перейдите в
PERSISTENT Mode | SYSMAINT Session... - Обновите пакеты.
- Протестируйте режим LIVE (после перезапуска новые данные с диска будут удалены). Не загружайте ничего в хост-систему! Она предназначена только для виртуальных машин и расшифровки дисков, а также, по желанию, для VPN с открытым исходным кодом (Mullvad, V2Ray).
Установка QEMU/KVM с virt-manager (FOSS)
Это де-факто стандарт виртуализации в Linux. Наиболее удобный в использовании, стабильный и высокопроизводительный вариант.

Установите программы для виртуализации:
sudo apt install libvirt0 virt-manager dnsmasq bridge-utils
sudo systemctl enable --now libvirtd
sudo systemctl disable --now dnsmasq
sudo usermod -a -G libvirt user
sudo usermod -a -G kvm userДалее мы воспользуемся nano для быстрой настройки через терминал. Чтобы сохранить, просто нажмите Ctrl+O, а чтобы закрыть файл - Ctrl+X.
sudo nano /etc/libvirt/libvirtd.conf
unix_sock_group = "libvirt"
unix_sock_rw_perms = "0770"sudo nano /etc/libvirt/qemu.conf
group = "libvirt"
user = "user"Применить изменения:
systemctl restart libvirtd.serviceСоздайте папки для виртуальных машин и образов. Предоставьте libvirt права доступа к этим папкам.
mkdir ISOs
mkdir VMs
sudo chmod 770 -R VMs
sudo chmod 770 -R ISOs
sudo chown user:libvirt -R VMs
sudo chown user:libvirt -R ISOsТеперь осталось только создать виртуальные машины; как это сделать, я расскажу позже.
Настройка аварийной перезагрузки
В экстренной ситуации времени на раздумья будет мало. Мы сделаем так, чтобы стереть следы и зашифровать устройство одним нажатием кнопки было как можно проще.
nano reboot.sh
#!/bin/bash
systemctl reboot -iНастройка горячей клавиши в labwc:
mkdir ~/.config/labwc
nano ~/.config/labwc/rc.xmlСодержимое файла rc.xml:
<?xml version="1.0"?>
<labwc_config>
<keyboard>
<default />
<keybind key="Control_R" onRelease="no" allowWhenLocked="yes"><action name="Execute" command="/home/user/reboot.sh" /> </keybind>
</keyboard>
</labwc_config>Перезапустите labwc, чтобы применить настройки
labwc -rНажмите правую клавишу Ctrl, чтобы проверить.
Настройка чувствительной системы
Это будет система для работы. Примите все меры, чтобы её существование можно было правдоподобно отрицать. Для этого вам понадобится высококачественный жесткий диск объёмом не менее 500 ГБ. Требуется именно жесткий диск, поскольку другие накопители нестабильны и могут быть использованы для обнаружения скрытого тома. Поэтому только HDD CMR со скоростью вращения 7200 об/мин являются достаточно надёжными и быстрыми.
Скачайте исходный код VeraCrypt или zuluCrypt. Установите библиотеки, необходимые для компиляции https://veracrypt.jp/en/CompilingGuidelineLinux.html https://github.com/mhogomchungu/zuluCrypt/blob/master/BUILD_INSTRUCTIONS
Подготовьте всё необходимое для сборки, ознакомьтесь с инструкциями и изучите исходный код. Вы можете собрать приложение, но не запускайте приложение для шифрования, чтобы ничего не записывалось в журнал.
Все последующие действия необходимо выполнять исключительно в режиме Live!!!
Отформатируйте внешний диск с помощью GParted, чтобы на нём не осталось разделов
Запустите приложение для шифрования. Начните создавать тома.
Далее:
- «Outer» (приманка) - формат FAT
- выберите диск /dev/sdX (не тот, на котором ОС, а именно внешний)
- введите пароль для ложного тома и зашифруйте его
- выберите размер скрытого тома (половина диска)
- Введите пароль для скрытого тома (формат ext4) - и все готово.
Откройте том-приманку выбрав - Protect hidden volume against damage caused by writing to outer volume
Загрузите подходящие файлы (размером менее 4 ГБ), которые стоит зашифровать
Ни в коем случае не записывайте нигде пароль к скрытому тому
По завершении процесса откройте скрытый том Загрузите в него архив Whonix для KVM - https://www.whonix.org/wiki/KVM#Download_Whonix
Откройте в терминале папку, в которую был загружен архив Просмотрите содержимое
ls -lПроверьте путь, по которому смонтирован диск; он будет указан в следующих шагах - <mount_path>
pwdРаспаковка архива:
tar -xvf Whonix*.libvirt.xz Подтвердите соглашение Whonix:
touch WHONIX_BINARY_LICENSE_AGREEMENT_acceptedДля удобства рекомендуется переименовывать файлы:
mv Whonix-Gateway-Xfce-17.2.8.5.xml Whonix-Gateway.xml
mv Whonix-Workstation-Xfce-17.2.8.5.xml Whonix-Workstation.xml
mv Whonix_external_network-17.2.8.5.xml Whonix_external_network.xml
mv Whonix_internal_network-17.2.8.5.xml Whonix_internal_network.xml
mv Whonix-Gateway-Xfce-17.2.8.5.Intel_AMD64.qcow2 Whonix-Gateway.qcow2
mv Whonix-Workstation-Xfce-17.2.8.5.Intel_AMD64.qcow2 Whonix-Workstation.qcow2Проверьте путь к файлу виртуальной машины и убедитесь, что у Whonix-Gateway выделено 1 ГБ оперативной памяти
nano Whonix-Gateway.xml
cat Whonix-Gateway.xml
[...]
<memory dumpCore="off" unit="GiB">1 </memory> <currentMemory unit="GiB">1 </currentMemory>
[...] <disk type="file" device="disk"> <driver name="qemu" type="qcow2"/> <source file="<mount_path>/Whonix-Gateway.qcow2"/> <target dev="vda" bus="virtio"/> <address type="pci" domain="0x0000" bus="0x00" slot="0x06" function="0x0"/> </disk>
[...]Добавьте ресурсы для Whonix-Workstation, как описано здесь: https://www.whonix.org/wiki/KVM#Adding_vCPUs
Мы также проверим путь к файлу. 8 ГБ оперативной памяти и 4 виртуальных процессора должно хватить.
nano Whonix-Workstation.xml
cat Whonix-Workstation.xml
[...]
<memory dumpCore="off" unit="GiB">8 </memory> <currentMemory unit="GiB">8 </currentMemory>
[...] <vcpu placement="static">4 </vcpu>
[...] <disk type="file" device="disk"> <driver name="qemu" type="qcow2"/> <source file="<mount_path>/Whonix-Gateway.qcow2"/> <target dev="vda" bus="virtio"/> <address type="pci" domain="0x0000" bus="0x00" slot="0x06" function="0x0"/> </disk>
[...]Давайте создадим файл script.sh, чтобы легко запускать и останавливать виртуальные машины
#!/bin/bash
if [ $(virsh -c qemu:///system list --all | grep Whonix | wc -l) -ne 0 ];
then
virsh -c qemu:///system destroy Whonix-Gateway
virsh -c qemu:///system destroy Whonix-Workstation
virsh -c qemu:///system undefine Whonix-Gateway
virsh -c qemu:///system undefine Whonix-Workstation
virsh -c qemu:///system net-destroy Whonix-External
virsh -c qemu:///system net-destroy Whonix-Internal
virsh -c qemu:///system net-undefine Whonix-External
virsh -c qemu:///system net-undefine Whonix-Internal
else
virsh -c qemu:///system define <mount_path>/Whonix-Gateway.xml
virsh -c qemu:///system define <mount_path>/Whonix-Workstation.xml
virsh -c qemu:///system net-define <mount_path>/Whonix_external_network.xml
virsh -c qemu:///system net-define <mount_path>/Whonix_internal_network.xml
virsh -c qemu:///system net-autostart Whonix-External
virsh -c qemu:///system net-start Whonix-External
virsh -c qemu:///system net-autostart Whonix-Internal
virsh -c qemu:///system net-start Whonix-Internal
exit $?
fiЗапустите скрипт bash script.sh, чтобы проверить, всё ли работает. Позже, чтобы всё отключить, просто запустите скрипт ещё раз.
Network Whonix-External defined from <mount_path>/Whonix_external_network.xml
Network Whonix-Internal defined from <mount_path>/Whonix_internal_network.xml
Network Whonix-External marked as autostarted
Network Whonix-External started
Network Whonix-Internal marked as autostarted
Network Whonix-Internal started
Domain 'Whonix-Gateway' defined from <mount_path>/Whonix-Gateway.xml
Domain 'Whonix-Workstation' defined from <mount_path>/Whonix-Workstation.xmlКак видите, мы успешно настроили виртуальные машины. Давайте запустим графический интерфейс для их управления.
virt-managerПри запуске выберите PERSISTENT Mode | SYSMAINT Session... Обновите все пакеты. Перезапустите систему; для удобства можно удалить раздел user-sysmaint, выбрав команду REMOVE user-sysmaint-split.
Чрезвычайная ситуация
Кто-то стучит в дверь, и прежде чем её выломают, у вас есть 5 секунд, чтобы нажать одну кнопку. Если вы потренируетесь, у вас обязательно получится. Чтобы облегчить себе задачу, вам также стоит подумать о том, где лучше всего разместить компьютер на рабочем месте.

- Эксперты-криминалисты проверяют вашу оперативную память и жесткий диск - оперативная память пуста, а диски зашифрованы
- Вас просят ввести пароль к диску, но это не обязательно делать сразу
- Вы ожидаете решения судьи по поводу запроса о вводе пароля. Вы вводите пароль, но ни в операционной системе, ни на «ложном» томе ничего значимого не обнаруживается
Сценарий во многом зависит от страны, в которой вы находитесь, но такая настройка необходима для любого специалиста в нашей области - она уменьшает площадь атаки и дает вам больше времени на размышление. Не пренебрегайте безопасностью; быть неосторожным - глупо. Чтобы чувствовать себя немного увереннее в будущем, сделайте все возможное для себя и окружающих сегодня.
Установка приложений
Не могу не упомянуть о программном обеспечении, которое следует использовать в виртуальной машине, предназначенной для работы с конфиденциальными данными. Все приложения должны быть с открытым исходным кодом, чтобы избежать взлома. Не беспокойтесь - экосистема Linux хорошо налажена и высокоразвита; здесь вы найдете все необходимое.
Я рекомендую скачать:
- KeepassXC - удобно хранит ваши пароли в сжатом и зашифрованном формате
- OpenSnitch - позволяет легко отслеживать и фильтровать запросы, отправляемые вашими приложениями
- SimpleX - современный мессенджер с полностью открытым исходным кодом, который может обеспечить вам конфиденциальность, анонимность и правдоподобное отрицание.
- Monero - единственная настоящая криптовалюта. Ее сложнее всего отследить, у нее низкие комиссии и она предлагает довольно быстрые переводы.
Резервные копии
Возможно, вы настроили систему таким образом, что после определенного действия с вашей стороны (например, физического повреждения USB-накопителя для аутентификации) данные на вашем ПК и внешних накопителях больше не подлежат восстановлению. В таком случае вам понадобятся резервные копии, чтобы впоследствии восстановить доступ к своим учетным записям и средствам.
Для этого нам нужно создать в VeraCrypt зашифрованный файл размером не более 10 МБ. Размер скрытого тома должен составлять 5 МБ. Необходимо заполнить его важными данными (ключи кошелька, файл базы данных паролей) следующим образом:
- Откройте скрытый том VeraCrypt в контейнере, например с именем
diary, чтобы сохранить важные данные. - После сохранения закройте скрытый том.
- Откройте ложный том и запишите в него что-нибудь (в противном случае вы не сможете доказать отсутствие скрытого тома, поскольку время последнего изменения будет более поздним, чем у других файлов).
- Закройте ложный том (ТОЛЬКО СЕЙЧАС вы можете начать резервное копирование контейнера).
- Сделайте резервную копию зашифрованного контейнера на USB-накопители и спрячьте их в местах, где их можно безопасно хранить и легко найти. Опытные пользователи также могут сделать резервную копию данных на небольшом анонимном сервере, проявляя крайнюю осторожность и полностью понимая, что они делают.
Спасибо, что дочитали до конца. Следите за обновлениями - скоро появятся новые статьи.