![一直以 root 身份存在有什么问题?](https://linux22.com/image/491880/%E4%B8%80%E7%9B%B4%E4%BB%A5%20root%20%E8%BA%AB%E4%BB%BD%E5%AD%98%E5%9C%A8%E6%9C%89%E4%BB%80%E4%B9%88%E9%97%AE%E9%A2%98%EF%BC%9F.png)
我觉得这是一个愚蠢的问题,但这是我一段时间以来一直想知道的事情。
我有一个 VPS,这是我第一次进行 Linux 大冒险。我是唯一有权访问它的人。我的问题是,与创建帐户并授予他们 sudo 访问权限相比,以 root 身份登录有什么问题?如果 sudoer 可以执行 root 可以执行的所有操作,那么有什么区别?如果黑客可以破解我的标准非 root 帐户的密码,那么他也可以执行 sudo 命令,那么黑客破解我的 root 帐户有什么关系呢?
答案1
如果您以 root 身份登录,您可以轻松地擦除目录或做一些事后看来对系统来说真的很愚蠢的事情,而作为用户,您通常必须在做一些危险的事情之前,对您输入的内容进行一些额外的思考。
此外,以 root 权限运行的任何程序,意味着如果某人或某物让您运行/编译/浏览危险的网站并试图破坏您的系统,例如木马或其他恶意软件,它就可以完全访问您的系统并执行其想要的操作,包括访问 1024 以下的 TCP 端口(例如,它可以在您不知情的情况下将您的系统变成邮件转发程序)。
基本上,您是在自找麻烦,而以自己的身份登录可能会避免这些麻烦。我认识很多人,他们在一时疏忽大意之后,最终庆幸自己有了这个安全网。
编辑:还有一个问题是 root 最为人熟知,因此很容易成为脚本和黑客的目标。禁用该帐户并强制用户使用 sudo 的系统意味着任何试图从 ssh 破解 root 或本地利用该帐户的尝试都会碰壁。他们必须猜测/破解密码和用户名。它在一定程度上通过隐蔽性来实现安全性,但很难说它无法挫败大多数脚本小子攻击。
答案2
如果你不允许一个白痴以 root 身份登录你的服务器,那么你自己也不要总是以 root 身份运行。除非你能真心实意地说你已经绝不真是个白痴。不,真的吗?你确定吗?:)
好处:降低你被 root 的可能性和同时也是个白痴。
答案3
主要原因是错误。如果您始终以 root 身份登录,简单的输入错误可能会真正搞砸系统。如果您仅以 root 身份登录或使用 sudo 执行需要它的操作,则可以将犯下危险错误的风险降至最低。
答案4
不以 root 身份登录有几个关键原则:1) 登录时,root 密码永远不会通过网络发送 2) 如果多个用户以同一帐户(root 或其他)登录,则无法判断谁做了某事。3) 意外做了一些“愚蠢”的事情