Я не удовлетворен ответом на этот вопрос:
$> sudo semanage port -d -p tcp -t foo...
ValueError: Port foo is defined in policy, cannot be deleted
Принятый ответ
Политика SELinux включает определения портов ... Нет необходимости их удалять.
Нет необходимость чтобы удалить их. Хорошо, но я все равно хочу удалить их - я хочу, чтобы доступность порта SELinux соответствовала актуальный доступность порта, просто для единообразия.
Как я semanage port -d
для портов, определенных в политике? (В моем случае ssh.)
Вы можете создать свой собственный модуль политики для SSH, удалив часть, на которой порт помечен.
Поскольку теперь вы можете загружать модули политики с указанием приоритета, ваш пользовательский модуль будет иметь более высокий приоритет. Проверить -X,--priority=PRIORITY
флаг в semodule
страница руководства для подробностей.
Для справки, я согласен с Майклом Хэмптоном в том, что нет необходимости удалять порт из политики. Это совсем не увеличивает безопасность системы, так как есть несколько способов либо повысить, либо ослабить безопасность (как в случае с SELinux) управления SSH-сервером, а именно: сначала удалить сервер OpenSSH, маркировать трафикили, наоборот, поместите SSH-сервер в разрешающий домен.