已禁用 IPV6 但仍显示在 netstat 中

已禁用 IPV6 但仍显示在 netstat 中

我是新手,出于安全最佳实践,我想禁用 IPV6(不处理 IPV6 防火墙设置)。我使用 Hetzner 根服务器 Ubuntu 12.04。/etc/sysctl.conf 文件已经有默认 Hetzner 安装的设置,我只添加了最后 3 行

# ipv6 settings (no autoconfiguration) This part come from defau install 
net.ipv6.conf.default.autoconf=0
net.ipv6.conf.default.accept_dad=0
net.ipv6.conf.default.accept_ra=0
net.ipv6.conf.default.accept_ra_defrtr=0
net.ipv6.conf.default.accept_ra_rtr_pref=0
net.ipv6.conf.default.accept_ra_pinfo=0
net.ipv6.conf.default.accept_source_route=0
net.ipv6.conf.default.accept_redirects=0
net.ipv6.conf.default.forwarding=0
net.ipv6.conf.all.autoconf=0
net.ipv6.conf.all.accept_dad=0
net.ipv6.conf.all.accept_ra=0
net.ipv6.conf.all.accept_ra_defrtr=0
net.ipv6.conf.all.accept_ra_rtr_pref=0
net.ipv6.conf.all.accept_ra_pinfo=0
net.ipv6.conf.all.accept_source_route=0
net.ipv6.conf.all.accept_redirects=0
net.ipv6.conf.all.forwarding=0
# I have added following myself
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

当我执行 netstat -tulpn 时仍然得到 udp6 和 tcp6 结果

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      1222/php-fpm.conf)
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      1019/mysqld
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      1198/nginx
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      862/sshd
tcp6       0      0 :::80                   :::*                    LISTEN      1198/nginx
tcp6       0      0 :::22                   :::*                    LISTEN      862/sshd
udp        0      0 1XX.XX.XXX.XXX:123       0.0.0.0:*                           1241/ntpd
udp        0      0 127.0.0.1:123           0.0.0.0:*                           1241/ntpd
udp        0      0 0.0.0.0:123             0.0.0.0:*                           1241/ntpd
udp6       0      0 :::123                  :::*                                1241/ntpd

upd6 和 tcp6 是否意味着我仍然启用了 IPV6?我应该删除默认的 Hetzner IPV6 设置吗?谢谢大家。编辑:我已经执行了 sysctl -p 并且还尝试了重新启动。

答案1

以 root 或超级用户身份登录。在 /etc/modprobe/aliases 文件中,更改此行:

别名 net-pf-10 ipv6

到:

别名 net-pf-10 off

保存文件并重新启动系统。

答案2

对于 Ubuntu 来说,也许可以参见这个问题在 Ubuntu 社区网站上建议:

  1. 启动Ubuntu 8.04 LTS服务器版安装CD
  2. 选择你的语言
  3. 突出显示“安装 Ubuntu 服务器”(不要按“Enter”)
  4. 按功能键“F6”
  5. 在内核参数中添加“ipv6.blacklist=yes”(之后该行应该显示“... -- ipv6.blacklist=yes”)
  6. 按“Enter”键继续正常安装

将创建文件“/etc/modprobe.d/blacklist.local”,内容如下:

# Local module settings
# Created by the Debian installer
blacklist ipv6

相关内容