我曾看到有人提到保护 /dev/shm 和 /proc,我想知道您如何做到这一点以及它包括哪些内容?我认为这涉及某种形式的 /etc/sysctl.conf 编辑。
像这些?
kernel.exec-shield = 1
kernel.randomize_va_space = 1
答案1
我使用的流程基于CIS Linux 安全基准,就是修改/etc/fstab
为限制设备创建,执行以及/dev/shm
挂载时的suid权限。
shmfs /dev/shm tmpfs nodev,nosuid,noexec 0 0
对于 sysctl 设置,只需添加其中一些即可/etc/sysctl.conf
。运行sysctl -p
以激活。
# CIS benchmarks
fs.suid_dumpable = 0
kernel.exec-shield = 1
kernel.randomize_va_space = 2
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
答案2
ewwhite 已经提到了 CIS Linux 安全基准建议,我还想补充另一条值得一提的安全指南 -Red Hat Enterprise Linux 5 安全配置指南由 NSA 制定。除了nodev,nosuid,noexec
为 /dev/shm 添加选项外,第 2.5.1 节还提到了影响网络的内核参数建议 -
仅限主持人
net.ipv4.ip forward = 0
net.ipv4.conf.all.send redirects = 0
net.ipv4.conf.default.send redirects = 0
主机和路由器
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.secure_redirects = 0
net.ipv4.conf.all.log_martians = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.default.secure_redirects = 0
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_ignore_bogus_error_messages = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1