![在 Windows 2003 域控制器上运行 cygwin sshd 有多安全](https://linux22.com/image/549526/%E5%9C%A8%20Windows%202003%20%E5%9F%9F%E6%8E%A7%E5%88%B6%E5%99%A8%E4%B8%8A%E8%BF%90%E8%A1%8C%20cygwin%20sshd%20%E6%9C%89%E5%A4%9A%E5%AE%89%E5%85%A8.png)
我已经在 Windows 2003 DC 上安装了 cygwin(运行 sshd)几次。
但现在另一位真正负责这个域名的管理员问我这是否真的安全。
编辑::我改变了问题以使其更适合接受的答案。我已将我最初想到的问题的另一部分移至新线程,请点击此处。
答案1
一般情况下,你应该避免在服务器上安装过多的服务。考虑到 Active Directory 域控制器计算机的敏感工作(存储用户凭据和执行身份验证),你应该比文件服务器更加关注它们。
话虽如此,但一台没有安装软件的服务器计算机是毫无用处的。您需要进行风险评估,权衡风险与软件提供的好处,并在此基础上做出决定。对于您公开的每项服务,您需要完成这个一般过程(即使这只是您“在脑海中”做的事情,而不是正式的过程)。肆意公开服务而不权衡风险(或者更糟的是,在没有好处的情况下公开服务——想想 Windows 2000 Server 中的默认 IIS 安装)是一个坏主意。
针对您的具体疑问:
鉴于 OpenSSH 所提供服务的性质,它已受到社区的严格审查。不幸的是,要允许sshd
冒充用户,您必须使用相当特权的凭据(大多数情况下为 SYSTEM)来运行它,因此守护进程本身中的错误可能会导致远程 SYSTEM 级入侵。诚然,我认为 OpenSSH 中出现此类入侵的可能性相当低,但仍然有可能。
你应该对入站连接尝试进行某种速率限制(以防止 DOS 攻击——我喜欢sshd_block,个人而言)。您应该认真考虑仅允许基于证书的登录(而不是密码)。您应该将可以通过 SSH 访问服务器的用户数量限制为仅需要访问权限的用户。如果您不需要这些功能,则应禁用端口转发和/或 SFTP。
我的感受总结如下:在设置时仔细考虑你正在做的事情并做好“功课”,你会没事的。
答案2
我想不出有什么可能出错,但这并不意味着黑客也不会出错。