Linux sshd_配置中的Forcecommand SSH和SFTP

Linux sshd_配置中的Forcecommand SSH和SFTP,linux,ssh,sftp,Linux,Ssh,Sftp,我对ssh和sftp有问题。 总之,我制作了一个脚本,将交互式shell包装到script中,以记录SSH会话: if[-z$SSH_原始_命令]];然后 # ... 脚本-qf$LOG\u DIR$LOG\u文件$SUFFIX.data--command=/bin/bash 我在sshd\u config中强制它如下: ForceCommand /path/to/script 它工作得很好,但我注意到我不能用这种方式执行sftp 因此,为了找到解决方案,我想到了两种不同的方法: 我在脚本中

我对sshsftp有问题。 总之,我制作了一个脚本,将交互式shell包装到
script
中,以记录SSH会话:

if[-z$SSH_原始_命令]];然后
# ...
脚本-qf$LOG\u DIR$LOG\u文件$SUFFIX.data--command=/bin/bash
我在
sshd\u config
中强制它如下:

ForceCommand /path/to/script
它工作得很好,但我注意到我不能用这种方式执行sftp

因此,为了找到解决方案,我想到了两种不同的方法:

  • 我在脚本中做了一个循环,将sftp考虑在内
  • 我不知道怎么做。 我试过了,但我不知道如何检索sftp参数(用户、主机等)。 此外,它还显示以下内容:

    错误,接收长消息

  • 我仅在用户尝试使用ssh时才强制使用脚本, 但是我不知道如何识别
    sshd\u config
    文件中的ssh调用命令和sftp调用命令之间的区别

  • 欢迎来到堆栈溢出!请将您的问题移至(删除此处,重新发布)。是,当在那里重新发布时,请确保在我的脚本中包含“负责sftp的循环”。@Martin Prikryl因为问题是关于shell脚本和ssh的,它不是更适合吗?