通过 openssh 保护 SFTP,我遗漏了什么吗?

通过 openssh 保护 SFTP,我遗漏了什么吗?

我正在使用 openssh 运行服务器 2019。一家公司将把文件传输到我们的服务器。这是我的配置:https://pastebin.com/aLUkSUdc

我想知道我还能做些什么来确保上面发布的配置中的服务器安全?我已经修改了 Windows 上的 ntfs 权限,以便用户无法浏览其他目录,但这也由 openssh 配置处理,但尽管如此,我仍然这样做了。我禁用了 SSH 登录,他们只能使用 sftp。我将他们的公钥添加到 c:\users\test.ssh\authorized_keys... 以及私钥的密码。

我是否遗漏了什么?您建议如何保护服务器安全?

答案1

您已经完成了几乎所有保护服务器安全的工作。我想补充一点,LogLevel Debug了解哪个用户使用了哪个公钥,并获取有关连接尝试的额外信息。

UsePrivilegeSeparation sandbox如果 Windows 支持此选项,您也可以添加。这将在身份验证过程中添加额外的限制,而不会影响功能。

在向用户提供连接参数时,您应该向他们提供 ssh 服务器公钥的指纹,并指示他们在第一次连接时检查这些指纹,以便他们能够确认他们所连接的服务器确实是他们想要连接的服务器。他们绝不应该接受未知的指纹。(即使这是一项组织措施,您也无法保证他们会按照您的指示接受所提出的任何指纹)。

如果您的服务器有多个地址,您还可以限制ListenAddress您期望用户连接的地址,如果您不支持 IPv6,则可以限制AddressFamilyinet以尽量减少攻击面。

相关内容