尝试遵循在 bzr 和 gitosis 中找到的技术,我执行了以下操作:
添加到 ~/.ssh/authorized_keys command="my_parser" 参数 它指向一个名为“my_parser”并位于 /usr/local/bin(文件被更改为 777)
在那个脚本文件 '/usr/local/bin/my_parser' 我得到了以下内容 行:
#!/usr/bin/env python
import os
print os.environ.get('SSH_ORIGINAL_COMMAND', None)
尝试 ssh 时,例如ssh 本地主机 我在终端上得到 None,然后连接关闭。
我想知道过去是否有人做过这样或类似的事情并且可以帮助我 有了这个。
为了得到它,我应该在我的 python 文件中做些什么 环境变量?
请您参考如下方法:
$SSH_ORIGINAL_COMMAND 在您使用 ssh 连接到主机以执行单个命令时设置:
$ ssh username@host 'some command'
然后您的“my_parser”将返回“一些命令”。
除非您使用 my_parser 调用 shell,否则它将退出,并且连接将关闭。您可以使用它来控制远程执行命令的环境,但是您失去了进行交互式 session 的能力
