如何在端口 445 被阻止的环境中挂载 Azure 文件共享

Posted

技术标签:

【中文标题】如何在端口 445 被阻止的环境中挂载 Azure 文件共享【英文标题】:How to mount Azure File Share in an environment where port 445 is blocked 【发布时间】:2021-12-29 21:00:09 【问题描述】:

我正在尝试在代理设置阻止全局 IP 地址的端口 445 的环境中装载 Azure 文件共享。

如下图所示,端口转发是用Azure Virtual Matchine (Linux)完成的,连接localhost:1445,可以445与Azure File Share通信。

但是,mount 命令不能使用 445 以外的任何端口。

我已经设置了netsh接口portproxy将445端口的通讯转发到localhost:1445,但是445端口不监听。

$ netsh interface portproxy add v4tov4 listenport = 445 listenaddr = xxx-storage.file.core.windows.net connectport = 1445 connectaddress = 127.0.0.1
$ netstat -ano | findstr: 445

如何在 445 端口被阻塞的环境中挂载 Azure 文件共享?

另外,文件同步无法在我的环境中使用。

【问题讨论】:

【参考方案1】:

我没有尝试过这种情况,但您可以通过 SSH 本地端口转发来完成此操作。关键是您的代理是否与端口 445 的块状 localhost 连接。

ssh -L 127.0.0.1:445:FILE_SHARE_URL:445 YOUR_LINUX_BOX_IP

需要在 Linux SSH 服务器(跳转主机)上启用转发(AllowTcpForwarding)。

Server-Side Configuration

我认为您还需要启用 Linux VM IP 转发,但我不确定。

由于该软件将连接到 localhost (127.0.0.1) 上的端口 445,因此大多数防火墙都会忽略该连接。然后端口 445 上的连接通过防火墙无法看到的 SSH 转发。然后,Linux 跳转主机打开到 FILE_SHARE_URL 的连接。

Local Forwarding

【讨论】:

以上是关于如何在端口 445 被阻止的环境中挂载 Azure 文件共享的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Azure 的 Vnet 中阻止公共端口并允许端口?

永恒之黑,封禁445端口

8.Azure文件(文件共享)-NAS(中)

want cry -- 137,139,445

勒索病毒哪些端口需要关闭

我可以在 Azure 网站上打开端口吗?