作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注我,我尽量把自己会的都分享给大家,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
Linux是一个多用户多任务操作系统,这意味着它可以同时支持多个用户登录并使用系统。但是我们之前所有的操作都是基于超级管理员root来操作的,从Linux设计来说,是不推荐的。因为root的权限太大,所以才需要普通用户来进行日常运维,那如果普通用户需要做的操作需要root权限的时候又怎么做的,我们将通过以下几个方面来讲解。
1.linux用户
2.linux用户组
3.Linux用户-su命令
4.Linux用户-sudo命令(本章节)
上一章,我们讲了使用su命令切换到root权限进行操作,本章节继续讲解sudo命令来临时提权。
sudo
是类 Unix 系统(如Linux、BSD等)中的一个命令,用于允许授权用户以另一个用户的身份执行命令。它的名称来源于"Superuser Do"(超级用户执行),用于执行需要超级用户权限(通常是 root 用户权限)的任务,而无需直接切换到 root 用户。
主要特点和用途
sudo command
这会使用默认设置(通常是执行者的密码)尝试以 root 用户执行 command
命令。
sudo -u username command
这会以 username
用户的身份执行 command
命令。
sudoedit file
sudo vi file //也可以这样
这会使用默认编辑器(通常是 vi
或 nano
)以超级用户权限编辑 file
文件。
sudo yum updae
这会使用 sudo
命令以 root 权限执行 yum update
命令,从而更新系统软件包列表。
sudoedit /etc/nginx/nginx.conf
sudo vi /etc/nginx/nginx.conf //也直接直接这样
这会使用 sudoedit
命令以 root 权限编辑 Nginx 的配置文件。
-
权限管理:
-
临时提升权限:允许普通用户在需要时以特权用户(通常是 root)的身份执行命令,执行完毕后权限自动降低为普通用户。
-
授权控制:管理员可以通过配置
sudoers
文件详细控制哪些用户可以以哪些用户的身份执行哪些命令,以及在哪些主机上执行。
-
-
安全性:
-
审计:
sudo
的使用可以被记录和审计,管理员可以了解哪些用户在何时执行了哪些特权操作,有助于系统安全和问题追踪。 -
限制权限:相比直接使用 root 用户,
sudo
允许更细粒度地控制用户对系统的访问权限,减少了误操作和滥用特权的风险。
-
-
使用方式:
-
基本语法:
-
以其他用户身份执行:
-
编辑文件:
-
-
配置文件:
-
sudo
的配置文件通常是/etc/sudoers
,第一次使用应该使用root用户来操作该文件,因为在没有配置的情况下,普通用户是没权限操作这个文件的。
-
-
示例用法:
-
执行需要 root 权限的命令:
-
编辑文件:
-
-
注意事项:
-
密码验证:默认情况下,
sudo
会要求用户输入自己的密码来验证身份。 -
安全配置:应当小心配置
sudoers
文件,确保只有可信用户可以执行特权操作,并限制执行的具体命令和参数。 -
不建议直接使用 root 用户:推荐使用
sudo
来执行需要特权的任务,以避免潜在的安全风险和操作失误。
-
-
最佳实践:
1.允许特定用户执行sudo命令
# Allow root to run any commands anywhere
root ALL=(ALL) ALL
#需要添加这行,user01才有使用sudo命令的权限
user01 ALL=(ALL) ALL
2.免密使用sudo
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
#修改成这样,就可以免密使用sudo命令
user01 ALL=(ALL) NOPASSWD:ALL
总结
-
普通用户默认是没有权限使用sudo命令,必须配置以后才能使用。
-
按照上面的配置,是所有的命令都可以执行,也可以做更精细化的配置,让普通用户只能执行特定的sudo命令。
-
普通用户使用sudo命令,默认是需要使用当前用户的密码的。也可以配置让它免密。
-
sudo配置文件默认只有读权限,如果按照普通方式使用vi编辑文件,需要使用wq!强制保存才可以。
-
也可以使用使用下面命令,则不会提示文件只读,也可以正常保存退出。
sudo visudo
关注微信公众号《运维小路》获取更多内容。
标签:sudo,使用,用户,命令,Linux,权限,root From: https://blog.csdn.net/dessler/article/details/140913197