Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
kubebox — ⎈❏ Terminal y consola web para Kubernetes | Kitploit
Herramientas/GitHubGitHub/astefanutti/kubebox
Seguridad de ContenedoresSeguridad en la NubeUtilidades y Frameworks
GitHubastefanutti/kubebox

kubebox

⎈❏ Terminal y consola web para Kubernetes

Ver RepositorioSitio web
2.2k141hace 2 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

= Kubebox [small]#^⎈❏^# Antonin Stefanutti https://github.com/astefanutti[@astefanutti] // Meta :description: Terminal y consola web para Kubernetes // Settings :idprefix: :idseparator: - :experimental: // Aliases ifdef::env-github[] :note-caption: ℹ️ :icon-check: ✔️ :icon-edit: ✏️ endif::[] ifndef::env-github[] :icons: font :icon-check: icon:check[] :icon-edit: icon:pencil[fw] endif::[] // URIs :uri-kubebox-download: https://github.com/astefanutti/kubebox/releases/download/v0.10.0 :uri-kubebox-twitter: https://twitter.com/kubebox :uri-kube-apiserver: https://kubernetes.io/docs/admin/kube-apiserver/ :uri-ingress-controllers: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-controllers :uri-service-account: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/ :uri-xterm-js: https://github.com/xtermjs/xterm.js :uri-cadvisor: https://github.com/google/cadvisor

{description}

// image::./docs/kubebox.png[kubebox, align="center"] ++++

++++

=== Características

  • Configuración desde archivos kubeconfig (variable de entorno KUBECONFIG o $HOME/.kube)
  • Cambiar contextos de forma interactiva
  • <<authentication,Soporte de autenticación>> (bearer token, autenticación básica, clave privada / certificado, OAuth, OpenID Connect, Amazon EKS, Google Kubernetes Engine, Digital Ocean)
  • Selección de namespace y visualización de la lista de pods
  • Desplazamiento / visualización de logs de contenedores
  • Uso de recursos del contenedor (gráficos de memoria, CPU, red, sistema de archivos) footnote:[Requiere que {uri-cadvisor}[cAdvisor] esté desplegado como DaemonSet. Consulte la sección <> para más detalles.]
  • Terminal remota exec para contenedores
  • Eventos de clúster, namespace, pod
  • Editor de configuración de objetos y operaciones CRUD
  • Vistas / monitorización de clúster y nodos

Vea la sección <> para algunos ejemplos, y siga image:https://img.shields.io/badge/%40kubebox-00ACEE.svg?&logo=twitter&colorA=555&logoColor=fff[link={uri-kubebox-twitter}] para conocer las novedades.

== Ejecución

Las siguientes alternativas están disponibles para usar Kubebox, según sus preferencias y restricciones:

=== Ejecutable

Descargue el ejecutable independiente de Kubebox para su SO:

[source,shell,subs=attributes+]

Linux (x86_64)

$ curl -Lo kubebox {uri-kubebox-download}/kubebox-linux && chmod +x kubebox

Linux (ARMv7)

$ curl -Lo kubebox {uri-kubebox-download}/kubebox-linux-arm && chmod +x kubebox

OSX

$ curl -Lo kubebox {uri-kubebox-download}/kubebox-macos && chmod +x kubebox

Windows

$ curl -Lo kubebox.exe {uri-kubebox-download}/kubebox-windows.exe

Luego ejecute:

root@kitploit:~
$ ./kubebox

=== Servidor

Kubebox puede servirse desde un servicio alojado en su clúster de Kubernetes. La emulación de terminal es proporcionada por {uri-xterm-js}[Xterm.js] y la comunicación con la API del master de Kubernetes es proxyada por el servidor.

Para desplegar el servidor en su clúster de Kubernetes, ejecute:

root@kitploit:~
$ kubectl apply -f https://raw.github.com/astefanutti/kubebox/master/kubernetes.yaml

Para detener el servidor y limpiar los recursos, ejecute:

root@kitploit:~
$ kubectl delete namespace kubebox

Para que el recurso Ingress funcione, el clúster debe tener un controlador Ingress en ejecución. Consulte {uri-ingress-controllers}[Ingress controllers] para más información.

Alternativamente, para desplegar el servidor en su clúster de OpenShift, ejecute:

root@kitploit:~
$ oc new-app -f https://raw.github.com/astefanutti/kubebox/master/openshift.yaml

=== Kubectl

Puede ejecutar Kubebox como un cliente in-cluster con kubectl, por ejemplo:

root@kitploit:~
$ kubectl run kubebox -it --rm --env="TERM=xterm" --image=astefanutti/kubebox --restart=Never

Si RBAC está habilitado, deberá usar la opción --serviceaccount y hacer referencia a una cuenta de servicio con permisos suficientes.

=== Docker

Puede ejecutar Kubebox usando Docker, por ejemplo:

root@kitploit:~
$ docker run -it --rm astefanutti/kubebox

Es posible que desee montar su directorio home para que Kubebox pueda usar el archivo ~/.kube/config, por ejemplo:

root@kitploit:~
$ docker run -it --rm -v ~/.kube/:/home/node/.kube/:ro astefanutti/kubebox

=== En línea

Kubebox está disponible en línea en https://astefanutti.github.com/kubebox. Tenga en cuenta que requiere que esta dirección coincida con los orígenes permitidos para CORS por el servidor API. Esto se puede lograr con la {uri-kube-apiserver}[CLI del servidor API de Kubernetes], por ejemplo:

root@kitploit:~
$ kube-apiserver --cors-allowed-origins .*

== Autenticación

Intentamos admitir las diversas estrategias de autenticación compatibles con kubectl, para proporcionar una integración perfecta con su configuración local. Aquí están las diferentes estrategias de autenticación que admitimos, según cómo use Kubebox:

[cols="<,^,^,^",options="header"] |=== ||Ejecutable|Docker|En línea

|OpenID Connect |{icon-check} |{icon-check} |{icon-check}footnote:[Los archivos de autoridad certificadora IDP personalizados no son compatibles en las versiones Web.]

|Amazon EKS| {icon-check} | |

|Digital Ocean |{icon-check} | |

|Google Kubernetes Engine| {icon-check} | | |===

Si el modo que está utilizando no es compatible, puede actualizar el token/certificado de autenticación manualmente y actualizar su archivo kubeconfig en consecuencia.

== cAdvisor

Kubebox utiliza {uri-cadvisor}[cAdvisor] para recuperar las métricas de uso de recursos. Antes de la versión 0.8.0, Kubebox accedía a los endpoints de cAdvisor que están integrados en el Kubelet. Sin embargo, estos endpoints están siendo obsoletos y eventualmente se eliminarán, como se discute en https://github.com/kubernetes/kubernetes/issues/68522[kubernetes#68522].

A partir de la versión 0.8.0, Kubebox espera que cAdvisor esté desplegado como un https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/[DaemonSet]. Esto se puede lograr con:

root@kitploit:~
$ kubectl apply -f https://raw.githubusercontent.com/astefanutti/kubebox/master/cadvisor.yaml

Se recomienda usar el archivo cadvisor.yaml proporcionado, que ha sido probado para funcionar con Kubebox. Sin embargo, el ejemplo de DaemonSet del proyecto {uri-cadvisor}[cAdvisor] también debería funcionar correctamente. Tenga en cuenta que los contenedores de cAdvisor deben ejecutarse con un contexto de seguridad privilegiado, para que puedan acceder al runtime de contenedores en cada nodo.

Puede cambiar las opciones predeterminadas --storage_duration y --housekeeping_interval, agregadas a los argumentos del contenedor de cAdvisor declarados en el archivo cadvisor.yaml, para ajustar la duración de la ventana móvil de almacenamiento (predeterminado 5m0s) y el período de muestreo (predeterminado 10s) respectivamente. También es posible que deba proporcionar la ruta del socket del runtime de contenedores de su clúster, en caso de que no siga la convención habitual.

== Atajos de teclado

[cols="1v,2v"] |=== |Combinación de teclas |Descripción

2+^.e|General

|kbd:[l], kbd:[Ctrl+l] |Iniciar sesión

|kbd:[n] |Cambiar namespace actual

|[kbd:[Shift]+]kbd:[←], kbd:[→] + [kbd:[Alt]+]kbd:[1], ..., kbd:[9] |Navegar entre pantallas + (use kbd:[Shift] o kbd:[Alt] dentro del terminal exec)

|kbd:[Tab], kbd:[Shift+Tab] |Cambiar el foco dentro de la pantalla activa

|kbd:[↑], kbd:[↓] |Navegar lista / formulario / log

|kbd:[PgUp], kbd:[PgDn] |Mover una página arriba / abajo

|kbd:[Enter] |Seleccionar elemento / enviar formulario

|kbd:[Esc] |Cerrar ventana modal / cancelar formulario

|kbd:[Ctrl+z] |Cerrar pantalla actual

|kbd:[q], kbd:[Ctrl+q] |Salir footnote:[No disponible en versiones Web.]

2+^.e|Inicio de sesión

|kbd:[←], kbd:[→] |Navegar configuraciones de Kube

2+^.e|Pods

|kbd:[Enter] |Seleccionar pod / ciclar contenedores

|kbd:[r] |Shell remoto dentro del contenedor

|kbd:[m] |Uso de memoria

|kbd:[c] |Uso de CPU

|kbd:[t] |Uso de red

|kbd:[f] |Uso del sistema de archivos

|kbd:[e] |Eventos del pod

|kbd:[Shift+e] |Eventos del namespace

|kbd:[Ctrl+e] |Eventos del clúster

|===

== Preguntas frecuentes

  • ¡Las métricas de uso de recursos no están disponibles!

** A partir de la versión 0.8.0, Kubebox espera que {uri-cadvisor}[cAdvisor] esté desplegado como un DaemonSet. Consulte la sección <> para más detalles;

** Las métricas se recuperan de la API REST del pod de cAdvisor que se ejecuta en el mismo nodo que el contenedor para el cual se solicitan las métricas. Se accede a esa API REST a través del proxy del servidor API, lo que requiere permisos RBAC adecuados, por ejemplo: + [source,shell]

Permiso para listar los pods de cAdvisor (seleccionados usando el selector de campo spec.nodeName)

$ kubectl auth can-i list pods -n cadvisor yes

Permiso para hacer proxy del pod de cAdvisor seleccionado, para llamar a su API REST

$ kubectl auth can-i get pod --subresource proxy -n cadvisor yes

== Desarrollo

root@kitploit:~
$ git clone https://github.com/astefanutti/kubebox.git
$ cd kubebox
$ npm install
$ node index.js

== Capturas de pantalla

Eventos del clúster: ++++

++++

Shell dentro de un contenedor: ++++

++++

Soporte de temas de terminal: ++++

++++

Versión para navegador web: ++++

++++
Descargar herramienta