我怎样才能运行/调整这个命令,同时使用 ForceCommand 给这个用户他们的 shell?
客户端命令
(cat ./sudoPassword ./someCommandInput) | ssh user@ip "sudo -Sp '' someCommand"
服务器 sshd_config
ForceCommand /bin/bash
幕后的限制是 ForceCommand 需要是给这个用户一个 shell 的机制,除了上面一个典型的命令ssh user@ip
也需要工作。
我尝试了各种配置,例如
ForceCommand /bin/bash -ic $SSH_ORIGINAL_COMMAND ls
ForceCommand /bin/bash -s < $SSH_ORIGINAL_COMMAND
ForceCommand /bin/bash -c $SSH_ORIGINAL_COMMAND
我也尝试过使用客户端命令,提供像 -tt 这样的 ssh 选项,但我似乎找不到正确的配置。
使用包装脚本作为
ForceCommand
. 类似这个脚本的东西(比如说,保存在/usr/local/bin/myshell
):在行动: