Допустим, я добавил метку порта локального хранилища для 443 / tcp.
Когда я затем запрашиваю типы для 443 / tcp, я получаю список типов, которые МОГУТ быть эффективным типом.
seinfo --portcon=443 --proto=tcp
portcon tcp 442-444 system_u:object_r:xdmcp_port_t:s0
portcon tcp 443 system_u:object_r:http_port_t:s0
portcon tcp 1-511 system_u:object_r:reserved_port_t:s0
ИЛИ
sepolicy network -p 443 | grep tcp
443: tcp reserved_port_t 1-511
443: tcp xdmcp_port_t 442-444
443: tcp http_port_t 443
ИЛИ
semanage port -l
и
semanage port -lC
но тогда мне также придется разделить списки портови проанализировать диапазоны портов, но, по крайней мере, он позволяет мне определить, было ли определение из локального хранилища.
ИЛИ libsemanage
semanage_port_list
semanage_port_list_local
, но опять же необходимодиапазоны разбора
/ var / log / audit / audit.log имеет эффективный тип при сбое доступа, но каков простой вызов для возврата типа для определенного порта?Действительно ли мне нужно работать со списком правил, чтобы определить эффективный тип?
- определения локального хранилища переопределяют постоянные определения политики.
- более конкретные определения имеют приоритет (https://danwalsh.livejournal.com/47533.html), но я не уверен, являются ли какие-либо особенные типы, например reserved_port_t, unreserved_port_t. А что более конкретно означает размер диапазона?
- по умолчанию - port_t. (Не уверен, зависит ли это от политики).
Обновление:
Мое текущее решение - небольшая утилита libsepol для вызова sepol_port_sid