我已经安装了Linux发行版。我需要设置root帐户还是用户帐户就足够了?

我已经安装了Linux发行版。我需要设置root帐户还是用户帐户就足够了?

我有这些凭据,用于在启动计算机时登录我的 Linux 发行版 (Ubuntu 13.04):

james
myawesomepassword123

我在登录屏幕上输入密码,然后进入桌面。

然后,当我从 ubuntu 中心安装某些东西时,我需要输入此密码(或者使用sudo等执行某些操作时)。

我的问题是:

我是否通过提供与我的帐户关联的密码来授予程序和安装 root 访问权限?

我的意思是我是否应该设置一些 root 用户名和密码来保护我的 Linux 免受恶意软件等的侵害。

答案1

当您输入密码来安装程序时,您的密码将被读取须藤在引擎盖下。 Sudo 是一个特权程序,可以以 root 身份运行其他程序,但只有在被授权执行此操作的用户调用时,它才接受执行此操作。此类用户通常称为“sudoers”。 Ubuntu 安装程序创建第一个用户帐户并将其设为 sudoer。您可以通过在用户管理 GUI 中授予其他帐户管理员权限来将其他帐户配置为 sudoer。

Sudo 会要求您输入密码,以确认是您在键盘上操作。这有两个好处:当您转身时,路过的人将无法执行管理任务,并且您会收到一些用户界面反馈,表明您将要更改系统配置。

Sudo 以 root 身份运行安装程序。这并不意味着该程序将以 root 身份运行。所有正常的程序安装都是由 root 执行的,因为只有 root 可以写入系统目录并修改已安装软件包的数据库。除极少数例外(setuid 或 setgid 程序),当您运行该程序时,它会以与您已经拥有的完全相同的权限运行 - 因为“您的权限”实际上意味着“在您的会话中运行的进程的权限”。

默认情况下,Ubuntu 不为 root 帐户设置密码。这更多的是可用性问题而不是安全性问题。没有单独密码的主要好处是用户不必记住多个密码。

为 root 帐户设置密码对于防范恶意软件没有任何好处。如果您的计算机上有恶意软件,它可以窥探您所做的一切,包括输入密码。它甚至可以欺骗密码提示。无论您最终输入帐户密码还是根密码都没有关系:一旦恶意软件在您的计算机上运行,​​您就输了:它不再是您的计算机,而是攻击者的计算机。

幸运的是,在 Linux 下,保持免受恶意软件侵害是相当容易的。坚持使用您的发行版提供的程序。 Ubuntu 拥有广泛的集合,因此没有很多任务需要从其他来源获取软件。这些程序受到很多人的审查,如果发现其中包含恶意软件或存在安全漏洞,将立即在安全更新中修复。

答案2

我是否通过提供与我的帐户关联的密码来授予程序和安装 root 访问权限?

简短的回答:是的。

长答案:您不能(“合法地”)从外部更改正在运行的进程的用户。可能会发生两件事:

  1. 用户级程序调用具有超级用户权限(通过配置)的程序(如sudo),无论谁运行它。此 SUID 程序允许调用者以超级用户权限执行或多或少的所有操作,但它通常配置为在执行此操作之前询问调用用户或目标用户的密码。这就是为什么调用过程需要密码。
  2. 已经运行(以更高权限)的守护进程可以代表调用进程执行某些操作,但需要(超级)用户密码才能执行此操作。没有什么大的区别。

您的系统的安全程度(针对恶意软件或人类)更多地取决于密码的质量,而不是使用相同或不同的密码。如果您担心您的用户密码可能会被其他人看到,因为您经常输入密码,那么阻止您的用户sudo使用不同的密码访问和使用 root 可能会更有利。

答案3

您基本上有两个帐户。您通常使用常规用户帐户登录,当您需要 root 访问权限时,您可以以 root 身份重新登录并提供 root 密码来执行此操作。 root 密码应与普通用户的密码不同。默认情况下,在某些发行版(例如 Ubuntu)上,root 帐户是禁用的。要提升您在这些系统上的权限,您可以使用名为 的命令,sudo以便您可以使用 root 权限运行某些/所有命令。

例如以 root 身份登录:

$ sudo su -

以 root 身份运行命令:

$ sudo apt-get install gimp

第一个示例将用户 (su) 设置为 root(假设您有权限这样做)。运行此命令后,您将处于 root 提示符下。

第二条命令将运行 Debian/Ubuntu 安装程序并以 root 身份安装一个名为 gimp 的程序。

相关内容