内核参数
加固内核参数
说明
内核参数决定配置和应用特权的状态。内核提供用户可配置的系统控制,这一系统控制可微调或配置,该功能特性可通过控制各种可配置的内核参数,来提高操作系统的安全特性。比如:通过微调或配置网络选项,可有效提高系统的安全性。
实现
将表3中的加固项写入/etc/sysctl.conf文件中。
说明:
写入方式如下:
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
表 3 内核参数加固策略说明
加固项
|
加固项说明
|
加固建议
|
openEuler默认是否已加固为建议值
|
net.ipv4.icmp_echo_ignore_broadcasts
|
是否接受ICMP广播报文。加固策略为不接受。
|
1
|
是
|
net.ipv4.conf.all.rp_filter
|
验证数据包使用的实际源地址是否与路由表相关,以及使用该特定源IP地址的数据包是否通过接口获取其响应。加固策略为启用该项。
|
1
|
是
|
net.ipv4.conf.default.rp_filter
|
1
|
是
|
net.ipv4.ip_forward
|
IP Forwarding可阻止未授权的IP数据包渗透至网络。加固策略为禁用该特性。
|
0
|
是
|
net.ipv4.conf.all.accept_source_route
|
accept_source_route指允许数据包的发送者指定数据包的发送路径,以及返回给发送者的数据包所走的路径。加固策略为禁用该特性。
|
0
|
是
|
net.ipv4.conf.default.accept_source_route
|
0
|
是
|
net.ipv4.conf.all.accept_redirects
|
是否发送ICMP重定向报文。加固策略为禁止发送。
|
0
|
是
|
net.ipv4.conf.default.accept_redirects
|
0
|
是
|
net.ipv6.conf.all.accept_redirects
|
0
|
是
|
net.ipv6.conf.default.accept_redirects
|
0
|
是
|
net.ipv4.conf.all.send_redirects
|
是否将ICMP重定向报文发送至其他主机。只有当主机作为路由时,应启用该策略。加固策略为禁用该项。
|
0
|
是
|
net.ipv4.conf.default.send_redirects
|
0
|
是
|
net.ipv4.icmp_ignore_bogus_error_responses
|
忽略伪造的ICMP数据包,不会将其记录到日志,将节省大量的硬盘空间。加固策略为启用该项。
|
1
|
是
|
net.ipv4.tcp_syncookies
|
SYN Attack是一种通过占用系统资源迫使系统重启的DoS攻击。加固策略为开启TCP-SYN cookie保护。
|
1
|
是
|
kernel.dmesg_restrict
|
加固dmesg信息,仅允许管理员查看。
|
1
|
是
|
kernel.sched_autogroup_enabled
|
该选项决定内核是否对线程进行自动分组调度。开启后调度组之间互相竞争时间片,调度组内的线程再竞争调度组分配到的时间片。加固策略为不启用该项。
|
0
|
否
|
kernel.sysrq
|
禁用魔术键。
说明: 建议禁用魔术键,避免由于直接发送命令到内核对系统造成影响,增强内核安全性。
|
0
|
是
|
net.ipv4.conf.all.secure_redirects
|
设置系统是接收来自任何主机的ICMP重定向消息还是从默认网关列表中的网关处接收ICMP重定向消息。加固策略为采用前者。
|
0
|
是
|
net.ipv4.conf.default.secure_redirects
|
0
|
是
|
加载sysctl.conf文件中设置的内核参数。
sysctl -p /etc/sysctl.conf
其它安全建议
net.ipv4.icmp_echo_ignore_all:忽略ICMP请求。
出于安全考虑,建议开启此项(当前默认值为0,开启将值设为1)。
但开启后会忽略所有接收到的icmp echo请求的包(会导致机器无法ping通),建议用户根据实际组网场景决定是否开启此项。
net.ipv4.conf.all.log_martians/net.ipv4.conf.default.log_martians:对于仿冒/源路由/重定向数据包开启日志记录。
出于安全考虑,建议开启此项(当前默认值为0,开启将值设为1)。
但是开启后会记录带有不允许的地址的数据到内核日志中,存在冲日志风险,建议用户根据实际使用场景决定是否开启此项。
net.ipv4.tcp_timestamps:关闭tcp_timestamps。
出于安全考虑,建议关闭tcp_timestamps(当前默认值为1,关闭将值设为0)。
但是关闭此项会影响TCP超时重发的性能,建议用户根据实际使用场景决定是否关闭此项。
net.ipv4.tcp_max_syn_backlog:决定了SYN_RECV状态队列的数量。
该参数决定了SYN_RECV状态队列的数量,超过这个数量,系统将不再接受新的TCP连接请求,一定程度上可以防止系统资源耗尽。建议由用户根据实际使用场景配置合适的值。