Win*_*ade 3 ssh root sftp centos5
为了安全起见,我只允许虚拟用户在我的 CentOS 5.8 服务器上通过 SSH 登录,为此我添加了:
AllowUsers dummyaccount
Run Code Online (Sandbox Code Playgroud)
当访问我的服务器时,我然后使用虚拟登录并使用它su -来获得 root 权限,这非常有效。
现在我已经使用以下方法设置了 sftp:
Subsystem sftp /usr/libexec/openssh/sftp-server
Run Code Online (Sandbox Code Playgroud)
当我使用我的 ssh 客户端建立一个 ssh 隧道并使用 FileZilla 连接到它时,我可以很好地使用我的虚拟帐户登录,最终进入它的根目录。
但是,我现在想在 sftp 上使用我的虚拟帐户获得 root 权限,这样我就可以用它完全管理文件系统,或者我想允许 root 登录到 sftp 而不是 ssh,所以换句话说,我d 使用虚拟身份登录 ssh 并用于su -获得如上所述的 root 权限,但是当我创建 ssh 隧道时,我将能够通过 sftp 使用我的 root 登录。
我听说有一种方法可以通过将用户的 shell 更改为 sftp-server 来仅允许用户进行 sftp 访问,但这显然不是 root 的选项,因为据我所知,更改其 shell 会破坏系统。使用该配置创建不同的用户是可行的,但是他们将通过 sftp 对文件系统的访问与虚拟用户一样有限。
你有什么建议?
需要基于密钥的身份验证。设置PermitRootLogin without-password选项。设置一个强制命令为 的键internal-sftp。或者sshd_config使用匹配部分更新您的内容以强制 sftp。
Match user root
ForceCommand internal-sftp # force SFTP
Run Code Online (Sandbox Code Playgroud)