ADD SELinux and more
This commit is contained in:
@@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:ab8bc78d6b12079a9e4a4c5fbd0820b31aacc455f5e80299991c202ea17ce7fe
|
oid sha256:e5b5a04985574bebba113f5c7f6abf3943b1c976cdb31ac409723820b6ec8391
|
||||||
size 148931
|
size 216148
|
||||||
|
|||||||
@@ -30,7 +30,7 @@
|
|||||||
%\displaywidowpenalty=10000
|
%\displaywidowpenalty=10000
|
||||||
|
|
||||||
% microtype
|
% microtype
|
||||||
% \usepackage[tracking=smallcaps,letterspace=50]{microtype}
|
\usepackage[tracking=smallcaps,letterspace=50]{microtype}
|
||||||
|
|
||||||
% Math mode with value and units framework, e.g. for 15.11.18.1
|
% Math mode with value and units framework, e.g. for 15.11.18.1
|
||||||
\usepackage{siunitx}
|
\usepackage{siunitx}
|
||||||
|
|||||||
@@ -121,3 +121,183 @@ Dadurch können /proc/pid/mem-Zugriffe die Speicherzuordnungsberechtigungen für
|
|||||||
CONFIG\_PROC\_MEM\_NO\_FORCE [=n] \textbf{[N]}\\
|
CONFIG\_PROC\_MEM\_NO\_FORCE [=n] \textbf{[N]}\\
|
||||||
Niemals die Berechtigungen für die Speicherzuordnung außer Kraft setzen.
|
Niemals die Berechtigungen für die Speicherzuordnung außer Kraft setzen.
|
||||||
\english{Never override memory mapping permissions}
|
\english{Never override memory mapping permissions}
|
||||||
|
|
||||||
|
%17.4
|
||||||
|
\subsection{Enable different security models}
|
||||||
|
CONFIG\_SECURITY [=y] \textbf{[Y]}\\
|
||||||
|
Damit können Sie verschiedene Sicherheitsmodule auswählen, die in Ihrem Kernel konfiguriert werden sollen.
|
||||||
|
Wenn diese Option nicht ausgewählt ist, wird das Standard-Linux-Sicherheitsmodell verwendet.\\
|
||||||
|
Wenn Sie unsicher sind, wie Sie diese Frage beantworten sollen, antworten Sie mit N.
|
||||||
|
\english{This allows you to choose different security modules to be configured into your kernel.
|
||||||
|
If this option is not selected, the default Linux security model will be used.\\
|
||||||
|
If you are unsure how to answer this question, answer N.}
|
||||||
|
|
||||||
|
%17.5
|
||||||
|
\subsection{Enable the securityfs filesystem}
|
||||||
|
CONFIG\_SECURITYFS [=y] \textbf{[Y]}\\
|
||||||
|
Damit wird das securityfs-Dateisystem erstellt.
|
||||||
|
Es wird derzeit von verschiedenen Sicherheitsmodulen (AppArmor, IMA, SafeSetID, TOMOYO, TPM) verwendet.
|
||||||
|
Wenn Sie unsicher sind, wie Sie diese Frage beantworten sollen, antworten Sie mit N.
|
||||||
|
\english{This will build the securityfs filesystem.
|
||||||
|
It is currently used by various security modules (AppArmor, IMA, SafeSetID, TOMOYO, TPM).
|
||||||
|
If you are unsure how to answer this question, answer N.}
|
||||||
|
|
||||||
|
%17.6
|
||||||
|
\subsection{Socket and Networking Security Hooks}
|
||||||
|
CONFIG\_SECURITY\_NETWORK [=y] \textbf{[Y]}\\
|
||||||
|
Damit werden die Socket- und Netzwerksicherheitshaken aktiviert.
|
||||||
|
Wenn diese Option aktiviert ist, kann ein Sicherheitsmodul diese Hooks verwenden, um Socket- und Netzwerkzugangskontrollen zu implementieren.
|
||||||
|
Wenn Sie unsicher sind, wie Sie diese Frage beantworten sollen, antworten Sie mit N.
|
||||||
|
\english{This enables the socket and networking security hooks.
|
||||||
|
If enabled, a security module can use these hooks to implement socket and networking access controls.
|
||||||
|
If you are unsure how to answer this question, answer N.}
|
||||||
|
|
||||||
|
%17.7
|
||||||
|
\subsection{Infiniband Security Hooks}
|
||||||
|
CONFIG\_SECURITY\_INFINIBAND \colorbox{yellow!80}{[=y] \textbf{[N]}}\\
|
||||||
|
Damit werden die Infiniband-Sicherheitshaken aktiviert.
|
||||||
|
Wenn diese Option aktiviert ist, kann ein Sicher\-heits\-modul diese Hooks verwenden, um Infiniband-Zugangskontrollen zu implementieren.
|
||||||
|
Wenn Sie unsicher sind, wie Sie diese Frage beantworten sollen, antworten Sie mit N.
|
||||||
|
\english{This enables the Infiniband security hooks.
|
||||||
|
If enabled, a security module can use these hooks to implement Infiniband access controls.
|
||||||
|
If you are unsure how to answer this question, answer N.}
|
||||||
|
\note{Da wir am Laptop sicherlich keine Infiniband-Verbindungen haben, wählen wir N.}
|
||||||
|
|
||||||
|
%17.8
|
||||||
|
\subsection{XFRM (IPSec) Networking Security Hooks}
|
||||||
|
CONFIG\_SECURITY\_NETWORK\_XFRM [=y] \textbf{[Y]}\\
|
||||||
|
Damit werden die XFRM (IPSec)-Netzwerksicherheitshaken aktiviert.
|
||||||
|
Wenn diese Option aktiviert ist, kann ein Sicherheitsmodul diese Hooks verwenden, um Zugriffskontrollen pro Paket auf der Grundlage
|
||||||
|
von Kennzeichnungen zu implementieren, die aus der IPSec-Richtlinie abgeleitet werden.
|
||||||
|
Nicht-IPSec-Kommunikationen werden als unmarkiert bezeichnet, und nur Sockets, die zur Kommunikation unmarkierter Daten berechtigt sind,
|
||||||
|
können ohne IPSec senden.
|
||||||
|
Wenn Sie unsicher sind, wie Sie diese Frage beantworten sollen, antworten Sie mit N.
|
||||||
|
\english{This enables the XFRM (IPSec) networking security hooks.
|
||||||
|
If enabled, a security module can use these hooks to implement per-packet access controls based on labels derived from IPSec policy.
|
||||||
|
Non-IPSec communications are designated as unlabelled, and only sockets authorized to communicate unlabelled data can send without using IPSec.\\
|
||||||
|
If you are unsure how to answer this question, answer N.}
|
||||||
|
|
||||||
|
%17.9
|
||||||
|
\subsection{Security hooks for pathname based access control}
|
||||||
|
CONFIG\_SECURITY\_PATH [=y] \textbf{Y}\\
|
||||||
|
Damit werden die Sicherheitshaken für die auf Pfadnamen basierende Zugriffskontrolle aktiviert.
|
||||||
|
Wenn diese Option aktiviert ist, kann ein Sicherheitsmodul diese Hooks verwenden,
|
||||||
|
um eine auf Pfadnamen basierende Zugriffskontrolle zu implementieren.
|
||||||
|
Wenn Sie unsicher sind, wie Sie diese Frage beantworten sollen, antworten Sie mit N.
|
||||||
|
\english{This enables the security hooks for pathname based access control.
|
||||||
|
If enabled, a security module can use these hooks to implement pathname based access controls.
|
||||||
|
If you are unsure how to answer this question, answer N.}
|
||||||
|
|
||||||
|
%17.10
|
||||||
|
\subsection{Enable Intel(R) Trusted Execution Technology (Intel(R) TXT)}
|
||||||
|
CONFIG\_INTEL\_TXT [=n] \textbf{[N]}\\
|
||||||
|
Diese Option aktiviert die Unterstützung für das Booten des Kernels mit dem Trusted Boot (tboot) Modul.
|
||||||
|
Dadurch wird die Intel(R) Trusted Execution Technology verwendet, um einen gemessenen Start des Kernels durchzuführen.
|
||||||
|
Wenn das System Intel(R) TXT nicht unterstützt, hat dies keine Auswirkung.\\
|
||||||
|
Intel TXT bietet eine höhere Sicherheit für die Systemkonfiguration und den Anfangszustand sowie einen Schutz vor Datenrücksetzung.
|
||||||
|
Damit wird eine robuste anfängliche Kernel-Messung und -Überprüfung durchgeführt, die dazu beiträgt, dass die Kernel-Sicherheitsmechanismen korrekt funktionieren.
|
||||||
|
Dieses Schutzniveau erfordert eine Vertrauensbasis außerhalb des Kernels selbst.\\
|
||||||
|
Intel TXT trägt auch dazu bei, die Bedenken der Endbenutzer zu zerstreuen, die sich darauf verlassen wollen, dass ihre Hardware den VMM oder Kernel ausführt,
|
||||||
|
mit dem sie konfiguriert wurde, insbesondere, da sie dafür verantwortlich sind, VMs und Diensten, die darauf laufen, diese Sicherheit zu geben.
|
||||||
|
Weitere Informationen über Intel(R) TXT finden Sie unter \url{https://www.intel.com/technology/security/}.
|
||||||
|
Siehe \url{http://tboot.sourceforge.net} für weitere Informationen über tboot.\\
|
||||||
|
Unter \texttt{Documentation/arch/x86/intel\_txt.rst} finden Sie eine Beschreibung, wie Sie die Intel TXT-Unterstützung in einem Kernel-Boot aktivieren können.\\
|
||||||
|
Wenn Sie sich nicht sicher sind, ob dies erforderlich ist, antworten Sie mit N.
|
||||||
|
\english{This option enables support for booting the kernel with the Trusted Boot (tboot) module.
|
||||||
|
This will utilize Intel(R) Trusted Execution Technology to perform a measured launch of the kernel.
|
||||||
|
If the system does not support Intel(R) TXT, this will have no effect.\\
|
||||||
|
Intel TXT will provide higher assurance of system configuration and initial state as well as data reset protection.
|
||||||
|
This is used to create a robust initial kernel measurement and verification, which helps to ensure that kernel security mechanisms are functioning correctly.
|
||||||
|
This level of protection requires a root of trust outside of the kernel itself.\\
|
||||||
|
Intel TXT also helps solve real end user concerns about having confidence that their hardware is running the VMM or kernel that it was configured with,
|
||||||
|
especially since they may be responsible for providing such assurances to VMs and services running on it.\\
|
||||||
|
See \url{https://www.intel.com/technology/security/} for more information about Intel(R) TXT.
|
||||||
|
See \url{http://tboot.sourceforge.net} for more information about tboot.
|
||||||
|
See \texttt{Documentation/arch/x86/intel\_txt.rst} for a description of how to enable Intel TXT support in a kernel boot.\\
|
||||||
|
If you are unsure as to whether this is required, answer N.}
|
||||||
|
|
||||||
|
\subsection{Low address space for LSM to protect from user allocation}
|
||||||
|
CONFIG\_LSM\_MMAP\_MIN\_ADDR [=65536] \textbf{[65536]}\\
|
||||||
|
Dies ist der Teil des niedrigen virtuellen Speichers, der vor der Zuweisung im Benutzerraum geschützt werden sollte.
|
||||||
|
Wenn ein Benutzer davon abgehalten wird, auf niedrige Seiten zu schreiben, kann dies dazu beitragen, die Auswirkungen von NULL-Zeiger-Fehlern im Kernel zu verringern.\\
|
||||||
|
Für die meisten ia64-, ppc64- und x86-Benutzer mit viel Adressraum ist ein Wert von \num{65536} angemessen und sollte keine Probleme verursachen.
|
||||||
|
Auf ARM und anderen Architekturen sollte er nicht höher als 32768 sein.
|
||||||
|
Programme, die die vm86-Funktionalität nutzen oder diesen niedrigen Adressraum abbilden müssen, benötigen die für die Systeme, auf denen LSM läuft, spezifische Berechtigung.
|
||||||
|
\english{This is the portion of low virtual memory which should be protected from userspace allocation.
|
||||||
|
Keeping a user from writing to low pages can help reduce the impact of kernel NULL pointer bugs.\\
|
||||||
|
For most ia64, ppc64 and x86 users with lots of address space a value of 65536 is reasonable and should cause no problems.
|
||||||
|
On arm and other archs it should not be higher than 32768.
|
||||||
|
Programs which use vm86 functionality or have some need to map this low address space will need the permission specific to the systems running LSM.}
|
||||||
|
|
||||||
|
\subsection{Harden memory copies between kernel and userspace}
|
||||||
|
CONFIG\_HARDENED\_USERCOPY [=y] \textbf{[Y]}\\
|
||||||
|
Diese Option prüft beim Kopieren von Speicher in den Kernel oder aus dem Kernel (über die Funktionen \texttt{copy\_to\_user()} und \texttt{copy\_from\_user()})
|
||||||
|
auf offensichtlich falsche Speicherbereiche,
|
||||||
|
indem Speicher\-bereiche zurückgewiesen werden, die größer als das angegebene Heap-Objekt sind, sich über mehrere separat zugewiesene Seiten erstrecken,
|
||||||
|
sich nicht auf dem Prozess-Stack befinden oder Teil des Kerneltextes sind.
|
||||||
|
Dies verhindert ganze Klassen von Heap-Overflow-Exploits und ähnliche Kernel-Speicher-Exponierungen.
|
||||||
|
\english{This option checks for obviously wrong memory regions when copying memory to/from the kernel (via copy\_to\_user() and copy\_from\_user() functions)
|
||||||
|
by rejecting memory ranges that are larger than the specified heap object, span multiple separately allocated pages, are not on the process stack, or are part of the kernel text.
|
||||||
|
This prevents entire classes of heap overflow exploits and similar kernel memory exposures.}
|
||||||
|
|
||||||
|
\subsection{Harden common str/mem functions against buffer overflows}
|
||||||
|
CONFIG\_FORTIFY\_SOURCE [=y] \textbf{[Y]}\\
|
||||||
|
Erkennung von Pufferüberläufen in gängigen String- und Speicherfunktionen,
|
||||||
|
bei denen der Compiler die Puffergrößen ermitteln und validieren kann.
|
||||||
|
\english{Detect overflows of buffers in common string and memory functions where the compiler can determine and validate the buffer sizes.}
|
||||||
|
|
||||||
|
\subsection{Force all usermode helper calls through a single binary}
|
||||||
|
CONFIG\_STATIC\_USERMODEHELPER [=n] \textbf{[N]}\\
|
||||||
|
Standardmäßig kann der Kernel viele verschiedene Userspace-Binärprogramme über die \glqq usermode helper\grqq{} Kernelschnittstelle aufrufen.
|
||||||
|
Einige dieser Binärprogramme sind statisch definiert, entweder im Kernelcode selbst oder als Kernelkonfigurationsoption.
|
||||||
|
Einige von ihnen werden jedoch dynamisch zur Laufzeit erstellt oder können nach dem Start des Kernels geändert werden.
|
||||||
|
Um eine zusätzliche Sicherheitsebene zu schaffen, leiten Sie alle diese Aufrufe über eine einzige ausführbare Datei, deren Name nicht geändert werden kann.
|
||||||
|
Beachten Sie, dass es an dieser einzelnen Binärdatei liegt, die entsprechende \glqq echte\grqq{} Usermode-Hilfsprogrammdatei aufzurufen, die auf dem ersten Argument basiert, das ihr übergeben wurde.
|
||||||
|
Falls gewünscht, kann dieses Programm filtern und auswählen, welche echten Programme aufgerufen werden.
|
||||||
|
Wenn Sie möchten, dass alle Usermode-Hilfsprogramme deaktiviert werden, wählen Sie diese Option und setzen Sie STATIC\_USERMODEHELPER\_PATH auf eine leere Zeichenkette.
|
||||||
|
\english{By default, the kernel can call many different userspace binary programs through the ``usermode helper'' kernel interface.
|
||||||
|
Some of these binaries are statically defined either in the kernel code itself, or as a kernel configuration option.
|
||||||
|
However, some of these are dynamically created at runtime, or can be modified after the kernel has started up.
|
||||||
|
To provide an additional layer of security, route all of these calls through a single executable that can not have its name changed.\\
|
||||||
|
Note, it is up to this single binary to then call the relevant ``real'' usermode helper binary, based on the first argument passed to it.
|
||||||
|
If desired, this program can filter and pick and choose what real programs are called.
|
||||||
|
If you wish for all usermode helper programs are to be disabled, choose this option and then set STATIC\_USERMODEHELPER\_PATH
|
||||||
|
to an empty string.}
|
||||||
|
|
||||||
|
\subsection{SELinux Support}
|
||||||
|
CONFIG\_SECURITY\_SELINUX [=y] \textbf{[Y]}\\
|
||||||
|
Damit wird Security-Enhanced Linux (SELinux) ausgewählt.
|
||||||
|
Sie benötigen außerdem eine Richtlinienkonfiguration und ein gekennzeichnetes Dateisystem.
|
||||||
|
Wenn Sie unsicher sind, wie Sie diese Frage beantworten sollen, antworten Sie mit N.
|
||||||
|
\english{This selects Security-Enhanced Linux (SELinux).
|
||||||
|
You will also need a policy configuration and a labeled filesystem.
|
||||||
|
If you are unsure how to answer this question, answer N.}
|
||||||
|
|
||||||
|
\subsubsection{SELinux boot parameter}
|
||||||
|
CONFIG\_SECURITY\_SELINUX\_BOOTPARAM [=y] \textbf{[Y]}\\
|
||||||
|
Diese Option fügt einen Kernelparameter `selinux' hinzu, mit dem SELinux beim Booten deaktiviert werden kann.
|
||||||
|
Wenn diese Option ausgewählt ist, kann die SELinux-Funktionalität mit \texttt{selinux=0} in der Kernel-Befehlszeile deaktiviert werden.
|
||||||
|
Der Zweck dieser Option ist es, dass ein einzelnes Kernel-Image mit eingebautem,
|
||||||
|
aber nicht unbedingt aktiviertem SELinux verteilt werden kann.
|
||||||
|
\english{This option adds a kernel parameter `selinux', which allows SELinux to be disabled at boot.
|
||||||
|
If this option is selected, SELinux functionality can be disabled with selinux=0 on the kernel command line.
|
||||||
|
The purpose of this option is to allow a single kernel image to be distributed with SELinux built in, but not
|
||||||
|
necessarily enabled.}
|
||||||
|
|
||||||
|
\subsubsection{SELinux Development Support}
|
||||||
|
CONFIG\_SECURITY\_SELINUX\_DEVELOP [=y] \textbf{[Y]}\\
|
||||||
|
Dies aktiviert die Entwicklungsunterstützung von SELinux, die nützlich ist, um mit SELinux zu experimentieren und Richtlinien zu entwickeln.
|
||||||
|
Wenn Sie unsicher sind, sagen Sie Y.
|
||||||
|
Wenn diese Option aktiviert ist, startet der Kernel im permissiven Modus (alles protokollieren, nichts verweigern), es sei denn, Sie geben enforcing=1 in der Kernel-Kommandozeile an.
|
||||||
|
Sie können den Kernel über /sys/fs/selinux/enforce interaktiv zwischen dem erzwingenden und dem erlaubenden Modus umschalten (sofern die Richtlinie dies zulässt).
|
||||||
|
\english{This enables the development support option of SELinux, which is useful for experimenting with SELinux and developing policies.
|
||||||
|
If unsure, say Y.
|
||||||
|
With this option enabled, the kernel will start in permissive mode (log everything, deny nothing) unless you specify enforcing=1
|
||||||
|
on the kernel command line.
|
||||||
|
You can interactively toggle the kernel between enforcing mode and permissive mode (if permitted by the policy) via /sys/fs/selinux/enforce.}
|
||||||
|
|
||||||
|
\subsubsection{SELinux AVC Statistics}
|
||||||
|
CONFIG\_SECURITY\_SELINUX\_AVC\_STATS [=y] \textbf{[Y]}\\
|
||||||
|
Diese Option sammelt Zugriffsvektor-Cache-Statistiken in /sys/fs/selinux/avc/cache_stats, die mit Tools wie avcstat überwacht werden können.
|
||||||
|
\english{This option collects access vector cache statistics to /sys/fs/selinux/avc/cache_stats, which may be monitored via tools
|
||||||
|
such as avcstat.}
|
||||||
Reference in New Issue
Block a user