From 8dedfa8f6f082669ea2fa30ac05b94e396bfa464 Mon Sep 17 00:00:00 2001 From: Inaki Fernandez Date: Thu, 21 May 2020 10:26:03 +0200 Subject: [PATCH] jenkins CasC ref and markdown fixes --- .gitignore | 1 + ...kubernetes-security-controls-landscape.jpg | Bin 0 -> 101464 bytes ...ity-controls-landscape.jpg:Zone.Identifier | 4 ++ docs/index.md | 2 +- docs/kubernetes.md | 31 ++++++++++++ docs/monitoring.md | 44 +++++++++--------- docs/openshift.md | 35 +++++++------- docs/scripts/README.md | 3 ++ 8 files changed, 80 insertions(+), 40 deletions(-) create mode 100644 .gitignore create mode 100644 docs/images/kubernetes-security-controls-landscape.jpg create mode 100644 docs/images/kubernetes-security-controls-landscape.jpg:Zone.Identifier diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..1d74e219 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.vscode/ diff --git a/docs/images/kubernetes-security-controls-landscape.jpg b/docs/images/kubernetes-security-controls-landscape.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1fbb9d3632817351ce60ca1324ae238528b9ab7b GIT binary patch literal 101464 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 --namespace= -o yaml | sed ‘s/names * [Microsoft.com: Attack matrix for Kubernetes 🌟](https://www.microsoft.com/security/blog/2020/04/02/attack-matrix-kubernetes/) * [codeburst.io: 7 Kubernetes Security Best Practices You Must Follow](https://codeburst.io/7-kubernetes-security-best-practices-you-must-follow-ae32f1ed6444) +### Security Best Practices Across Build, Deploy, and Runtime Phases +- [Kubernetes Security 101: Risks and 29 Best Practices 🌟](https://www.stackrox.com/post/2020/05/kubernetes-security-101/) +- Build Phase: + 1. Use minimal base images + 2. Don’t add unnecessary components + 3. Use up-to-date images only + 4. Use an image scanner to identify known vulnerabilities + 5. Integrate security into your CI/CD pipeline + 6. Label non-fixable vulnerabilities +- Deploy Phase: + 1. Use namespaces to isolate sensitive workloads + 2. Use Kubernetes network policies to control traffic between pods and clusters + 3. Prevent overly permissive access to secrets + 4. Assess the privileges used by containers + 5. Assess image provenance, including registries + 6. Extend your image scanning to deploy phase + 7. Use labels and annotations appropriately + 8. Enable Kubernetes role-based access control (RBAC) +- Runtime Phase: + 1. Leverage contextual information in Kubernetes + 2. Extend vulnerability scanning to running deployments + 3. Use Kubernetes built-in controls when available to tighten security + 4. Monitor network traffic to limit unnecessary or insecure communication + 5. Leverage process whitelisting + 6. Compare and analyze different runtime activity in pods of the same deployments + 7. If breached, scale suspicious pods to zero + +[![kubernetes security controls landscape](images/kubernetes-security-controls-landscape.jpg)](https://www.stackrox.com/post/2020/05/kubernetes-security-101/) + ### Kubernetes Authentication and Authorization * [kubernetes.io: Authenticating](https://kubernetes.io/docs/reference/access-authn-authz/authentication/) * [kubernetes.io: Access Clusters Using the Kubernetes API](https://kubernetes.io/docs/tasks/administer-cluster/access-cluster-api/) diff --git a/docs/monitoring.md b/docs/monitoring.md index 555de9b7..7f6e7243 100644 --- a/docs/monitoring.md +++ b/docs/monitoring.md @@ -691,28 +691,28 @@ JMeter|Artemis Grafana|Artemis Dashboard - Thread Dump Analyzers: [fastThread](https://fastthread.io/), [Spotify TDA](https://spotify.github.io/threaddump-analyzer/), [IBM Thread and Monitor Dump Analyzer for Java](https://www.ibm.com/support/pages/ibm-thread-and-monitor-dump-analyzer-java-tmda), [TDA - Thread Dump Analyzer](https://github.com/irockel/tda) - [FastThread.io](https://fastthread.io/): Thread dumps can be uploaded via Web or API Call from within the POD (jstack must be available within the container): - ```bash - #!/bin/sh - # Generate N thread dumps of the process PID with an INTERVAL between each dump. - if [ $# -ne 3 ]; then -    echo Generates Java thread dumps using the jstack command. -    echo -    echo usage: $0 process_id repetitions interval -    exit 1 - fi  - PID=$1 - N=$2 - INTERVAL=$3  - for ((i=1;i<=$N;i++)) - do -    d=$(date +%Y%m%d-%H%M%S) -    dump="threaddump-$PID-$d.txt" -    echo $i of $N: $dump -    jstack -l $PID > $dump -    curl -X POST --data-binary @./$dump https://fastthread.io/fastthread-api?apiKey= --header "Content-Type:text" -    sleep $INTERVAL - done - ``` +```bash +#!/bin/sh +# Generate N thread dumps of the process PID with an INTERVAL between each dump. +if [ $# -ne 3 ]; then +   echo Generates Java thread dumps using the jstack command. +   echo +   echo usage: $0 process_id repetitions interval +   exit 1 +fi  +PID=$1 +N=$2 +INTERVAL=$3  +for ((i=1;i<=$N;i++)) +do +   d=$(date +%Y%m%d-%H%M%S) +   dump="threaddump-$PID-$d.txt" +   echo $i of $N: $dump +   jstack -l $PID > $dump +   curl -X POST --data-binary @./$dump https://fastthread.io/fastthread-api?apiKey= --header "Content-Type:text" +   sleep $INTERVAL +done +``` - How to run this script from within the POD: ```./script_thread_dump.sh 1 15 3```, where: - “1”: PID of java process (“1” in containers running a single process, check with “ps ux” command). diff --git a/docs/openshift.md b/docs/openshift.md index 157eee13..23c5ea2b 100644 --- a/docs/openshift.md +++ b/docs/openshift.md @@ -324,16 +324,17 @@ Industry momentum has aligned behind Kubernetes as the orchestration platform fo - The supported method of using **Helm charts** with Openshift is via the [Helm Operator](https://www.openshift.com/blog/build-kubernetes-operators-from-helm-charts-in-5-steps) - [twitter.com/operatorhubio](https://twitter.com/operatorhubio) - View the list of Operators available to the cluster from the OperatorHub: - ```bash - $ oc get packagemanifests -n openshift-marketplace - NAME AGE - amq-streams 14h - packageserver 15h - couchbase-enterprise 14h - mongodb-enterprise 14h - etcd 14h myoperator 14h - ... - ``` + +```bash +$ oc get packagemanifests -n openshift-marketplace +NAME AGE +amq-streams 14h +packageserver 15h +couchbase-enterprise 14h +mongodb-enterprise 14h +etcd 14h myoperator 14h +... +``` ![OCP Operators](images/ocp_operators.png) @@ -520,13 +521,13 @@ OpenShift 4.1|5.6.16|?|5.6.16|No - Openshift 4 on your laptop: There is a working solution for single node OpenShift cluster. It is provided by a new project called [CodeReady Containers](https://github.com/code-ready/crc/). - [Procedure:](https://developers.redhat.com/blog/2019/09/05/red-hat-openshift-4-on-your-laptop-introducing-red-hat-codeready-containers/) - ```bash - untar - crc setup - crc start - environment variables - oc login - ``` +```bash +untar +crc setup +crc start +environment variables +oc login +``` - [Red Hat OpenShift 4.2 on your laptop: Introducing Red Hat CodeReady Containers](https://developers.redhat.com/blog/2019/09/05/red-hat-openshift-4-on-your-laptop-introducing-red-hat-codeready-containers/) diff --git a/docs/scripts/README.md b/docs/scripts/README.md index 61b1a6e2..4ab9e7ef 100644 --- a/docs/scripts/README.md +++ b/docs/scripts/README.md @@ -6,3 +6,6 @@ Grab them from here: [awesome-kubernetes/scripts](https://github.com/inafev/awesome-kubernetes/tree/master/scripts) +## Jenkins Configuration as Code on Kubernetes +* [Jenkins Configuration as Code on Kubernetes 🌟](https://github.com/inafev/jenkins-CasC-kubernetes-demo) A Codecentric/Jenkins Helm 3 Sample Chart on Digital Ocean Kubernetes with Spring Petclinic Demo Pipeline +