SSH/SFTP 的防火墙威胁防护规则

SSH/SFTP 的防火墙威胁防护规则

防火墙是否可以通过检查传入的请求来提高 SFTP 服务的安全性(例如,阻止仅使用 SFTP 时不需要的任何 SSH 命令?

语境

我最近在我们的庄园中发现了一个虚拟机,它有一个公共 IP,可以向互联网公开 SFTP(即 SSH,不是 FTPS)和 HTTPS 服务。

我希望将网站置于 Azure App Gateway 后面,让其执行 SSL 卸载,然后通过 HTTP 将请求内部路由到后端 VM。

由于 SFTP 和 HTTPS 服务共享相同的主机名,我必须将其指向 Azure 防火墙,然后将端口 22 上的请求路由到 VM,将 80/443 上的请求路由到应用程序网关(80 上的请求只会获得 HTTP 301 重定向到 HTTPS 端点;443 上的请求将被路由到后端,如上所述)。

由于我们在公众和虚拟机之间设置了防火墙,因此最好使用它来进一步提高安全性...它已经只会在端口 22 上转发到虚拟机,所以这是一个胜利(例如阻止 RDP),它为我们提供了客户端 IP 白名单等选项(尽管对于我们的用例来说,这并不受欢迎,因为我们可以从任何地方建立合法连接)。

不过,我想知道应用程序网关的防火墙是否具有类似 OWASP 的 HTTP 规则,可以检查 SSH 流量并阻止任何看起来可疑的内容。

我的猜测是没有,因为 SSH 将使用 RSA 加密,密钥只有 VM 和客户端知道,而防火墙不知道...但我还没有深入研究 SFTP/SSH,所以可能存在我没有想到的选项,这些选项可以进一步提高解决方案的安全性?

答案1

据我所知 - 不行。您无法检查ssh流量和过滤命令。

您可以做的是过滤可以连接到此机器的端口 22 的 IP。您可以使用 Azure 网络安全组来做到这一点。检查这个文件关于安全组的详细信息。

相关内容