AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1383858
Accepted
Orange Juice Jones
Orange Juice Jones
Asked: 2021-12-27 08:45:07 +0800 CST2021-12-27 08:45:07 +0800 CST 2021-12-27 08:45:07 +0800 CST

何时在 ubuntu 服务器上禁用 root 帐户

  • 772

我已将 Ubuntu 20.xx 设置为 Digital Ocean 提供的云中的 Web 服务器,并希望安装 Node、Express、Mongo 和可能的 NginX。在几篇文章中,提到了禁用 root 用户以提高安全性并创建具有管理访问权限的新用户。按顺序,我创建了一个新用户,然后用它来设置所有应用程序,但遇到了 nginx 问题。

我是否应该先使用 root 用户设置所有应用程序,并允许应用程序在 root 下运行?然后创建第二个具有 ssh 访问权限的管理员用户,然后为 root 禁用 ssh?

UPDATE1:感谢大家的帮助,我已经更新了问题并添加了云安装。

更新2:

感谢您的详细解释。据我了解:

  1. Sudo 用户具有与 root 相同的权限
  2. 可以跟踪执行操作的 Sudo 用户(在涉及多个用户时具有相关性)
  3. Web 应用程序(node、pm2、mongo)可以使用 root 帐户和/或 sudo 用户帐户安装,因为这些应用程序应该使用它们自己的默认用户帐户运行。
  4. 在适当的时候禁用 root ssh 以防止暴力攻击
ssh
  • 3 3 个回答
  • 397 Views

3 个回答

  • Voted
  1. user535733
    2021-12-27T09:26:13+08:002021-12-27T09:26:13+08:00

    在裸机或自托管 VM 上安装Ubuntu Server 时,root 用户已被禁用。不要启用root。按照设计使用的方式使用 Ubuntu。

    在 Ubuntu 的云安装上,您没有安装;完成的容器/VM 将交给您。云用户通常有一个正常运行的 root 提示,因此他们可以创建 admin sudo users。建议:创建这些用户并安装他们的 SSH 密钥后,禁用 root 登录(以及所有密码登录)以保护您的系统免受攻击。

    如果您在使用 nginx 时遇到问题,请专门针对该问题开一个新问题。

    • 3
  2. Best Answer
    user10489
    2021-12-27T13:26:47+08:002021-12-27T13:26:47+08:00

    “禁用root”并在普通帐户中使用sudo的原因有多种用途,这些都不会影响您问题的答案。

    系统软件始终以 root 身份安装。有时应用程序软件作为应用程序特定用户安装,但通常不是。禁用 root 帐户的登录不会改变这一点,也不会改变应用程序在启动时的启动方式。

    禁用 root 帐户的目的是让您以普通用户身份登录并以普通用户而不是 root 身份进行用户会话。然后你使用 sudo 提升到 root 来安装软件和做其他危险的事情。这也有副作用,当您使用 sudo 时,执行此操作的用户帐户也会被记录,这不是很有趣,除非有多个用户帐户可以使用 sudo,在这种情况下,当一个犯了错误。所以安装软件仍然以 root 身份完成——只是通过 sudo 而不是直接登录。

    当应用程序(如 NginX、mysql、mogodb 等)配置为在引导时启动时,通常 systemd(或 initd)引导脚本以特殊应用程序用户身份启动应用程序。此用户是在安装应用程序时创建的。您不应该手动启动应用程序,而是允许安装的系统脚本启动它(例如使用 systemctl start ...),以便它在正确的环境中以正确的权限运行。这背后的设计理念是应用程序在其自己的用户中被隔离,并且应用程序的安全问题将(希望)被困在该用户 ID 中。大多数应用程序不应直接以 root 身份运行。

    说了这么多,在一个只有一个管理员的系统上,记录谁使用 sudo 就没那么有趣了,如果你有云图像,你可以从新副本中删除和重新加载,你在容器内运行的用户也是不太重要。这可能就是您的云映像启用了 root 并且没有单独的管理用户的原因。

    • 1
  3. DontAsk
    2022-01-01T10:16:44+08:002022-01-01T10:16:44+08:00

    何时在 ubuntu 服务器上禁用 root 帐户?

    我建议不要这样做,而是做一些事情来最大限度地提高安全性。让我们面对现实吧,如果政府想要进入您的服务器,他们将使用一种简单的方法来查看您的文件。我们只担心那里的黑客。

    我在用于我的网站的 RamNode 上有一个实例。当我第一次学习如何设置无人值守的 Ubuntu 服务器时,我发现了几件重要的事情。只要您设置服务器,就会有人试图入侵!

    1. 创建一个强根密码。它应该至少有 32 个字符长。不要在彼此旁边重复键。在随机选择中使用键盘上的所有字符键,但反引号 ' 键除外。使用 $%& 等特殊字符,不要使用任何单词或短语。我将这样的登录数据存储在主计算机上的文本文件中: ssh [email protected] 6^g0)6)nS3@sGh^7*9L:pR%bS@3d9

    2. 创建服务器后,请执行以下操作: ufw allow ssh ufw enable apt update apt list --upgradable apt upgrade

    你现在已经锁定了所有试图进入你的根目录并更新你的 Ubuntu 文件的人。除 ssh 外,没有打开其他端口以允许任何其他访问。

    我也只使用 ipv4,所以我通过 sshd_config 文件、/etc/default/ufw 文件和 /etc/default/grub 文件锁定了 ipv6 访问。

    要查看谁在攻击您,请使用以下命令: service sshd status 您可能会惊讶地看到他们开始尝试攻击您的服务器的速度有多快。我几乎不间断地从中国受到打击。几十年来,中共一直在从任何地方窃取数据。但那是另一回事了。

    • 1

相关问题

  • Gnome-terminal 快捷方式在选项卡中打开多个 ssh 连接

  • 通过 SSH 禁用密码访问?

  • ssh 如何使用多个私钥?

  • 如何通过一个 SSH 连接拥有多个终端会话?

  • 如何与无头服务器进行图形交互?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve