我想创建一个服务,允许我显示存储在我通过ssh
连接的远程服务器的文件系统中的文档和媒体(想想PDF和JPEG)。 X11转发不会削减它,因为它太慢了。相反,我想设计一个协议,根据需要从远程系统复制文件,然后显示它们。
我的问题有两个:
如何获取远程计算机上的端口?由于我可能有多个连接,我不能简单地使用一个众所周知的端口 - 我将不得不动态分配一个端口。
我有端口后,如何将其与远程计算机上的显示应用程序进行通信? SSH X11转发通过设置DISPLAY
环境变量进行通信,代理转发通过设置SSH_AUTH_SOCK
环境变量进行通信。也许我可以通过远程命令做一些有创意的事情?
我欢迎任何想法。
答案 0 :(得分:1)
你真的需要一个远程端口吗?如果你可以ssh到远程机器,为什么不运行命令并通过ssh命令发回数据,如rsync,Mercurial,Git等。 SSH可以提供8位干净连接,因此它就像有一个套接字连接。
要明确,我的建议是:
无需在原点或目的地打开特定端口。
事实上,如果你真正想要的是“一个可以根据需要从远程系统复制文件的协议”,那么通过SSH,SCP,SFTP或rsync怎么样?