Skip to content

Commit 24b1f35

Browse files
committed
Add a linux-security doc entry
Signed-off-by: Itamar Holder <[email protected]>
1 parent bec9d0d commit 24b1f35

File tree

1 file changed

+12
-45
lines changed

1 file changed

+12
-45
lines changed
Lines changed: 12 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
---
22
reviewers:
3-
- jayunit100
4-
- jsturtevant
5-
- marosset
6-
- perithompson
7-
title: Security For Windows Nodes
3+
- lmktfy
4+
title: Security For Linux Nodes
85
content_type: concept
96
weight: 40
107
---
@@ -17,46 +14,16 @@ This page describes security considerations and best practices specific to the L
1714

1815
## Protection for Secret data on nodes
1916

20-
On Windows, data from Secrets are written out in clear text onto the node's local
21-
storage (as compared to using tmpfs / in-memory filesystems on Linux). As a cluster
22-
operator, you should take both of the following additional measures:
17+
On Linux nodes, memory-backed volumes (such as [`secret`](/docs/concepts/configuration/secret/)
18+
volume mounts, or [`emptyDir`](/docs/concepts/storage/volumes/#emptydir) with `medium: Memory`)
19+
are implemented with a `tmpfs` filesystem.
2320

24-
1. Use file ACLs to secure the Secrets' file location.
25-
1. Apply volume-level encryption using
26-
[BitLocker](https://docs.microsoft.com/windows/security/information-protection/bitlocker/bitlocker-how-to-deploy-on-windows-server).
21+
If you have swap configured and use an older Linux kernel (or a current kernel and an unsupported configuration of Kubernetes),
22+
**memory** backed volumes can have data written to persistent storage.
2723

28-
## Container users
24+
The Linux kernel officially supports the `noswap` option from version 6.3,
25+
therefore it is recommended the used kernel version is 6.3 or later,
26+
or supports the `noswap` option via a backport, if swap is enabled on the node.
2927

30-
[RunAsUsername](/docs/tasks/configure-pod-container/configure-runasusername)
31-
can be specified for Windows Pods or containers to execute the container
32-
processes as specific user. This is roughly equivalent to
33-
[RunAsUser](/docs/concepts/security/pod-security-policy/#users-and-groups).
34-
35-
Windows containers offer two default user accounts, ContainerUser and ContainerAdministrator.
36-
The differences between these two user accounts are covered in
37-
[When to use ContainerAdmin and ContainerUser user accounts](https://docs.microsoft.com/virtualization/windowscontainers/manage-containers/container-security#when-to-use-containeradmin-and-containeruser-user-accounts)
38-
within Microsoft's _Secure Windows containers_ documentation.
39-
40-
Local users can be added to container images during the container build process.
41-
42-
{{< note >}}
43-
44-
* [Nano Server](https://hub.docker.com/_/microsoft-windows-nanoserver) based images run as
45-
`ContainerUser` by default
46-
* [Server Core](https://hub.docker.com/_/microsoft-windows-servercore) based images run as
47-
`ContainerAdministrator` by default
48-
49-
{{< /note >}}
50-
51-
Windows containers can also run as Active Directory identities by utilizing
52-
[Group Managed Service Accounts](/docs/tasks/configure-pod-container/configure-gmsa/)
53-
54-
## Pod-level security isolation
55-
56-
Linux-specific pod security context mechanisms (such as SELinux, AppArmor, Seccomp, or custom
57-
POSIX capabilities) are not supported on Windows nodes.
58-
59-
Privileged containers are [not supported](/docs/concepts/windows/intro/#compatibility-v1-pod-spec-containers-securitycontext)
60-
on Windows.
61-
Instead [HostProcess containers](/docs/tasks/configure-pod-container/create-hostprocess-pod)
62-
can be used on Windows to perform many of the tasks performed by privileged containers on Linux.
28+
Read [swap memory management](/docs/concepts/cluster-administration/swap-memory-management/#memory-backed-volumes)
29+
for more info.

0 commit comments

Comments
 (0)