Сделайте задание крона, которое проверяет полномочия и исправляет его. Имейте выполненный однажды в минуту.
Для диагностики и работы вокруг в одной, используйте этот крон, который проверяет на желаемые полномочия. Если они не найдены, это посылает электронное письмо с результатами статистики и затем исправляет полномочия.
if [[ $(stat -c "\%a" /home/user/folder) != "755" ]]; then echo -e "Perm Changed\n" $(stat /home/user/folder) "\n" | mail -s "Permission Cron" addy@email.com; chmod 755 /home/user/folder; fi
, наконец, понял его. Это все еще чувствует себя действительно чертовски и грязным, потому что система никогда не знает, что / boot
может не быть установлена, и вам придется вручную установить его, прежде чем делать все, что может написать ему (подумать об обновлениях системы и т. Д.) , но кроме того, это работает отлично.
Shred -n 1 -V / dev / sdx
на нем, чтобы полностью стереть его полностью, включая любые предыдущие загрузки; Когда это сделано пробежать FDISK
для создания раздела и MKFS
Ваша файловая система выбора на нем. / MNT / BOOT
или даже / Newboot
будет просто отлично. / boot
на флэш-накопитель с MV / boot / * / newboot
. / etc / fstab
и измените UUID исходного загрузки (или создайте запись, если нет), чтобы соответствовать одному из вашу флешку. Вы можете получить UUID с LSBLK -O Name, UUID
. Также добавьте опцию NOAUTO NOAUTO NOAUTO
, так что привод не будет установлен автоматически, чтобы иметь возможность удалить его, как только система запускает загрузку (как только ядро загружено), не рискуя повредить FS на нем.
umount / boot && umount / newboot
) и установите флешку; Если ваша запись FSTAB верна, вы можете просто запустить COUNT / BOOT
, и он автоматически смонтирует его на основе, указанном в FSTAB. HD0
). Если вы в порядке с использованием сценариев настройки GRUB по умолчанию, поставляемые большинством дистрибутивов, вы можете запустить GRUB-MKCONFIG -O /PATHE/TO /GRUB.CFG
, и он будет генерировать файл в соответствии с текущим монтируемые перегородки и / или фстаб. Обратите внимание, что для CentOS 7 правильный GRUB.CFG
фактически находится в /boot/grub2/grub.cfg
. При выполнении любой операции, которая может получить доступ к загрузочному разделу, подключите USB-накопитель и запустить Mount / Boot
. После этого вы можете запустить Umount / Boot
. Обратите внимание, что последняя команда может занять моменты, чтобы завершить, потому что он промывает буферы на диск (сам диск не работает, поэтому ядро буферирует некоторые операции записи, чтобы ускорить вещи).
Другой подход к этой конкретной проблеме - использовать TPM для хранения ключа шифрования, но защита зависит от пользователя, чтобы сделать ее эффективной. Рудиментарным решением на базе RHEL7 является tpm-luks (https://github.com/GeisingerBTI/tpm-luks).
Оно работает следующим образом: при загрузке каждый шаг процесса загрузки измеряет следующий и сохраняет эти измерения в PCR на TPM. После завершения процесса загрузки tpm-luks проверяет состояние PCR на соответствие "известной хорошей" конфигурации. Если конфигурация "заведомо хорошая", TPM разблокирует ключ LUKS, и tpm-luks передает эти данные для разблокировки корневого раздела LUKS.
Поскольку все важные данные измеряются с помощью хэша crpytographic, у злой горничной нет возможности заменить ваш GRUB/ядро/ramdisk, чтобы подло забрать вашу парольную фразу FDE. В качестве дополнительного бонуса, вам вообще не нужна парольная фраза FDE! Теоретически, вы можете полностью убрать человекочитаемую парольную фразу и полностью положиться на tpm-luks, но если вы пойдете этим путем, то, вероятно, будет хорошей идеей сохранить ваш LUKS-заголовок и держать его в качестве резервной копии.
Как я уже говорил, это требует некоторого усердия от пользователя. Если вы оставили компьютер без присмотра, и у вас появляется запрос парольной фразы, вероятно, это плохая идея - вводить ее, пока вы не проведете некоторое расследование. В этот момент следует загрузиться в среду live CD и посмотреть, есть ли ошибка в tpm-luks, или раздел /boot
действительно был изменен. Вы по-прежнему оставляете раздел /boot
незашифрованным, но если что-то важное будет изменено, основной диск никогда не будет расшифрован.