Мне часто приходится развертывать серверы в стиле linux rpm, настроенные как шаблоны для клиентов на удаленных сайтах по всему миру.
До появления selinux у меня был бы удаленный администратор для создания базового сервера на том же уровне ядра и с разделами, аналогичными моему шаблону.
Затем я передаю на удаленный сервер tar-файл с полным шаблоном. Затем я просто исключил такие вещи, как: fstab, network, / hoot, grub dirs, passwd / shadow, из полного восстановления "tar-файла" системы, и я смог бы запустить удаленный компьютер.
Я считаю, что мне также нужно убедиться, что у меня такой же тип режима selinux (таргетированный), и я исключаю / etc / selinux в целевом объекте от перезаписи.
Проблема в том, что пульт загрузится, представит motd и запросит пароль для входа в систему, он не позволит войти ни одной учетной записи. У меня нет консольного доступа к пультам, и я не могу загрузить их с аварийного компакт-диска.
Мой вопрос в том, что мне нужно сделать с помощью selinux, чтобы иметь возможность восстановить почти весь исходный сервер шаблонов на удаленный сервер из tar-файла?
Я бы определенно рассмотрел возможность использования инструмента управления конфигурацией, такого как ansible, salt, chef или puppet (или другие, о которых я не могу вспомнить сейчас).
Если у вас есть доступ к сети, это не только позволяет вам шаблонизировать части системы, о которой вы заботитесь, но и легко поддерживать ее в актуальном состоянии.
Если у вас нет доступа, это позволяет кому-то, кто это делает, загрузить ваш код управления конфигурацией, соответствующее программное обеспечение, чтобы разобраться в них и запустить их локально в системе.
Ваша настоящая проблема не связана с selinux.
Похоже, что пароль / учетная запись могли быть изменены, или сервер SSH теперь разрешает вход только на основе ключей - это будет в значительной степени зависеть от вашего конкретного сообщения об ошибке (возможно, вы можете поделиться им) и, возможно, что еще могло случиться с система.
Это действительно похоже на то, что в вашем подходе немного может пойти не так - извлечение полного образа системы на / на сервере без знания того, что было раньше, может вызвать всевозможные проблемы.
Можете ли вы попросить кого-нибудь проверить систему локально (и посмотреть, могут ли они войти в систему и / или увидеть что-нибудь на консоли) или, возможно, перейти с другой локальной системы на нее?
Мой вопрос в том, что мне нужно сделать с помощью selinux, чтобы иметь возможность восстановить почти весь исходный сервер шаблонов на удаленный сервер из tar-файла?
Должно быть довольно просто создать лабораторию, используя, например, бесплатный уровень ESXi или KVM (доступны другие гипервизоры), а затем сгенерировать виртуальные машины, к которым у вас есть «физический» доступ.
Вы можете перевести SELinux в разрешающий режим, отредактировать / etc / selinux / config и убедиться, что
SELINUX=permissive
но имейте в виду, что если он уже отключен, ваша проблема в другом.
Если установка SELinux на разрешающий режим «решает» проблему, тогда причина будет найдена в /var/log/audit/audit.log, ищите сообщения об отказе AVC.
Вы могли бы быстро попробовать restorecon -r /
который переименует файловую систему.
Кроме того, он копается в журналах и настраивает конфигурацию SELinux в соответствии с вашими потребностями.
Вероятно, неплохо было бы начать поиск подходящих инструментов управления конфигурацией.