我最近在家里设置了一个 Confluence 服务器,并使用 CCProxy 将外部端口 80 路由到 Confluence 服务器使用的内部端口 8090。但我看到 CCProxy 日志中不时出现未知 IP 地址。我猜这是因为机器人扫描随机 IP 以查找可用端口以检查漏洞。
当我在 NAS 上打开端口 22 以启用 SFTP 时,我看到了同样的事情。突然,我的 NAS 给我发了一封电子邮件,要求阻止这个和那个试图通过 SSH(也使用端口 22)访问的 IP 地址。在这种情况下,我只是将 SFTP 端口更改为数千个区域中的某个随机端口。
但是我该怎么做才能防止这种情况发生呢?采取什么措施来保护开放端口才是合理的呢?或者我是否可以放心地相信用户名/密码登录足以抵御黑客攻击?
答案1
你是对的,这些是扫描开放端口的机器人,它们通常使用已知的电子邮件和密码组合执行字典攻击。
鉴于它们仅扫描某些端口,您可以将端口号更改为端口 80 以外的其他端口,并在 url 中添加该端口,例如:mydomain.com:8090 以使其正常工作。
但是,如果您设置了 5 次错误登录尝试后永久禁止 IP 地址,那么您也是安全的。您的日志中会有很多此类攻击,如果您的日志足够详细,您很可能会不断看到相同的主机名或模式从不同的 IP 地址重新出现。甚至不要考虑只进行临时禁止。
答案2
有很多方法可以做到这一点。
我建议在访问 Confluence 之前设置 VPN 并要求通过 VPN 访问。
下一步是使用 HTTPS。如果您将其置于代理之后,您甚至可能需要客户端证书。
使用类似 fail2ban 和合适的密码可以阻止暴力攻击,但不会利用 Confluence 中存在的易受攻击的代码(如果存在的话)(我猜可能存在)。在完成其他验证之前完全阻止对应用程序的访问肯定更好。