对 openVZ 容器中的 sysctl.conf 的修改会生效吗?

对 openVZ 容器中的 sysctl.conf 的修改会生效吗?

我正在遵循安全指南(http://www.thefanclub.co.za/how-to/how-secure-ubuntu-1204-lts-server-part-1-basics)来加强我的开放VZ基于 VPS 网络服务器运行Ubuntu 12.04,其中一部分要求对 sysctl.conf 进行一些修改。但我不确定这一切是否真的有意义openVZ 容器,因为它是一个共享内核。

以下是针对 sysctl.conf 建议的编辑

# IP Spoofing protection
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1

# Ignore ICMP broadcast requests
net.ipv4.icmp_echo_ignore_broadcasts = 1

# Disable source packet routing
net.ipv4.conf.all.accept_source_route = 0
net.ipv6.conf.all.accept_source_route = 0 
net.ipv4.conf.default.accept_source_route = 0
net.ipv6.conf.default.accept_source_route = 0

# Ignore send redirects
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0

# Block SYN attacks
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 2048
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 5

# Log Martians
net.ipv4.conf.all.log_martians = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1

# Ignore ICMP redirects
net.ipv4.conf.all.accept_redirects = 0
net.ipv6.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0 
net.ipv6.conf.default.accept_redirects = 0

# Ignore Directed pings
net.ipv4.icmp_echo_ignore_all = 1

当我尝试使用我的 OpenVZ 容器测试这些时,我被拒绝了其中 3 个条目的权限,这些条目可能已被我的主机锁定。

error: permission denied on key 'net.ipv4.tcp_max_syn_backlog'
error: permission denied on key 'net.ipv4.tcp_synack_retries'
error: permission denied on key 'net.ipv4.tcp_syn_retries'

现在我的问题是:在 openVZ 容器环境中将这些包含到我的 sysctl.conf 中真的有意义吗?我想加强服务器的安全性,但我不确定它们是否会在我的 openVZ 容器中生效。

答案1

OpenVZ 的内核在主机和所有容器之间共享,因此禁止从容器内部修改可能影响其他容器和主机的设置。您可以尝试在主机上更改这些被拒绝的设置,它们可能适用于所有容器(OpenVZ 内核控制哪些应用,哪些不应用)

这个问题也在这里得到了回答:https://superuser.com/questions/659236/permission-denied-when-setting-values-in-sysctl-on-ubuntu-12-04

相关内容