
ओपन सोर्स रनटाइम स्कैनर k8s क्लस्टर के लिए और सुरक्षा ऑडिट जाँच करता है जो CIS Kubernetes बेंचमार्क विनिर्देश पर आधारित है
कुबे-बीकन एक ओपन सोर्स ऑडिट स्कैनर है जो तैनात कुबरनेट्स क्लस्टर पर ऑडिट जांच करता है और एक सुरक्षा रिपोर्ट आउटपुट करता है।
ऑडिट परीक्षण CIS कुबरनेट्स बेंचमार्क विनिर्देश का पूर्ण कार्यान्वयन हैं
नया !! ऑडिट परिणाम अब उपयोगकर्ता प्लगइन (गो प्लगइन का उपयोग करके) के माध्यम से वेबहुक के रूप में उपयोग किया जा सकता है

git clone https://github.com/chen-keinan/kube-beacon
cd kube-beacon
make build
बिना किसी फ्लैग के कुबे-बीकन निष्पादित करें, सभी परीक्षण निष्पादित करें
./kube-beacon
फ्लैग के साथ कुबे-बीकन निष्पादित करें, मांग पर परीक्षण निष्पादित करें
Usage: kube-Beacon [--version] [--help] <command> [<args>]
Available commands are:
-r , --report : run audit tests and generate failure report
-i , --include: execute only specific audit test, example -i=1.2.3,1.4.5
-e , --exclude: ignore specific audit tests, example -e=1.2.3,1.4.5
-n , --node: execute audit tests on specific node, example -n=master,-n=worker
-s , --spec: execute specific audit tests spec, example -s=gke, default=k8s
-v , --version: execute specific audit tests spec version, example -v=1.1.0,default=1.6.0
परीक्षण निष्पादित करें और विफलता परीक्षण रिपोर्ट उत्पन्न करें
./kube-beacon -r
k8s क्लस्टर में एक पॉड के रूप में कुबे बीकन निष्पादित करें
role=cluster-admin के साथ क्लस्टर रोल बाइंडिंग जोड़ें
kubectl create clusterrolebinding default-admin --clusterrole cluster-admin --serviceaccount=default:default
cd jobs
kubectl apply -f k8s.yaml
kubectl apply -f gke.yaml
kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
default kube-beacon-sc8g9 0/1 Completed 0 111s
kube-system event-exporter-gke-8489df9489-skcvv 2/2 Running 0 7m24s
kube-system fluentd-gke-7d5sl 2/2 Running 0 7m6s
kube-system fluentd-gke-f6q5d 2/2 Running 0 6m59s
kubectl logs kube-beacon-sc8g9
kubectl delete clusterrolebinding default-admin
kubectl delete -f k8s.yaml
कुबे-बीकन उपयोगकर्ता प्लगइन के लिए हुक प्रदान करता है उदाहरण :
go build -buildmode=plugin -o=~/<plugin folder>/bench_plugin.so /<plugin folder>/bench_plugin.go
cp /<plugin folder>/bench_plugin.so ~/.beacon/plugins/compile/bench_plugin.so
नोट: प्लगइन और बाइनरी को एक ही linux env के साथ संकलित करना होगा