加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 启用SSH shell访问但禁用SFTP访问

发布时间:2020-12-13 18:35:06 所属栏目:Linux 来源:网络整理
导读:我已经搜索了这个问题的可行答案,大多数答案都包含了为什么不这样做的建议.但是,这是场景,以及它的必要性: 我有一个控制台应用程序,并且在每个用户的.profile中,都有一个应用程序的启动命令,并且在启动它的命令之后,有一个“退出”命令,它将它们记录出系统.
我已经搜索了这个问题的可行答案,大多数答案都包含了为什么不这样做的建议.但是,这是场景,以及它的必要性:

我有一个控制台应用程序,并且在每个用户的.profile中,都有一个应用程序的启动命令,并且在启动它的命令之后,有一个“退出”命令,它将它们记录出系统.我只希望他们能够通过它提供的界面访问这个控制台应用程序.启动时,应用程序向用户显示可通过应用程序访问的客户端列表,每个客户端都有自己的数据目录.用户只能访问他们需要访问的客户端.

现在问题是:如果我给用户SSH访问权限,他们也可以使用SFTP客户端登录,这将使他们可以直接访问应用程序的数据目录,这是非常不可取的,因为这也会给他们访问他们不应该访问的数据目录.

使用telnet / FTP组合时这是一件很简单的事情,但现在我想让用户从互联网上的任何地方访问,我无法找到一种方法将它们从SFTP中关闭,而仍然允许他们访问他们可以运行应用程序的shell.

解决方法

编辑:

如果不是很明显,以下答案并不是一种安全的方法,可以防止任何有shell访问服务器的人使用SFTP.这只是一个解释如何从外部可见性禁用它的答案.有关用户级安全性的讨论,请参阅@cpast和@Aleksi Torhamo的答案.如果安全是您的重点,那么这个答案就不合适了.如果您关注简单的服务可视性,那么这就是您的答案.

我们现在继续原来的答案:

在sshd_config中注释掉sftp支持(当然重启sshd):

#Subsystem sftp /usr/lib / openssh / sftp-server

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读