sshd[5589]: ошибка: PAM: pam_open_session(): Невозможно создать/удалить запись для указанного сеанса

sshd[5589]: ошибка: PAM: pam_open_session(): Невозможно создать/удалить запись для указанного сеанса

Я работаю с минимальной установкой CentOS7. Я настроил pam_radius с помощью pam_script и всегда мог подключаться к серверу по ssh, используя аутентификацию pubkey: это было сделано намеренно. Но после усиления защиты сервера в соответствии сРуководство СТИГ(полное пошаговое руководство можно найтинайдено здесь) Я больше не мог войти в систему по SSH; или, выражаясь более культурно, я входил в систему, а затем меня немедленно выкидывало. Ошибка в файле /var/log/secure гласила:

sshd[5589]: ошибка: PAM: pam_open_session(): Невозможно создать/удалить запись для указанного сеанса

Отключение selinux, как это обычно бывает, решило проблему. Но очевидно, что это не приемлемое решение.

решение1

Некоторые люди, очевидно, примут отключение selinux или установку его в разрешительный режим в качестве ответа; но тогда всегда найдутся несколько язвительных гуру Linux, которые встрянут со словами: «прекратите отключать selinux!» НО ЭТО ВСЕ, ЧТО ОНИ СКАЖУТ! Перестаньте говорить людям «прекратите отключать selinux», ЕСЛИ ВЫ ТАКЖЕ НЕ СКАЖЕТЕ ИМ РЕШЕНИЕ!

Ну, я нашел решение этой проблемы, и поскольку я не мог легко найти его где-либо в Интернете, я выложу его здесь. Я следовал руководству Red Hat,найдено здесь.

Я готов поспорить, что большинство людей не знают об этом инструменте.аудит2разрешить. Это спасение. Я использовал его для простого создания загружаемого модуля selinux, и это решило мою проблему, так что мне не пришлось отключать selinux. Я просто выполнил шаги подключения через SSH во время работыаудит2разрешитьинструмент, затем он автоматически создал модуль. Затем я загрузил модуль, перезагрузился, и все хорошо.

audit2allow -a -M mycertwatch

******************** IMPORTANT ***********************
To make this policy package active, execute:

semodule -i mycertwatch.pp

Связанный контент