- Linux Unified Key Setup: как защитить флэшки и внешние диски от взлома
- Шифрование на этапе инсталляции
- Шифрование внешних накопителей
- Как это сделать с помощью LUKS
- 1. Подключите и найдите свой внешний диск
- 2. Очистите диск
- 3. Отформатируйте диск под LUKS
- 4. Откройте LUKS-том
- 5. Создайте файловую систему
- Финал: монтирование LUKS-тома
- Операционные системы Astra Linux
- Создание зашифрованного LUKS-раздела на Linux
- Предварительная подготовка
- Генерация ключа
- Шифрование раздела
- Монтирование тома
Linux Unified Key Setup: как защитить флэшки и внешние диски от взлома
Посмотрим, как с помощью системы на базе спецификации Linux Unified Key Setup (LUKS) и утилиты Cryptsetup можно зашифровать флэш-накопители, внешние жёсткие диски и прочие переносные устройства, хранящие дорогую вашему сердцу информацию.
Чаще всего, пользователи рассуждают достаточно просто: накопители в безопасности, пока их никто не украл. Некоторые идут в размышлениях дальше: если для входа в систему нужно знать пароль — злоумышленнику будет сложно получить доступ к данным на украденном диске. Успокаиваясь на этой мысли, они забывают задать себе важный вопрос: к чему именно мешает получить доступ их пароль на самом деле?
Во многих случаях они всего лишь служат для разблокировки пользовательского сеанса. И тогда злоумышленник может забрать данные с диска, не зная пользовательский пароль: он просто обойдётся без разглядывания заставки на вашем рабочем столе.
Особенно хорошо это понимают специалисты, которые сталкивались с последствиями такой недальновидности и сделали соответствующие выводы. Доступ к необходимой информации можно получить, подключив к машине свой внешний загрузочный диск, и после некоторых успешных манипуляций читать диск пользователя, как открытую книгу.
Если время сильно ограничено, злодеи действительно могут украсть накопитель и взять работу на дом. Особенно легко это им удаётся, если он внешний и подключён через USB. В этой статье речь пойдёт о простом инструменте, позволяющем защитить от несанкционированного доступа данные на внешних накопителях. Даже если они уже попали в руки к злоумышленникам. Речь пойдёт о шифровании дисков в операционных системах семейства Linux.
Linux Unified Key Setup (LUKS) — это система шифрования дисков, которая хранит данные в зашифрованном физическом разделе. Зашифровать их помогает модуль ядра dm-crypt, позволяющий создавать виртуальное блочное устройство, с которым взаимодействует пользователь.
Если пользователь хочет записать данные на виртуальное устройство, они на лету шифруются и записываются на диск. Если же он хочет читать с виртуального устройства, данные, хранящиеся на физическом диске, дешифруются и передаются в открытом виде через виртуальный диск пользователю. Данные остаются под защитой и в том случае, когда диск подключают к другому компьютеру.
Шифрование на этапе инсталляции
Проще всего выполнить полное шифрование диска, выбрав соответствующую опцию в процессе установки операционной системы. Большинство современных Linux-дистрибутивов позволяют это сделать. Здесь не буду расписывать в деталях, так как статья посвящена шифрованию внешних накопителей (далее я подробно буду рассматривать именно его).
Изображение: Seth Kenlon, CC BY-SA 4.0
После установки у вас будет зашифрованный диск. Перед загрузкой системы потребуется ввести парольную фразу. Если захотите извлечь диск или получить к нему доступ из другой операционной системы, нужно выполнить дешифрацию с помощью той же системы LUKS.
Шифрование внешних накопителей
Внешние накопители созданы для того, чтобы их подключали к разным устройствам, быстро обмениваясь информацией, таскали с собой по работе и иногда… теряли. Я находил случайно оставленные диски в USB-портах компьютеров в вестибюле отелей, в принтерах бизнес-центров, диски, потерянные в учебных аудиториях и даже в прачечной. Вряд ли их владельцы хотели бы, чтобы кто-то нашёл эти накопители и добрался до рабочих документов или личных архивов.
LUKS вместе с утилитой Cryptsetup позволяет шифровать внешние накопители почти так же просто, как и при инсталляции ОС.
Как это сделать с помощью LUKS
ВАЖНО: внешний накопитель должен быть либо пустым, либо содержать ненужные вам данные. Так что, если оба этих условия не выполнены, нулевым шагом должен стать бэкап.
1. Подключите и найдите свой внешний диск
Я для примера взял небольшую флэшку. Представим, что путь к ней выглядит как /dev/sdX. Утилита lsblk покажет мне вот такую информацию о блочных устройствах:
Всё правильно, моя флэшка обнаружена. Да, это именно она. Я точно знаю, что её размер 1.8Gb. В списке всего один диск (disk) с таким размером (ему соответствует один раздел part).
Я уделяю такое внимание этой, казалось бы, мелочи, так как дисков может быть много. И в случае ошибки на следующем шаге вы сотрёте с другого диска данные, которые вам всё ещё нужны.
2. Очистите диск
На этом шаге я обнуляю таблицу разделов диска:
Это, конечно, необязательно, но я люблю это состояние чистого листа.
3. Отформатируйте диск под LUKS
Используем для этого утилиту Cryptsetup. Её подкоманда luksFormat запускает первый этап создания зашифрованного раздела LUKS (позже мы создадим там файловую систему).
После этого появится предупреждение об удалении всех данных (которые могли всё ещё оставаться на диске). Кроме того, вас попросят придумать и ввести парольную фразу для диска.
4. Откройте LUKS-том
Процесс создания зашифрованного раздела завершён. Теперь для продолжения работы с диском нужно вводить парольную фразу. Открыть произвольный LUKS-том (то есть, подключить виртуальное блочное устройство) можно с помощью подкоманды open.
Я придумал фразу (а точнее, просто пароль в одно слово) «vaultdrive». У вас будет какой-то свой вариант. Чтобы посмотреть список открытых томов, нужно вывести содержимое каталога /dev/mapper:
Чтобы закрыть LUKS-том vaultdrive нужно написать:
После этого он исчезнет из каталога /dev/mapper.
5. Создайте файловую систему
Создайте файловую систему, чтобы иметь возможность хранить свои данные на диске. Я выбрал XFS, но это далеко не единственный вариант: можно использовать, например, ext4 или JFS. И многие другие.
Финал: монтирование LUKS-тома
Можно делать это через терминал. Например, мы хотим использовать для нашей цели директорию /mnt/hd
А рабочий стол KDE, например, позволяет указать диск для монтирования в специальном разделе с настройками. Но и там я тоже должен вводить пароль или парольную фразу, прежде чем произойдёт монтирование.
Изображение: Seth Kenlon, CC BY-SA 4.0
А какие инструменты для шифрования внешних дисков на Linux используете вы? Какие инструменты используете для аналогичных задач на macOS и Windows?
Недорогие VDS для любых задач. Используем новейшее железо, лучший дата-центр в Москве уровня надёжности TIER IV, бесплатно предоставляем защиту от DDoS-атак на любом тарифном плане, который можно создать самостоятельно в течение минуты.
Зарегистрируйтесь по ссылке выше или кликнув на баннер и получите 10% скидку на первый месяц аренды сервера любой конфигурации!
Источник
Операционные системы Astra Linux
Оперативные обновления и методические указания
Операционные системы Astra Linux предназначены для применения в составе информационных (автоматизированных) систем в целях обработки и защиты 1) информации любой категории доступа 2) : общедоступной информации, а также информации, доступ к которой ограничен федеральными законами (информации ограниченного доступа).
1) от несанкционированного доступа;
2) в соответствии с Федеральным законом от 27.07.2006 № 149-ФЗ «Об информации, информационных технологиях и о защите информации» (статья 5, пункт 2).
Операционные системы Astra Linux Common Edition и Astra Linux Special Edition разработаны коллективом открытого акционерного общества «Научно-производственное объединение Русские базовые информационные технологии» и основаны на свободном программном обеспечении. С 17 декабря 2019 года правообладателем, разработчиком и производителем операционной системы специального назначения «Astra Linux Special Edition» является ООО «РусБИТех-Астра».
На web-сайтах https://astralinux.ru/ и https://wiki.astralinux.ru представлена подробная информация о разработанных операционных системах семейства Astra Linux, а также техническая документация для пользователей операционных систем и разработчиков программного обеспечения.
Мы будем признательны Вам за вопросы и предложения, которые позволят совершенствовать наши изделия в Ваших интересах и адаптировать их под решаемые Вами задачи!
Репозитория открытого доступа в сети Интернет для операционной системы Astra Linux Special Edition нет. Операционная система распространяется посредством DVD-дисков.
Информацию о сетевых репозиториях операционной системы Astra Linux Common Edition Вы можете получить в статье Подключение репозиториев с пакетами в ОС Astra Linux и установка пакетов.
В целях обеспечения соответствия сертифицированных операционных систем Astra Linux Special Edition требованиям, предъявляемым к безопасности информации, ООО «РусБИтех-Астра» осуществляет выпуск очередных и оперативных обновлений.
Очередные обновления (версии) предназначены для:
- реализации и совершенствования функциональных возможностей;
- поддержки современного оборудования;
- обеспечения соответствия актуальным требованиям безопасности информации;
- повышения удобства использования, управления компонентами и другие.
Оперативные обновления предназначены для оперативного устранения уязвимостей в экземплярах, находящихся в эксплуатации, и представляют собой бюллетень безопасности, который доступен в виде:
- инструкций и методических указаний по настройке и особенностям эксплуатации ОС, содержащих сведения о компенсирующих мерах или ограничениях по примене- нию ОС при эксплуатации;
- отдельных программных компонентов из состава ОС, в которые внесены изменения с целью устранения уязвимостей, инструкций по их установке и настройке, а также информации, содержащей сведения о контрольных суммах всех файлов оперативного обновления;
- обновлений безопасности, представляющих собой файл с совокупностью программных компонентов из состава ОС, в которые внесены изменения с целью устранения уязвимостей, а также информации, содержащей сведения о контрольных суммах всех файлов обновлений безопасности, указания по установке, настройке и особенностям эксплуатации ОС с установленными обновлениями безопасности.
Ввиду совершенствования нормативно-правовых документов в области защиты информации и в целях обеспечения соответствия информационных актуальным требованиям безопасности информации, а также обеспечения их долговременной эксплуатации, в том числе работоспособности на современных средствах вычислительной техники, рекомендуется на регулярной основе планировать проведение мероприятий по применению очередных и оперативных обновлений операционной системы.
Источник
Создание зашифрованного LUKS-раздела на Linux
Операционные системы семейства Linux предоставляют функцию шифрования жестких дисков через специальные утилиты. Рассмотрим одну из них под названием LUKS. В качестве примера используется Ubuntu Server 18.04.
Предварительная подготовка
Утилиту LUKS используют в качестве стандарта для защиты дисков в Linux-системах. Ее преимущества:
- Она бесплатна.
- Совместима с 99% операционных систем Linux/Unix.
- Позволяет сбросить пароль или кодовую фразу в случае утери либо компрометации.
Прежде чем шифровать диск, необходимо определиться с выбором. Запустим в терминале следующую утилиту:
Она отобразит информацию о свободных томах, а также о разделах, которые доступны для защиты:
Скриншот №1. Перечень свободных логических дисков.
Выберем один из списка и перейдем к редактированию. В качестве примера будем использовать раздел /dev/sdb.
Запустим программу parted, указав выбранный том:
sudo parted /dev/sdb
Администратору будет доступен функционал утилиты через терминал.
Важно! Чтобы получить подробную информацию об утилите parted, введите ключ help.
Получив доступ к parted, разметим выбранный раздел соответствующим образом. Отредактируем под GPT:
Программа отобразит предупреждение о том, что вся информация будет удалена во время выполнения операции. Вводим «Yes»:
Скриншот №2. Удаление данных с тома.
После окончания операции создадим новый том как основной:
mkpart primary 1 -1
Его метка будет отображаться как «1». По окончании выходим из программы через команду quit.
Генерация ключа
Создадим ключ шифрования, используя команду DD:
sudo dd if=/dev/urandom of=/root/secret.key bs=1024 count=2
, где /root/secret.key — имя генерируемого ключа. Пользователь указывает его самостоятельно.
Теперь отредактируем права доступа к файлу:
sudo chmod 0400 /root/secret.key
Присвоим ему функцию на чтение «без редактирования».
Шифрование раздела
Следующий этап — шифрование данных. По умолчанию LUKS интегрирована в большинство дистрибутивов. Если утилита недоступна, установим её, используя стандартные средства установки. Для примера с Ubuntu Server:
sudo apt-get install cryptsetup
После установки создадим шифрованный том с использованием сгенерированного ключа:
cryptsetup luksFormat /dev/sdb1 /root/secret.key
Программа выдаст предупреждающее сообщение о том, что информация будет удалена после форматирования. Вводим «Yes»:
Скриншот №3. Стирание диска.
Теперь свяжем сгенерированный ключ с томом /dev/sdb1. Это позволит в дальнейшем пропускать процедуру авторизации при каждом обращении к разделу, а также скроет подсказки к паролю от других пользователей:
cryptsetup luksAddKey /dev/sdb1 /root/secret.key —key-file=/root/secret.key
После выполнения операции перейдем к конфигурированию. Сначала создадим промежуточный вариант подключения к шифрованному объекту. Для этого воспользуемся функцией LuksOpen:
cryptsetup luksOpen /dev/sdb1 secret —key-file=/root/secret.key
По окончании устройство будет доступно по пути /dev/mapper/secret.
Следующим шагом указываем размер тома, который требуется зашифровать:
cryptsetup resize secret
В нашем примере имя тома — secret. Если для опции resize не указываются дополнительные флаги, она занимает весь раздел. Смонтируем точку доступа для файловой структуры ext4 с именем тома secret:
Для проверки правильности выполненных действий вводим:
cryptsetup -v status secret
Монтирование тома
Раздел зашифрован — смонтируем его для операционной системы. Указываем точку входа для тома secret, а потом задаем права на доступ:
sudo mkdir -p /secret
sudo chmod 755 /secret
Через команду mount подключим раздел к ОС:
mount /dev/mapper/secret /secret
После этого проверим выполнение операции:
Чтобы постоянно не подключить LUKS-раздел к операционной системе, активируем автомонтирование тома.
Важно! Использование автоматического режима монтирования также автоматически расшифровывает том в момент его подключения к ОС.
Определим идентификатор защищенного диска:
ls -l /dev/disk/by-uuid
Он обозначается термином UUID. Поскольку наименование сложное для запоминания, выгрузим его имя в отдельный файл:
Важно! После знака «=» идет идентификатор, который используется в примере.
Создадим ссылку на сгенерированный ранее ключ secret.key:
sudo echo «secret UUID=$
Последний шаг — добавляем соответствующие строки в файл монтирования разделов fstab:
sudo echo «/dev/mapper/secret /secret auto» >> /etc/fstab
Указав в терминале команду sudo mount –a, зашифрованный раздел автоматически будет подключаться при старте операционной системы.
Источник