我在我的机器上运行一个 ssh 服务器,并且我只使用 internal-sftp 和 ChrootDirectory 将某些用户的访问权限限制为 sftp。我需要的是一种在 chroot 用户之前执行脚本的方法。实际上,目标是在客户端连接上挂载加密文件系统并在关闭时卸载它。提前谢谢。
如果您不想破解 openssh 代码,则必须使用外部 sftp 服务器。如果您这样做,只需在其周围放置一个包装纸即可。例如:在sshd_config
Subsystem sftp /usr/local/bin/sftp-server
Run Code Online (Sandbox Code Playgroud)
在/usr/local/bin/sftp-server:
#!/bin/sh
mount_special_fs
chroot /my/secret/stuff /usr/libexec/openssh/sftp-server
umount_special_fs
Run Code Online (Sandbox Code Playgroud)
这或许有可能把周围的包装sshd,并推出从包装inetd,但发射sshd距离inted不鼓励,因为它是缓慢启动。
| 归档时间: |
|
| 查看次数: |
7586 次 |
| 最近记录: |