我正在尝试为用户设置一种方法,让他们连接到用于 SSH/SFTP 的同一“网关服务器”(SFTP 优先,SSH 更好),并让该“网关”服务器将用户路由到我网络内的私有服务器,该服务器由用户名和他们想要访问的私有主机标识。这必须是一种无缝的用户体验,即 - 无需特殊配置文件设置、无需命令行会话标志,也无需在 FileZilla 等 UI 工具中进行特殊设置。
到目前为止我所做的就是将这个块添加到服务器sshd_config
中的文件中gateway
:
Match User someuser
ForceCommand sftp -i /home/someuser/.ssh/id_rsa someuser@some_other_server
现在,当我从客户端机器执行此操作时,效果很好:
ssh -i id_rsa someuser@gateway_server_machine
它将触发ForceCommand
并给我一个到机器的 SFTP 会话some_other_server
。
但当我这样做的时候
sftp -i id_rsa someuser@gateway_server_machine
连接挂起并最终终止。
我需要帮助弄清楚我在这里做错了什么,或者有没有更好的方法为我的用户提供这种连接。