首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >阻止SSH布鲁特对IPv6的攻击

阻止SSH布鲁特对IPv6的攻击
EN

Unix & Linux用户
提问于 2015-07-17 09:49:24
回答 2查看 2.7K关注 0票数 10

最近我不得不处理一些有IPv6连接的服务器,我惊讶地发现fail2ban不支持IPv6,denyhost也不支持。在google上搜索,我发现人们通常推荐:

  • 通过IPv6禁用ssh登录(不是我的解决方案)
  • 仅在服务器上使用私钥/公钥身份验证,而不使用密码身份验证(有效,但大量攻击可能会耗费服务器大量的处理能力,甚至可能使服务器无法使用DDoS-ing )。
  • 使用ip6tables阻止来自同一IP的连续攻击
  • 使用具有IPv6支持的ssh卫士

从我到目前为止收集到的资料来看,禁止在IPv6中的地址与在IPv4上的地址有点不同,因为is不会给一个用户一个地址(/128),而是给一个完整的子网(我现在有一个/48)。因此,禁止单个IPv6地址对攻击是无效的。我已经搜索了关于ip6tables和阻止攻击检测的子网的主题,但是我没有找到任何信息。

有没有人知道守卫是否禁止IPv6攻击的子网?

有人知道如何做一个ip6tables配置,以禁止子网上的IPv6攻击?

或者有人知道比我已经发现的更好的减轻攻击的方法?

PS:我在系统上使用CentOS 7。

EN

回答 2

Unix & Linux用户

发布于 2015-07-20 09:21:34

为了攻击服务器,攻击者必须首先知道其IP地址。使用IPv6,您将有太多的地址可供选择,因此通过扫描IP范围找出正确的地址是不可行的。

这意味着您可以简单地为接口分配两个不同的IPv6地址。您允许站点的域名始终指向相同的IP地址,并且让sshd只监听新分配的IP地址。

更改之后,如果知道站点的域名和IP地址,攻击者将无法访问您的sshd。

当然,在使用ssh进行连接时,需要使用辅助主机名。该主机名可能比IPv6地址具有更大的熵。如果使用63个字母数字字符,猜测ssh的主机名是不可想象的。

如果有人发现用于sshd的IPv6地址,您只需将sshd移动到一个新的IPv6地址并更新AAAA记录。那他们就得从头开始。

如果您担心合法的ssh用户可能泄露主机名和/或IP地址,那么您可以为每个用户创建一个不同的主机名,以便使用ssh访问。最初,我将CNAME所有它们都变成一个单一的主机名,这样就只有一个AAAA记录需要更新。

票数 3
EN

Unix & Linux用户

发布于 2017-10-17 19:49:53

好消息是fail2ban最近发布了对IPv6的支持。

对于Debian IPv6服务器,我建议遵循本教程

对于CentOS IPv6服务器,我建议下载这里,然后执行以下命令,相应地替换版本号:

代码语言:javascript
复制
tar xvfj fail2ban-0.11.0.tar.bz2
cd fail2ban-0.11.0
python setup.py install

确保sshd的监狱在/etc/fail2ban/jail.local中启用,例如:

代码语言:javascript
复制
[sshd]
enabled=1
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/216689

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档