我正在尝试通过 ssh 设置一个私有存储库。我的sources.list.d/
包含条目
deb ssh://user@host:/repo ./
Run Code Online (Sandbox Code Playgroud)
user 是主机上的仅证书帐户。apt-get update
工作正常。
但是,我想限制对下载存储库的访问,即禁用外壳访问。如果我将用户 shell 设置为 rssh,仅允许 scp 和 sftp,则更新会中断。
来自/var/log/syslog
:
user user attempted to execute forbidden commands
command: /bin/sh
Run Code Online (Sandbox Code Playgroud)
为什么 apt 需要在存储库机器上访问 shell,有没有办法避免这种情况?
我注意到有一个 apt-transport-sftp 的 github 存储库,我可能会查看它,但为了用户方便,我宁愿坚持使用更常见的包。