LINUX.ORG.RU
ФорумAdmin

Зашифрованный контейнер

 ,


0

1

Хочется немного странного. Есть сервер, на котором хочется запустить некоторые сервисы (пока git, там может ещё что-нибудь). На этот сервер потенциально может быть доступ у других людей (с правами root-а). Хочется, чтобы эти другие люди не могли ничего увидеть в этом зашифрованном контейнере. Люди не уровня NSA, но уровня вменяемого сисадмина, скажем. Т.е. сервер жидким азотом обливать не будут и ядерные модули подгружать не будут.

Я это вижу примерно так — создаётся файл, на нём создаётся зашифрованная файловая система. Она монтируется (в этот момент нужно ввести пароль), туда делается chroot и запускаются нужные программы. После этого это всё хозяйство как то отмонтируется так, чтобы никто это не видел кроме тех программ, которые крутятся. При остановке машины всё аккуратно надо стопнуть и отмонтировать. После старта естественно админ должен зайти и руками запустить, введя пароль. Ну и всякие /dev/mem надо запретить читать руту.

Нужны какие то ключевые слова для всего этого мне сейчас.

ОС - Centos 7.

★★★★★

Отмонтировать? С открытыми файлами, да?

dhameoelin ★★★★★
()

чтобы эти другие люди не могли ничего увидеть в этом зашифрованном контейнере

А ты не храни ценное на таком сервере. Загружай зашифрованный контейнер в обычный сервак, расшифровывай в оперативку и оттуда запускай. Либо нужно писать/использовать уже готовый прокси к файлам и данным, который рашифровывал бы/зашифровывал на лету с помощью ключа, доступ к которому возможен после ввода пароля как с ssh rsa ключами. Наверняка, на гитхабе уже есть такие разработки...

menangen ★★★★★
()

namespaces, unshare

На вскидку: с помощью unshare -m от рута запускается некий управляющий скрипт или бинарь.
Скрипт должен быть расположен вне шифруемой фс.

Затем скрипт просит ввести пароль, монтирует шифрованную фс, при необходимости делает chroot (или не делает), стартует всё что нужно и остаётся висеть в виде демона.
(Как вариант - этот скрипт завершается. Не проверял можно ли так)

При завершении работы системы всем процессам будет послан сигнал (какой?) и все твои процессы должны на него корректно отреагировать и вырубиться за короткое время, иначе будут убиты сигналом -9.

С помощью штатных команд вроде mount админ не увидит монтировки сделанные внутри namespace. Но наверное способ заглянуть внутрь какой-то есть, хоть я и не копался.

Все твои процессы в таком случае будут видны админу. Вроде бы их тоже можно запихнуть в namespace, не разбирался.

Nao ★★★★★
()

Если можно не запускать сервисы, а обойтись доступом к фс по ssh, то использовать ecryptfs, encfs. На клиентах придётся делать дополнительную настройку, зато намного безопаснее, т.к. шифрование полностью на клиенте.

Nao ★★★★★
()
Ответ на: комментарий от Nao

Спасибо, буду копать. Вроде похоже.

Legioner ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.