当前位置: 首页 > Linux

对“多人运动”的思考:如何限制别人操作自己的电脑?(1)

时间:2023-04-06 02:54:54 Linux

这段时间小猪罗志祥风头正劲,到底是为什么?不知道的小伙伴赶快来了解一下娱乐圈的最新八卦吧~简单来说就是我们的同事罗纳尔迪尼奥用超强的体力和超强的时间管理能力重新定义了“多人运动”的意义这个词刷新了大众对一个40岁男人的印象。所以,对于手机这种非常隐私的产品,你必须要设置各种限制,否则可能会导致这样尴尬的结果(咳咳,你得先有女朋友)……手机就是这样,同样必须计算机是真的,否则……你还记得爱迪生兄弟吗?当然,笑话归笑话,不管是手机还是电脑,里面的数据都是非常宝贵的,一旦泄露,可能会造成很多不可预知的后果。对于电脑,尤其是公司电脑,经常会出现一台电脑多人使用的场景。如何保证里面数据的安全,限制他人使用电脑的权利?在Linux系统下,我们可以使用RestrictedShell来限制某个用户的使用权限。什么是受限外壳?首先,让我为您澄清一下RestrictedShell到底是什么。它不是像Bash、KornShell等独立的shell。如果你想把你使用的shell改成rbash,你可以在shell启动时使用-restricted,-r选项,然后它就会变成一个受限的shell。例如,您可以使用bsh-r命令将BourneShell作为受限Shell启动,并使用ksh-r命令将kourshell作为受限Shell启动。RestrictedShell将限制用户执行大多数命令,并限制更改当前工作目录。具体限制如下:不允许cd命令,所以我们不能进入任何目录,只能停留在当前工作目录。不允许修改$PATH、$SHELL、$BASH_ENV或$ENV等环境变量的值。不允许执行包含/字符的程序。例如,我们不能运行/usr/bin/uname或./uname命令。但是,我们可以执行uname命令。也就是说,我们只能在当前路径下运行命令。使用>,>|重定向输出、<>、>&、&>和>>重定向运算符也是不允许的。它还不允许我们在脚本中退出受限Shell模式。它还不允许我们使用set+r或set+orestricted关闭RestrictedShell模式。使用RestrictedShell限制系统用户首先,从名为rbash的bash创建一个符号链接,如下所示。以下命令需要以root用户身份运行。#ln-s/bin/bash/bin/rbash接下来,创建一个名为harry的用户并将默认shell指定为rbash:#useraddharry-s/bin/rbash为新用户设置密码。#passwdharry在新用户的文件夹中创建一个bin目录。#mkdir/home/harry/bin现在我们需要指定用户可以运行哪些命令。这里我选择让用户只运行ls、mkdir和ping命令。您还可以自定义允许的命令。为此,请运行以下命令:#ln-s/bin/ls/home/harry/bin/ls#ln-s/bin/mkdir/home/harry/bin/mkdir#ln-s/bin/ping/home/harry/bin/ping现在你可以看到为什么我在上一步中创建了bin目录。除以上三个命令外,用户不能运行任何其他命令。接下来,让我们阻止用户修改.bash_profile。#chownroot/home/harry/.bash_profile#chmod755/home/harry/.bash_profile编辑/home/harry/.bash_profile文件:#vi/home/harry/.bash_profile修改PATH变量。[...]PATH=$HOME/bin[...]2020精选阿里巴巴/腾讯等一线公司面试,简历,进阶,电子书公众号“良旭Linux”后台回复“资料”为免费访问按ESC键,然后键入:wq以保存并关闭文件。现在,当用户登录时,受限Shell(rbash)将作为默认shell运行并读取.bash_profile,将PATH环境变量设置为$HOME/bin以便用户只能运行ls、mkdir和ping命令。RestrictedShell将不允许用户更改PATH,并且.bash_profile的权限将不允许用户在下次登录时更改环境以绕过限制。验证新用户是否受到限制现在,我们从root用户注销并以新创建的用户(即harry)重新登录。现在让我们运行一些命令来确保我们上面的更改生效。比如我们要清空终端,运行如下命令:$clear终端会输出:-rbash:clear:commandnotfound好家伙,真的不行!那我们再试试看能不能切换到别的目录。$cd/root终端输出:-rbash:cd:restricted仍然受限!不要灰心,再试一次,看看是否可以使用>运算符重定向输出。$cat>file.txtTerminaloutput:-rbash:file.txt:restricted:cannotredirectoutput看来其他命令真的不能用了。我们上面设置的几个新用户可以使用的命令真的好用吗?让我们再试一次。2020精选阿里/腾讯等一线企业面试、简历、进阶、电子书公众号「良旭Linux」后台免费回复「资讯」$ls$mkdirharry$ping-c3baidu.com一切皆是像我们希望的那样!现在除了这三个命令,新用户harry什么也做不了,完全在他的掌控之中!添加其他允许的命令如果之前设置的新用户允许的命令不够,如何添加新命令?我们可以先退出当前用户,然后重新登录到root用户,然后按照下面的说明添加新的命令。例如,要允许新用户(harry)执行rm命令,请以root身份运行以下命令:#ln-s/bin/rm/home/harry/bin/rm现在用户可以使用rm命令。同样的,你可以添加任何你允许新用户使用的命令,让新用户可以使用的命令由你做主!总结我们可以通过几个简单的步骤,将新用户的操作限制在自己的home目录下播放,以保证电脑数据的安全。当然,这种方法并不是最安全的。最安全的方式是通过多种方式对数据进行存储和加密,尽可能降低发生事故的概率。看到的都是真爱,走之前怎么不竖个大拇指?您的“三通”是良旭继续创作的最大动力!关注原创公众号《良序Linux》,第一时间获取最新Linux干货!公众号后台回复【信息】【面试】【简历】获取精选一线大厂的面试、自我提升、简历等信息。关注我的博客:lxlinux.net