在 Linux 中创建一个假 shell?

在 Linux 中创建一个假 shell?

我不是在谈论 shell 编程或制作像 Bourne 或 Korn Shell 这样的全新 shell...

我只是希望通过端口 21 访问 ftp 的用户被定向到这个 shell,它可以支持 shell 使用的一些基本命令!

我用谷歌搜索了同样的结果......但没有找到任何令人满意的结果。

答案1

通常,Korn 和 Bash shell 有一个“受限外壳" 模式。进入受限 shell 可能就像键入rsh(避免使用“远程 shell”——在 2012 年绝对不是一个好主意)或 一样简单rbash。但我不确定你想要什么。

FTP 协议可能允许客户端发送任意命令(带有 QUOTE),但 FTP 服务器 ( ftpd) 可能不应该只执行它收到的任何命令。 FTP 服务器长期以来一直存在安全问题,部分是由于 FTP 协议本身,部分是由于草率的编程或细微的错误。

使用ftp(客户端程序),您可能能够在ftpd(服务器程序)计算机上列出文件,或者您可能能够ftpd更改目录,但即使您将受限 shell 分配给用户 ID“ftp” ”,您不会让ftp客户端在 FTP 服务器(机器)上执行任意操作。

您可以通过使用受限 shell 设置用户 ID,然后允许该用户 ID 进行 SSH 访问来获得您想要的结果。从你的问题中我无法判断。

相关内容