Obecnie używam cap_net_bind_service MY_USERNAME
w /etc/security/capability.conf.
Teraz muszę tylko ustawić cap_net_bind_service+i
interpreter mojego ulubionego języka skryptowego, aby móc dodać CAP_NET_BIND_SERVICE
do efektywnego zestawu poprzez libcap [-ng].
Działa to dobrze, ale zastanawiam się, czy istnieje sposób na osiągnięcie tego samego bez ustawiania jakichkolwiek ograniczeń dla pliku binarnego interpretera. Chociaż nie jest to duży problem (inne konta użytkowników nie mają limitu, więc nie mogą go używać, nawet z bitem ustawionym na pliku binarnym interpretera), jest to nieco denerwujące, ponieważ muszę ponownie ustawiać flagę za każdym razem, gdy interpreter jest zaktualizowane.
źródło
i
(dziedziczenie), przechodzi obok exec. Ii
nic nie robi sam, działa tylko, jeśli plik ma pasującei
, a jae
(skuteczny) bit (chyba, że skrypt / plik wykonywalny to ustawia). Jest jeszcze bardziej złożony niż setuid, nie jest to efekt skryptu.