Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
rakkess — Review Access - плагин для kubectl, отображающий матрицу доступа к ресурсам сервера k8s | Kitploit
Инструменты/GitHubGitHub/corneliusweig/rakkess
Аутентификация и авторизацияБезопасность облачной инфраструктурыАудит конфигурацииБезопасность облачных средУправление идентификацией и доступом (IAM)
GitHubcorneliusweig/rakkess

rakkess

Review Access - плагин для kubectl, отображающий матрицу доступа к ресурсам сервера k8s

Репозиторий
1.4k6043 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

rakkess

Build Status Code Coverage Go Report Card LICENSE Releases

Обзор доступа — плагин kubectl для отображения матрицы доступа к ресурсам сервера

Введение

Вы когда-нибудь задумывались, какие у вас права доступа в предоставленном кластере Kubernetes? Для отдельных ресурсов вы можете использовать kubectl auth can-i list deployments, но, возможно, вам нужен полный обзор? Для этого и нужен rakkess. Он выводит права доступа для текущего пользователя и всех серверных ресурсов, аналогично kubectl auth can-i --list.

Он также полезен для выяснения того, кто может взаимодействовать с определённым ресурсом сервера. Ознакомьтесь с подкомандой rakkess resource ниже.

Демонстрация

Демонстрация rakkess

Примеры

Показать доступ для всех ресурсов

  • ... на уровне кластера

    root@kitploit:~
    rakkess
    
  • ... в некотором пространстве имён

    root@kitploit:~
    rakkess --namespace default
    
  • ... с глаголами

    root@kitploit:~
    rakkess --verbs get,delete,watch,patch
    
  • ... для другого пользователя

    root@kitploit:~
    rakkess --as other-user
    
  • ... для другого сервисного аккаунта

    root@kitploit:~
    rakkess --sa kube-system:namespace-controller
    
  • ... и комбинировать с общими параметрами kubectl

    root@kitploit:~
    KUBECONFIG=otherconfig rakkess --context other-context
    

Показать субъектов с доступом к заданному ресурсу1

Демонстрация rakkess

  • ...глобально во всех пространствах имён (учитываются только ClusterRoleBindings)

    root@kitploit:~
    rakkess resource configmaps
    
  • ...в заданном пространстве имён (учитываются RoleBindings и ClusterRoleBindings)

    root@kitploit:~
    rakkess resource configmaps -n default
    
  • ...с сокращённой записью

    root@kitploit:~
    rakkess r cm   # same as rakkess resource configmaps
    
  • .. с пользовательскими глаголами

    root@kitploit:~
    rakkess r cm --verbs get,delete,watch,patch
    
Роли с ограничением по имени

Некоторые роли применяются только к ресурсам с определённым именем. Для проверки таких конфигураций укажите имя ресурса как дополнительный аргумент. Например, покажите права доступа для ConfigMap с именем ingress-controller-leader-nginx в пространстве имён ingress-nginx (обратите внимание на тонкое различие для nginx-ingress-serviceaccount по сравнению с предыдущим примером):

Демонстрация rakkess

Поскольку rakkess resource требует запроса Roles, ClusterRoles и их привязок, обычно для этого нужен административный доступ к кластеру.

Также смотрите Использование.

Установка

Существует несколько способов установки rakkess. Рекомендуемый способ — через krew.

Через krew

Krew — это менеджер плагинов для kubectl. Если вы ещё не установили krew, получите его по ссылке https://github.com/kubernetes-sigs/krew. Затем установка проста:

root@kitploit:~
kubectl krew install access-matrix

Плагин будет доступен как kubectl access-matrix, подробности см. в doc/USAGE.

Бинарные файлы

При использовании бинарных файлов для установки также ознакомьтесь с doc/USAGE.

Linux

root@kitploit:~
curl -LO https://github.com/corneliusweig/rakkess/releases/download/v0.5.0/rakkess-amd64-linux.tar.gz \
  && tar xf rakkess-amd64-linux.tar.gz rakkess-amd64-linux \
  && chmod +x rakkess-amd64-linux \
  && mv -i rakkess-amd64-linux $GOPATH/bin/rakkess

OSX

root@kitploit:~
curl -LO https://github.com/corneliusweig/rakkess/releases/download/v0.5.0/rakkess-amd64-darwin.tar.gz \
  && tar xf rakkess-amd64-darwin.tar.gz rakkess-amd64-darwin \
  && chmod +x rakkess-amd64-darwin \
  && mv -i rakkess-amd64-darwin $GOPATH/bin/rakkess

Windows

https://github.com/corneliusweig/rakkess/releases/download/v0.5.0/rakkess-windows-amd64.zip

Из исходного кода

Сборка на хосте

Требования:

  • go 1.16 или новее
  • GNU make
  • git

Компиляция:

root@kitploit:~
export PLATFORMS=$(go env GOOS)
make all   # binaries will be placed in out/

Сборка в Docker

Требования:

  • docker

Компиляция:

root@kitploit:~
mkdir rakkess && chdir rakkess
curl -Lo Dockerfile https://raw.githubusercontent.com/corneliusweig/rakkess/master/Dockerfile
docker build . -t rakkess-builder
docker run --rm -v $PWD:/go/bin/ --env PLATFORMS=$(go env GOOS) rakkess
docker rmi rakkess-builder

Бинарные файлы будут помещены в текущий каталог.

Пользователи


[1]: Этот режим был вдохновлён kubectl-who-can

Скачать инструмент
Что говорят другие о rakkess?
«Выглядит удобно! rakkess, плагин kubectl для отображения матрицы доступа ко всем доступным ресурсам.» – @mhausenblas
«Это действительно очень полезно. rakkess --as system:serviceaccount:my-ns:my-sa -n my-ns выводит матрицу доступа сервисного аккаунта в пространстве имён.» – @fakod
«БОМБА. Обожаю.» – @ralph_squillace
«Это сделало мой день. Ну, не сегодня, но я определённо буду часто им пользоваться.» – @Soukron