Redian新闻
>
在 Linux 上使用 sudo 命令的 5 个理由 | Linux 中国

在 Linux 上使用 sudo 命令的 5 个理由 | Linux 中国

科技
 
导读:以下是切换到 Linux sudo 命令的五个安全原因。下载 sudo 参考手册获取更多技巧。   
本文字数:2768,阅读时长大约:4分钟

以下是切换到 Linux sudo 命令的五个安全原因。下载 sudo 参考手册获取更多技巧。

在传统的 Unix 和类 Unix 系统上,新系统中存在的第一个同时也是唯一的用户是 root。使用 root 账户登录并创建“普通”用户。在初始化之后,你应该以普通用户身份登录。

以普通用户身份使用系统是一种自我施加的限制,可以防止愚蠢的错误。例如,作为普通用户,你不能删除定义网络接口的配置文件或意外覆盖用户和组列表。作为普通用户,你无权访问这些重要文件,所以你无法犯这些错误。作为系统的实际所有者,你始终可以通过 su 命令切换为超级用户(root)并做你想做的任何事情,但对于日常工作,你应该使用普通账户。

几十年来,su 运行良好,但随后出现了 sudo 命令。

对于日常使用超级用户的人来说,sudo 命令乍一看似乎是多余的。在某些方面,它感觉很像 su 命令。例如:

  1. $ su root
  2. <输入密码>
  3. # dnf install -y cowsay

sudo 做同样的事情:

  1. $ sudo dnf install -y cowsay
  2. <输入密码>

它们的作用几乎完全相同。但是大多数发行版推荐使用 sudo 而不是 su,甚至大多数发行版已经完全取消了 root 账户(LCTT 译注:不是取消,而是默认禁止使用 root 用户进行登录、运行命令等操作。root 依然是 0 号用户,依然拥有大部分系统文件和在后台运行大多数服务)。让 Linux 变得愚蠢是一个阴谋吗?

事实并非如此。sudo 使 Linux 更加灵活和可配置,并且没有损失功能,此外还有 几个显著的优点🔗 opensource.com

为什么在 Linux 上 sudo 比 root 更好?

以下是你应该使用 sudo 替换 su 的五个原因。

1. root 是被攻击确认的对象

我使用 防火墙🔗 www.redhat.comfail2ban🔗 www.redhat.com 和 SSH 密钥🔗 opensource.com 的常用组合来防止一些针对服务器的不必要访问。在我理解 sudo 的价值之前,我对日志中的暴力破解感到恐惧。自动尝试以 root 身份登录是最常见的情况,自然这是有充分理由的。

有一定入侵常识的攻击者应该知道,在广泛使用 sudo 之前,基本上每个 Unix 和 Linux 都有一个 root 账户。这样攻击者就会少一种猜测。因为登录名总是正确的,只要它是 root 就行,所以攻击者只需要一个有效的密码。

删除 root 账户可提供大量保护。如果没有 root,服务器就没有确认的登录账户。攻击者必须猜测登录名以及密码。这不是两次猜测,而是两个必须同时正确的猜测。(LCTT 译注:此处是误导,root 用户不可删除,否则系统将会出现问题。另外,虽然 root 可以改名,但是也最好不要这样做,因为很多程序内部硬编码了 root 用户名。可以禁用 root 用户,给它一个不能登录的密码。)

2. root 是最终的攻击媒介

在访问失败日志中经常可以见到 root 用户,因为它是最强大的用户。如果你要设置一个脚本强行进入他人的服务器,为什么要浪费时间尝试以受限的普通用户进入呢?只有最强大的用户才有意义。

root 既是唯一已知的用户名,又是最强大的用户账户。因此,root 基本上使尝试暴力破解其他任何东西变得毫无意义。

3. 可选择的权限

su 命令要么全有要么全没有。如果你有 su root 的密码,你就可以变成超级用户。如果你没有 su 的密码,那么你就没有任何管理员权限。这个模型的问题在于,系统管理员必须在将 root 密钥移交或保留密钥和对系统的所有权之间做出选择。这并不总是你想要的,有时候你只是想授权而已🔗 opensource.com

例如,假设你想授予用户以 root 身份运行特定应用程序的权限,但你不想为用户提供 root 密码。通过编辑 sudo 配置,你可以允许指定用户,或属于指定 Unix 组的任何用户运行特定命令。sudo 命令需要用户的现有密码,而不是你的密码,当然也不是 root 密码。

4.超时

使用 sudo 运行命令后,通过身份验证的用户的权限会提升 5 分钟。在此期间,他们可以运行任何管理员授权的命令。

5 分钟后,认证缓存被清空,下次使用 sudo 再次提示输入密码。超时可防止用户意外执行某些操作(例如,搜索 shell 历史记录时不小心或按多了向上箭头)。如果一个用户离开办公桌而没有锁定计算机屏幕,它还可以确保另一个用户不能运行这些命令。

5. 日志记录

Shell 历史功能可以作为一个用户所做事情的日志。如果你需要了解系统发生了什么,你可以(理论上,取决于 shell 历史记录的配置方式)使用 su 切换到其他人的账户,查看他们的 shell 历史记录,也可以了解用户执行了哪些命令。

但是,如果你需要审计 10 或 100 名用户的行为,你可能会注意到此方法无法扩展。Shell 历史记录的轮转速度很快,默认为 1000 条,并且可以通过在任何命令前加上空格来轻松绕过它们。

当你需要管理任务的日志时,sudo 提供了一个完整的 日志记录和警报子系统🔗 opensource.com,因此你可以在一个特定位置查看活动,甚至在发生重大事件时获得警报。

学习 sudo 其他功能

除了本文列举的一些功能,sudo 命令还有很多已有的或正在开发中的新功能。因为 sudo 通常是你配置一次然后就忘记的东西,或者只在新管理员加入团队时才配置的东西,所以很难记住它的细微差别。

下载 sudo 参考手册🔗 opensource.com,在你最需要的时候把它当作一个有用的指导书。

sudo 参考手册🔗 opensource.com


via: https://opensource.com/article/22/5/use-sudo-linux

作者:Seth Kenlon 选题:lkxed 译者:MjSeven 校对:turbokernel

本文由 LCTT 原创编译,Linux中国 荣誉推出


LCTT 译者 :MjSeven
💎
翻译: 165.0 篇
|
贡献: 1573 天
2018-01-30
2022-05-22
https://linux.cn/lctt/MjSeven
欢迎遵照 CC-BY-SA 协议规定转载,
如需转载,请在文章下留言 “转载:公众号名称”,
我们将为您添加白名单,授权“转载文章时可以修改”。


微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
如何在 Linux 桌面中启用 “激活 Linux” 水印通知 | Linux 中国分享 8 篇使用 Linux 命令行的技巧 | Linux 中国使用 dnf 进行 Linux 包管理 | Linux 中国使用 apt 进行 Linux 包管理 | Linux 中国洒遍了牺牲的血雨,开出的却是别人的花使用 Linux 上的开源财务工具 Skrooge 管理你的预算 | Linux 中国Linux 中 ss 命令的使用实例开源朗读者:我是如何帮助妈妈从 Windows 切换至 Linux 的 | Linux 中国Fedora Linux 37 即将正式支持树莓派 4 | Linux 中国Linux 下的 Docker 入门教程 | Linux 中国英伟达在提升 Linux 上的 GPU 使用体验上迈出了一大步 | Linux 中国Kuro:非官方的微软 To-Do Linux 桌面客户端 | Linux 中国Fedora Linux 37 的内核 5.18 测试周到了,一起来做贡献吧! | Linux 中国如何在 Linux 和 Windows 电脑之间共享文件 | Linux 中国Fedora Linux 36 发布 | Linux 中国如何在 Linux 中使用 Pandoc 转换文件格式 | Linux 中国如何在 Ubuntu 22.04 / 20.04 LTS 中重新设置 sudo 密码 | Linux 中国如何在 Ubuntu/Linux 和 Windows 之间共享文件夹 | Linux 中国如何在 Fedora Linux 中安装多媒体编码器 | Linux 中国在 Linux 上使用 Bash 创建一个临时文件 | Linux 中国好消息!Docker Desktop 现已支持 Linux | Linux 中国渔歌子:(二首):逢却春分开百花如何从 Windows 上用 SSH 连接到 Linux | Linux 中国在 Windows 上使用开源屏幕阅读器 NVDA | Linux 中国使用 watch 和 tail 命令监视 Linux 上的活动 | Linux 中国【周末早餐】--#一顿早餐的温度,可以治愈一整天#检查 Linux 磁盘使用情况 | Linux 中国Linux Lite 6.0 发布:弃用 Firefox,默认浏览器使用 Chrome | Linux 中国上一个说“丼”不读jǐng的人,已经被我骂哭了开源朗读者:马上改用 Firefox 的 5 个理由 | Linux 中国干货—— awk 命令的多种用法亚当和夏娃当年十六铺码头邂逅“山羊胡” (上)Fudgie?令人惊叹的 Budgie 桌面即将登陆 Fedora Linux | Linux 中国分裂使 Linux 超越 Windows 的梦想破灭了 | Linux 中国
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。