一种限制ssh权限的简单思路(卖ssh扶墙必读)

[需求]
我们想让用户通过ssh来“扶墙”,又不想让他们获取到服务器上的任何文件,怎么办呢?
一种方法是ssh jail,太麻烦,我这里提出了一种非常简单的方法,欢迎大家留言讨论。

[原理篇]
所谓的“sock5”翻墙代理是ssh提供的,与shell没有任何关系。
所以理论上,我们构造一个用户登录的伪shell:即不接受任何命令的shell即可。

[现有工具]
/sbin/nologin
这个工具直接print“不许登录”后退出,阅读源代码发现,就这么简单。
我们只需要构造一个类似这个的可执行文件即可。

转载请注明:一种限制ssh权限的简单思路(卖ssh扶墙必读)

[实现步骤]

首先来构造这个“shell”
[shell]
vim /sbin/loop
[/shell]

内容如下:
[shell]
#写入以下内容
#!/bin/bash

echo "————————————"
echo " Sock5 Only ssh v0.1 by @liheyuan "
echo ""
echo " Ctrl + Z for exit "
echo ""
echo " Author:http://www.coder4.com"
echo "————————————"

while ((1 == 1))
do
sleep 1
done
[/shell]

然后编辑对应用户的shell
[shell]
vim /etc/passwd
#把需要这么限制的用户的最后一列改为/sbin/loop
nobody:x:65534:65534:nobody:/nonexistent:/sbin/loop
[/shell]

完成,有问题欢迎大家讨论!
鄙视转载不注明出处的人,转载请注明:一种限制ssh权限的简单思路(卖ssh扶墙必读)

觉得有安全隐患的欢迎讨论,拿走直接用之前给加个分吧。

One thought on “一种限制ssh权限的简单思路(卖ssh扶墙必读)

Leave a Reply

Your email address will not be published.