в кубернетесе выполнять контейнер от обычного пользователя через RunAsUser и при этом чтобы основной процесс в контейнере мог биндить порты ниже 1024 (иметь NET_BIND_SERVICE или NET_ADMIN capabilities) то так не получится?
выдай нужные привелегии в манифесте и всё будет хорошо.
Скажите, пожалуйста, что именно вы имеете ввиду под "привилегии в манифесте". Насколько я читаю доку (https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod) в манифесте можно указать securityContext в котором перечислить: - Linux Capabilities - SELinux labels - Seccomp Profile - флаг allowPrivilegeEscalation Что из этого вы имеете ввиду под "привилегиями"? Или что-то совсем другое?
Я не разбираюсь в этом, но используя перевод я бы выбрал privilegeescalation
apiVersion: v1 kind: Pod metadata: name: security-context-demo-4 spec: containers: - name: sec-ctx-4 securityContext: capabilities: add: ["NET_BIND_SERVICE"]
Спасибо за ответ. Работает так, но не работает, если указывать еще и RunAsUser. Надо не из под рута запускать контейнер.
помимо решения проблемы с портом <1024, можно ещё попробовать использовать порт >1024
я про то, что контейнеру можно выдать "NET_BIND_SERVICE или NET_ADMIN capabilities".
Спасибо за отклик.
Обсуждают сегодня