Preface |
|
ix | |
|
1 Security and Observability Strategy |
|
|
1 | (18) |
|
Security for Kubernetes: A New and Different World |
|
|
1 | (2) |
|
Deploying a Workload in Kubernetes: Security at Each Stage |
|
|
3 | (2) |
|
Build-Time Security: Shift Left |
|
|
5 | (1) |
|
|
6 | (1) |
|
|
7 | (6) |
|
|
13 | (2) |
|
|
15 | (2) |
|
Security and Observability |
|
|
17 | (1) |
|
|
18 | (1) |
|
2 Infrastructure Security |
|
|
19 | (14) |
|
|
20 | (1) |
|
Choice of Operating System |
|
|
20 | (1) |
|
|
21 | (1) |
|
|
21 | (1) |
|
Always Research the Latest Best Practices |
|
|
21 | (1) |
|
|
22 | (1) |
|
Secure the Kubernetes Datastore |
|
|
22 | (1) |
|
Secure the Kubernetes API Server |
|
|
23 | (1) |
|
Encrypt Kubernetes Secrets at Rest |
|
|
23 | (2) |
|
Rotate Credentials Frequently |
|
|
25 | (1) |
|
|
25 | (1) |
|
Restricting Cloud Metadata API Access |
|
|
26 | (1) |
|
|
26 | (2) |
|
Restrict Access to Alpha or Beta Features |
|
|
28 | (1) |
|
Upgrade Kubernetes Frequently |
|
|
29 | (1) |
|
Use a Managed Kubernetes Service |
|
|
29 | (1) |
|
|
29 | (1) |
|
|
30 | (2) |
|
|
32 | (1) |
|
3 Workload Deployment Controls |
|
|
33 | (20) |
|
Image Building and Scanning |
|
|
33 | (1) |
|
|
33 | (2) |
|
Container Image Hardening |
|
|
35 | (1) |
|
Container Image Scanning Solution |
|
|
36 | (1) |
|
|
37 | (1) |
|
Container Threat Analysis |
|
|
37 | (1) |
|
|
38 | (1) |
|
Scan Images by Registry Scanning Services |
|
|
39 | (1) |
|
|
40 | (1) |
|
|
41 | (1) |
|
Kubernetes Admission Controller |
|
|
42 | (1) |
|
Securing the CI/CD Pipeline |
|
|
42 | (1) |
|
|
43 | (1) |
|
|
43 | (1) |
|
|
43 | (1) |
|
Secrets Management Service |
|
|
44 | (1) |
|
Kubernetes Secrets Store CSI Driver |
|
|
44 | (1) |
|
Secrets Management Best Practices |
|
|
44 | (2) |
|
|
46 | (1) |
|
|
46 | (1) |
|
|
47 | (1) |
|
|
47 | (1) |
|
|
47 | (1) |
|
|
47 | (1) |
|
|
48 | (1) |
|
|
48 | (1) |
|
|
48 | (1) |
|
|
48 | (1) |
|
|
48 | (1) |
|
|
49 | (1) |
|
|
50 | (1) |
|
Privilege Escalation Mitigation |
|
|
50 | (1) |
|
|
51 | (2) |
|
4 Workload Runtime Security |
|
|
53 | (16) |
|
|
53 | (1) |
|
Using Pod Security Policies |
|
|
54 | (2) |
|
Pod Security Policy Capabilities |
|
|
56 | (2) |
|
|
58 | (1) |
|
|
59 | (1) |
|
|
59 | (1) |
|
Kubernetes Native Monitoring |
|
|
60 | (2) |
|
|
62 | (2) |
|
|
64 | (2) |
|
|
66 | (1) |
|
|
67 | (1) |
|
|
68 | (1) |
|
|
69 | (20) |
|
|
69 | (3) |
|
|
72 | (1) |
|
How Observability Works for Kubernetes |
|
|
72 | (4) |
|
Implementing Observability for Kubernetes |
|
|
76 | (3) |
|
|
79 | (1) |
|
|
80 | (1) |
|
Aggregation and Correlation |
|
|
81 | (3) |
|
|
84 | (1) |
|
|
84 | (1) |
|
Visualization of Network Flows |
|
|
85 | (1) |
|
Analytics and Troubleshooting |
|
|
86 | (1) |
|
|
86 | (1) |
|
|
87 | (1) |
|
|
87 | (2) |
|
6 Observability and Security |
|
|
89 | (10) |
|
|
89 | (3) |
|
|
92 | (1) |
|
Examples of Machine Learning Jobs |
|
|
93 | (1) |
|
Security Operations Center |
|
|
94 | (2) |
|
User and Entity Behavior Analytics |
|
|
96 | (2) |
|
|
98 | (1) |
|
|
99 | (12) |
|
|
99 | (1) |
|
Why Is Network Policy Important? |
|
|
100 | (1) |
|
Network Policy Implementations |
|
|
101 | (1) |
|
Network Policy Best Practices |
|
|
102 | (1) |
|
|
103 | (1) |
|
Not Just Mission-Critical Workloads |
|
|
103 | (1) |
|
|
103 | (2) |
|
Default Deny and Default App Policy |
|
|
105 | (2) |
|
|
107 | (1) |
|
Development Processes and Microservices Benefits |
|
|
107 | (1) |
|
|
108 | (1) |
|
|
108 | (1) |
|
Policy Staging and Audit Modes |
|
|
109 | (1) |
|
|
109 | (2) |
|
8 Managing Trust Across Teams |
|
|
111 | (10) |
|
Role-Based Access Control |
|
|
112 | (1) |
|
Limitations with Kubernetes Network Policies |
|
|
112 | (1) |
|
Richer Network Policy Implementations |
|
|
113 | (4) |
|
|
117 | (2) |
|
|
119 | (2) |
|
9 Exposing Services to External Clients |
|
|
121 | (16) |
|
Understanding Direct Pod Connections |
|
|
122 | (1) |
|
Understanding Kubernetes Services |
|
|
123 | (1) |
|
|
123 | (1) |
|
|
124 | (1) |
|
|
125 | (1) |
|
externalTrafficPolicy:local |
|
|
126 | (1) |
|
Network Policy Extensions |
|
|
127 | (1) |
|
Alternatives to kube-proxy |
|
|
128 | (1) |
|
|
129 | (1) |
|
Limiting Service External IPs |
|
|
130 | (2) |
|
|
132 | (1) |
|
Understanding Kubernetes Ingress |
|
|
133 | (3) |
|
|
136 | (1) |
|
10 Encryption of Data in Transit |
|
|
137 | (6) |
|
Building Encryption into Your Code |
|
|
138 | (1) |
|
Sidecar or Service Mesh Encryption |
|
|
139 | (1) |
|
|
140 | (2) |
|
|
142 | (1) |
|
11 Threat Defense and Intrusion Detection |
|
|
143 | (16) |
|
Threat Defense for Kubernetes (Stages of an Attack) |
|
|
143 | (4) |
|
|
147 | (1) |
|
Intrusion Detection Systems |
|
|
147 | (1) |
|
IP Address and Domain Name Threat Feeds |
|
|
147 | (3) |
|
Special Considerations for Domain Name Feeds |
|
|
150 | (4) |
|
Advanced Threat Defense Techniques |
|
|
154 | (1) |
|
|
154 | (1) |
|
DNS-Based Attacks and Defense |
|
|
155 | (1) |
|
|
156 | (3) |
Conclusion |
|
159 | (4) |
Index |
|
163 | |