Lynx framebuffers multidomain implementation.
[linux/elbrus.git] / security / Kconfig
blob4b6da4d144c78df1c3b9947a764f908a8db20ec5
2 # Security configuration
5 menu "Security options"
7 source security/keys/Kconfig
9 config MAC_
10         bool "Enable MCST Mandatory Access Control module support"
11         default y
12         help
13         This option enables MCST Mandatory Access Control.
14         Default is enable.
16 config SECURITY_DMESG_RESTRICT
17         bool "Restrict unprivileged access to the kernel syslog"
18         default n
19         help
20           This enforces restrictions on unprivileged users reading the kernel
21           syslog via dmesg(8).
23           If this option is not selected, no restrictions will be enforced
24           unless the dmesg_restrict sysctl is explicitly set to (1).
26           If you are unsure how to answer this question, answer N.
28 config SECURITY
29         bool "Enable different security models"
30         depends on SYSFS
31         help
32           This allows you to choose different security modules to be
33           configured into your kernel.
35           If this option is not selected, the default Linux security
36           model will be used.
38           If you are unsure how to answer this question, answer N.
40 config SECURITYFS
41         bool "Enable the securityfs filesystem"
42         help
43           This will build the securityfs filesystem.  It is currently used by
44           the TPM bios character driver and IMA, an integrity provider.  It is
45           not used by SELinux or SMACK.
47           If you are unsure how to answer this question, answer N.
49 config SECURITY_NETWORK
50         bool "Socket and Networking Security Hooks"
51         depends on SECURITY
52         help
53           This enables the socket and networking security hooks.
54           If enabled, a security module can use these hooks to
55           implement socket and networking access controls.
56           If you are unsure how to answer this question, answer N.
58 config SECURITY_NETWORK_XFRM
59         bool "XFRM (IPSec) Networking Security Hooks"
60         depends on XFRM && SECURITY_NETWORK
61         help
62           This enables the XFRM (IPSec) networking security hooks.
63           If enabled, a security module can use these hooks to
64           implement per-packet access controls based on labels
65           derived from IPSec policy.  Non-IPSec communications are
66           designated as unlabelled, and only sockets authorized
67           to communicate unlabelled data can send without using
68           IPSec.
69           If you are unsure how to answer this question, answer N.
71 config SECURITY_PATH
72         bool "Security hooks for pathname based access control"
73         depends on SECURITY
74         help
75           This enables the security hooks for pathname based access control.
76           If enabled, a security module can use these hooks to
77           implement pathname based access controls.
78           If you are unsure how to answer this question, answer N.
80 config INTEL_TXT
81         bool "Enable Intel(R) Trusted Execution Technology (Intel(R) TXT)"
82         depends on HAVE_INTEL_TXT
83         help
84           This option enables support for booting the kernel with the
85           Trusted Boot (tboot) module. This will utilize
86           Intel(R) Trusted Execution Technology to perform a measured launch
87           of the kernel. If the system does not support Intel(R) TXT, this
88           will have no effect.
90           Intel TXT will provide higher assurance of system configuration and
91           initial state as well as data reset protection.  This is used to
92           create a robust initial kernel measurement and verification, which
93           helps to ensure that kernel security mechanisms are functioning
94           correctly. This level of protection requires a root of trust outside
95           of the kernel itself.
97           Intel TXT also helps solve real end user concerns about having
98           confidence that their hardware is running the VMM or kernel that
99           it was configured with, especially since they may be responsible for
100           providing such assurances to VMs and services running on it.
102           See <http://www.intel.com/technology/security/> for more information
103           about Intel(R) TXT.
104           See <http://tboot.sourceforge.net> for more information about tboot.
105           See Documentation/intel_txt.txt for a description of how to enable
106           Intel TXT support in a kernel boot.
108           If you are unsure as to whether this is required, answer N.
110 config LSM_MMAP_MIN_ADDR
111         int "Low address space for LSM to protect from user allocation"
112         depends on SECURITY && SECURITY_SELINUX
113         default 32768 if ARM || (ARM64 && COMPAT)
114         default 65536
115         help
116           This is the portion of low virtual memory which should be protected
117           from userspace allocation.  Keeping a user from writing to low pages
118           can help reduce the impact of kernel NULL pointer bugs.
120           For most ia64, ppc64 and x86 users with lots of address space
121           a value of 65536 is reasonable and should cause no problems.
122           On arm and other archs it should not be higher than 32768.
123           Programs which use vm86 functionality or have some need to map
124           this low address space will need the permission specific to the
125           systems running LSM.
127 source security/selinux/Kconfig
128 source security/smack/Kconfig
129 source security/tomoyo/Kconfig
130 source security/apparmor/Kconfig
131 source security/yama/Kconfig
133 source security/integrity/Kconfig
135 choice
136         prompt "Default security module"
137         default DEFAULT_SECURITY_SELINUX if SECURITY_SELINUX
138         default DEFAULT_SECURITY_SMACK if SECURITY_SMACK
139         default DEFAULT_SECURITY_TOMOYO if SECURITY_TOMOYO
140         default DEFAULT_SECURITY_APPARMOR if SECURITY_APPARMOR
141         default DEFAULT_SECURITY_YAMA if SECURITY_YAMA
142         default DEFAULT_SECURITY_DAC
144         help
145           Select the security module that will be used by default if the
146           kernel parameter security= is not specified.
148         config DEFAULT_SECURITY_SELINUX
149                 bool "SELinux" if SECURITY_SELINUX=y
151         config DEFAULT_SECURITY_SMACK
152                 bool "Simplified Mandatory Access Control" if SECURITY_SMACK=y
154         config DEFAULT_SECURITY_TOMOYO
155                 bool "TOMOYO" if SECURITY_TOMOYO=y
157         config DEFAULT_SECURITY_APPARMOR
158                 bool "AppArmor" if SECURITY_APPARMOR=y
160         config DEFAULT_SECURITY_YAMA
161                 bool "Yama" if SECURITY_YAMA=y
163         config DEFAULT_SECURITY_DAC
164                 bool "Unix Discretionary Access Controls"
166 endchoice
168 config DEFAULT_SECURITY
169         string
170         default "selinux" if DEFAULT_SECURITY_SELINUX
171         default "smack" if DEFAULT_SECURITY_SMACK
172         default "tomoyo" if DEFAULT_SECURITY_TOMOYO
173         default "apparmor" if DEFAULT_SECURITY_APPARMOR
174         default "yama" if DEFAULT_SECURITY_YAMA
175         default "" if DEFAULT_SECURITY_DAC
177 endmenu