我发现自己遇到了一个有趣的问题;我需要将文件从一台 Windows 服务器推送到另一台。由于我们封锁了端口,SMB/CIFS 不可用。
如果我使用的是 Linux / OS X 系统,我会使用 SCP;WinRM 直到 powershell 3 才支持文件传输。
我可以使用 Windows Server 2008 R2 或 Server 2012 附带的任何服务。
那么问题是,谁能想出一个原创的解决方案?
编辑:为了帮助突出显示此要求,TCP 445 不可用;任何解决方案都需要使用不同的端口。
答案1
使用 SMB。
由于与 Active Directory 服务共享端口,SMB/CIFS 不可用。
我不确定你到底在说什么,但那不对。SMB 的现代实现使用 SMB over TCP,这发生在端口 445 上。SMB 的传统实现依赖于 NetBIOS over TCP,它使用端口 137-139 的组合。这些端口都不是 AD 专用的。
AD 依赖很多端口,最常见的有:
- 53 - DNS 解析
- 88 -凯尔伯洛斯
- 135 - RPC 端点映射
- 389 -LDAP
- 636 - 通过 SSL 的 LDAP
- 3268 - 全球目录
- 3269 - SSL 上的全局目录
- 49152 - 65535 - 用于 RPC 端点(在 2008 年及更高版本的 DC 上)
当然,客户端登录的某些功能使用 SMB(例如处理 GPO),但没有任何特定的身份验证或授权在与 SMB 相同的端口上运行。您似乎(错误地)过度保护了端口 445 :-)
答案2
由于您阻止了 Windows 本机用于身份验证和文件传输的端口,因此您很难找到本机协议来执行此操作。您可能能够为此使用 NFS。您可以安装 FileZilla 服务器(免费),并使用 psftp 或其他 SCP 客户端编写传输脚本。由于您没有本机选项,因此对您来说几乎是无限的。
答案3
Windows Server 2008 仅原生支持 CIFS 和 FTP(服务器和客户端)。其他一切都需要您安装/下载某物否则。由于 CIFS 不可用,因此只能使用 FTP。
答案4
鉴于以上所有讨论,我只想说,如果服务器位于 DMZ 中,您是否会阻止流量入站从专用网络传输到 DMZ?您可以从专用网络中的主机通过 SMB/CIFS 连接到 DMZ 中的服务器,然后从目标服务器提取文件,而不是推送文件。