首页 游戏资讯 正文

root权限怎么关闭?一步步教你安全操作!

哥们姐们,今天我来跟大家唠唠我最近折腾服务器的一件大事儿——把那让人又爱又恨的root权限给关了。这事儿我本来也没多想,觉得开着方便。可不是吗,平日里图个省事儿,敲命令直接就是root,不用前面再加个sudo啥的,多痛快!可有一次,我手一滑,一个命令敲错了,眼看着屏幕上一堆报错信息哗地往下滚,再看眼我的网站,直接就挂了!

本站为89游戏官网游戏攻略分站,89游戏每日更新热门游戏,下载请前往主站地址:www.gm89.icu

当时那冷汗,从后背直冒。虽然花了好长时间才给抢救回来,但那心惊胆战的感觉,真是让我吃了一堑长一智。我就琢磨了,我一个平时就写写博客,跑跑小程序的,又不搞什么高深开发,一直开着root权限,这不是给自己家门敞着大口子,等着贼来偷吗?尤其是最近新闻里老说,哪个谁的服务器又被攻击了,数据全都没了,搞得我晚上睡觉都开始琢磨这事儿。

于是我下定决心,必须把root权限给关了,起码得让它不能直接登录。说干就干,我立马就开始查资料。这一查不要紧,网上教程五花八门的,看得我头都大了。有的说直接改密码,有的说禁用root登录,有的说要先建个新用户再操作。我一个对服务器系统底层不是那么懂行的老实人,看着那些黑乎乎的命令,心里直打鼓,生怕一个搞不把我这小破服务器给弄废了,那可就得不偿失了。

研究了好几天,我决定走一个最稳妥的路线:先创建一个新的普通用户,然后只允许这个新用户通过SSH登录,再把root的SSH登录给彻底禁掉。 这样,即使我以后手再滑,或者哪个脚本跑飞了,起码也有个缓冲,不至于直接把系统给搞瘫痪。

动手前的准备工作

  • 备份,备份,还是备份! 这是我从上次失误中学到的最宝贵的教训。虽然我的服务器上没啥“惊天秘密”,但万一操作失误,能快速恢复也省心。我用scp命令把几个重要的文件和目录都拉到了我本地电脑上。
  • 找个小本本把所有要操作的命令记下来。 还有我新想好的用户名、密码,都仔仔细细地写在本子上。这是为了防止我敲错了命令,或者忘了新用户的密码,那可就尴尬了。
  • 确认网络连接是好的。 这听起来是废话,但确保我能稳定连接服务器,不至于操作一半断网,那也是很关键的一步。

我的实际操作过程

一切准备就绪,我就撸起袖子干了。

第一步:用root账号登录服务器。

我打开我的终端,就用最老实的办法,直接敲了ssh root@我的服务器IP地址,然后输入root密码,顺利登录进去了。毕竟要关闭它,得先用它嘛

第二步:创建新用户。

在root权限下,我敲了命令adduser 我的新用户名。比如我就叫它myuser。系统会提示我输入密码,我就老老实实地输了两遍密码。然后还会问一些姓名、电话之类的杂七杂八的信息,我图省事,就一路回车跳过了。

第三步:给新用户sudo权限。

光有用户不行,有些事情还得“放大招”,比如安装个软件,重启个服务啥的,没有sudo权限就麻烦了。我得把这个myuser加到sudo组里。命令是usermod -aG sudo myuser。这个命令一敲下去,myuser就有了用sudo命令执行管理员操作的能力了。

第四步:修改SSH配置文件。

这是最最关键的一步了。我用vim /etc/ssh/sshd_config命令打开了SSH服务的配置文件。这个文件里藏着所有关于SSH登录的设置。我小心翼翼地改了几个地方:

  • 找到那一行PermitRootLogin yes,我把它改成了PermitRootLogin no。这意思就是,以后不让root用户直接通过SSH登录了。
  • 然后我确认了一下PasswordAuthentication yes是不是yes。这个很重要,因为如果它是no,那我的新用户就没法用密码登录了。
  • 为了更安全,我还特意在文件末尾加了一行:AllowUsers myuser。这句命令的意思就是,这个SSH服务,我只允许myuser这个账户来登录,其他账户,包括root,都给我靠边站。

改完这些,我小心翼翼地保存了文件,然后退出了vim。

第五步:重启SSH服务。

配置文件改了,但它还不知道,得让它重新读取一下配置。我敲了systemctl restart sshd这个命令,重启了SSH服务。重启的时候,心里还有点紧张,生怕一个没弄就把自己给锁在外面了。

第六步:测试新用户登录。

这步可是重中之重!我绝对不敢直接退出root的会话。我立马又打开了一个新的终端窗口,用我刚才创建的myuser去登录。命令是ssh myuser@我的服务器IP地址。输入密码,回车,当看到熟悉的命令行提示符出现时,我心里的一块大石头总算落了地!

登录进去之后,我还特意试了试sudo ls /root,输入myuser的密码,看到root目录下的文件列表,说明sudo权限也妥妥的。一切正常。

第七步:退出root会话。

确认新用户能正常登录,而且权限也ok之后,我才敢把之前那个root登录的终端窗口给关掉。那一刻,感觉整个人都轻松了。

现在怎么样了?

现在再想用root用户直接登录我的服务器?门儿都没有!它会直接提示我“Permission denied”,登录都登录不上去。虽然每次登录服务器,我都要多敲一步,先用myuser登录,需要root权限的时候再用sudo命令,但每次看到root登录被拒绝,我心里就踏实很多。感觉就像给家门又加了一把牢固的锁,安全感那是噌噌地往上涨。

我个人觉得,如果你也不是那种天天和服务器底层打交道的骨灰级玩家,真的没必要一直开着root权限直接登录。多一道安全屏障,少一份提心吊胆,这笔买卖,怎么算都划算。自己动手操作一遍,虽然看着有点复杂,但每一步搞明白了,也没想象中那么难。关键是,操作之前一定要做好备份,心里有底,才敢下手。好了,今天的分享就到这儿,希望对哥们姐们有用!