Назад | Перейти на главную страницу

Пользователь / пароль Kubernetes Dashboard?

Как я могу защитить свою панель управления Kubernetes с помощью User / Pass от внешнего доступа?

Создайте кластер с помощью миникубов в режиме vm-driver = none.

В Kubernetes запросы поступают в виде аутентификации (учетные данные, которые определяют, кто обращается к серверу API) и авторизации (чтобы сервер API мог определить, может ли этот пользователь выполнить запрошенное действие). Однако Kubernetes не имеет пользователей в традиционном значении этого слова (пользователи Kubernetes - это просто строки, связанные с запросом через учетные данные). Стратегия учетных данных - это выбор, который вы делаете при установке кластера (вы можете выбрать x509, файлы паролей, токены-носители и т. Д.).

Поскольку вы добавили, что хотите создавать пользователей при использовании --vm-driver = none, я предполагаю, что панель управления и сам кластер доступны в сети для всех. Minikube предназначен для локальной разработки и тестирования, похоже, он создает роль от вашего имени. Вы можете попробовать установить обычный кластер Kubernetes, используя Кубеадм вместо использования упрощенной версии, развернутой с Minikube. После minikube start minikube создает роль кластера «панель управления kubernetes» и связанный токен. Другим возможным решением было бы удалить панель управления Kubernetes и установить ее с нуля, следуя инструкциям. Вот с созданием пользователя, как описано Вот вы также можете попробовать создать новые роли для пользователей, но у меня не было времени протестировать это решение. Кроме того, я бы порекомендовал вам использовать другие инструменты для более сложных задач с Kubernetes - с помощью kubeadm вы можете самостоятельно установить панель управления и настроить ее в соответствии со своими потребностями.

Дальше чтение о контроле доступа в дашборде Kubernetes. Создание сервисного аккаунта для панели управления и получение учетных данных шаг 7:

  1. Эта команда создаст учетную запись службы для панели управления в пространстве имен по умолчанию.

$ kubectl create serviceaccount dashboard -n по умолчанию

  1. Эта команда добавит правила привязки кластера в вашу учетную запись панели управления.

$ kubectl create clusterrolebinding dashboard-admin -n default \
--clusterrole = cluster-admin \ --serviceaccount = по умолчанию: панель управления

  1. Эта команда предоставит вам токен, необходимый для входа в личный кабинет.

$ kubectl get secret $ (kubectl get serviceaccount dashboard -o jsonpath = "{. secrets [0] .name}") -o jsonpath = "{. data.token}" | base64 --decode

У вас должен получиться жетон. 4. Скопируйте этот токен и вставьте его на страницу входа в Личный кабинет, выбрав параметр токена.