使用 AnyDesk TCP 远程挂载文件夹到本地设备
对于软件开发人员来说,远程工作可能是一个挑战。 能够访问在其他设备中的源代码通常可以使工作变得更快、更舒适。 使用 AnyDesk,您可以设置 TCP 通道连接,在本地访问远程设备上的文件,而无需将它们下载到本地电脑上。
在本文中,我将向您展示如何使用 TCP 通道和 AnyDesk for Linux 在本地设备中挂载远程文件夹 。 此解决方案比传统的远程桌面访问更节省 CPU 和流量。 而此功能亦同样适用于AnyDesk for Window及 MacOS。
使用 SSH 设置直接通道连接
与任何其他 TCP 连接一样,只有在于本地设备上看见远程主机的时候,才可以使用SSH。 这些情况包括远程主机与本地设备位于同一本地网络;或是具有外部 IP 地址。 可是,当你希望从家里连接到办公室 PC 时,情况通常并非如此。
但是,使用 AnyDesk,您可以连接到任何电脑,而无需考虑任何防火墙或 NATs。 使用 AnyDesk 的 TCP 通道功能,您可以设置到远程电脑的通道并使用 SSH,就好像让两台电脑身处同一个网络中一样。 你可以从通讯录的AnyDesk 客户端的上下文菜单中打开 TCP 通道设置:
在会话中,您将看到正向通道和反向通道的设置。 而基于今次示范的用途,我们选择了正向通道。 要转发 SSH 端口,我们需要在设置窗口中添加一条规则:
在上面的示例中,我们将远程设备的 TCP 端口 22(SSH 使用的远程端口)转发到本地端口 2222。 确切的端口号无关紧要,而我们则选择了以 2222 为例。
一旦您连接到相应的 AnyDesk ID,该通道就会被激活。 连接类型无关紧要,而通道将在一般及文件传输模式下工作。 我使用了文件传输模式来节省流量和 CPU 时间。
测试 SSH 连接
现在,在您创建通道规则并连接到远程设备之后,是时候测试 SSH 连接了。 在终端中运行以下命令:
ssh -p 2222 <username>@localhost
将 <username> 替换为您办公室 PC 上的用户名。 如果您已正确完成所有操作,您将被要求在远程电脑上输入密码。 检查访问权限后,您可以关闭远程外壳,因为你不再需要使用它。
下一步是将本地 SSH 密钥复制到办公室的电脑,这样办公室电脑将允许您无需密码即可访问。 如果您尚未生成你的 SSH 密钥,请使用以下命令生成:
ssh-keygen
现在将密钥复制到远程设备:
ssh-copy-id -p 2222 <username>@localhost
完成此步骤后,您应该能够在没有密码的情况下连接到 SSH。
准备访问远程文件夹
初始设置完成后,让我们设置工作环境。 这里的技巧是使用 SSHFS 在本地挂载远程文件夹。 如果你没有安装 SSHFS,你可以通过 DEB -based的分发系统,简单地通过 apt 完成:
sudo apt install sshfs
现在你可以在本地设备创建一个您希望安装远程文件夹的文件夹。 我建议两个文件夹具有完全相同的路径。 在此示例中,假设您的工作文件夹是:
/home/johndoe/work
现在让我们在本地设备中挂载它:
sshfs -p 2222 johndoe@localhost:/home/johndoe/work /home/johndoe/work
如果一切设置正确,您的本地设备将已经载有你的远程文件。 不要忘记您需要一个活跃的 AnyDesk 连接才能使 TCP 通道保持运作。 关闭 AnyDesk 连接后,该文件夹也将立即卸载。
自动化命令
到目前为止,我们必须手动执行命令才能访问远程数据。 而事实上,AnyDesk 允许您自动执行此过程。 和以前一样,从上下文菜单中打开 TCP 通道设置。 在对话框的最底部,您将看到复选框:Run a custom script。 设置一个复选标记,每次建立 TCP 通道时,你所设定的程序脚本将在本地执行。 让我们创建自定义程序脚本来自动挂载我们的工作文件夹。
现在单击保存并连接。 该文件夹应在您连接后自动挂载,并在断开连接时卸载。 您也可以好好的使用你最喜欢的 IDE 或文本编辑器编辑挂载文件夹中的文件。
自动化功能还有更多的用途。 例如,您可以在程序脚本中添加一行以自动打开远程外壳。 我使用 Terminator 作为我最常用的终端仿真器。 在那里您可以创建一个自定义配置文件,在启动时打开远程外壳:
只需将以下命令添加到程序脚本中,您就可以在连接后立即准备好远程外壳:
terminator -p remote
访问内部网络资源
有时候我们需要访问一些只能在办公室内使用的内部网络资源,例如问题跟踪器等。 你可以通过 SSH 可以轻松设置一个 SOCKS5 网络代理:
ssh -D 7000 -N -p 2222 johndoe@localhost
这个代理将在 localhost 的端口 7000 上保持活跃状态。 如果你将此行添加到 AnyDesk TCP 隧道程序脚本,系统将会为你自动设置这个代理。 要使用它,我建议你可以使用名为 FoxyProxy 的扩展浏览器,根据 URL 模式进行自定义代理设置。
结论
作为经典远程桌面访问的其中一个选项,AnyDesk for Linux 能够为你提供更好的工作体验:通过 SSHFS 挂载远程文件夹,使用本地设备访问远程文件。 这大大地促进了远程工作,尤其是当您需要在本地设备上处理远程文件或源代码时。
AnyDesk for Linux 易于使用,亦可与任何操作系统建立持续稳定的连接。 我们的远程桌面软件适用于大量 Linux 发行版,包括 Ubuntu、Red Hat 和 openSUSE。 无论您拥有何种类型的许可证,你也能够享受各种免费的服务更新。
有兴趣开始使用 AnyDesk for Linux ? 立即选择您的 Linux 发行版,并按照软件软件包管理系统进行快速轻松的安装。
订阅我们的邮件推送