>  기사  >  운영 및 유지보수  >  Linux 명령 권한이란 무엇입니까?

Linux 명령 권한이란 무엇입니까?

PHPz
PHPz앞으로
2023-05-12 12:28:121462검색
1. 사용자를 전환하는 Linux 명령 -su(전체 프로세스: 사용자 전환)
1.1 간략한 설명

운영 체제에서는 사용자가 원하는 대로 무엇이든 할 수 없으므로 시스템의 보안이 보장될 수 없습니다. 따라서 권한 분할이 있습니다. Linux 시스템에서 사용자는 관리자 사용자(루트)와 일반 사용자의 두 가지 범주로 구분됩니다.

su 명령을 사용하면 일반 사용자로 전환할 수 있습니다. 슈퍼유저 또는 다른 사용자로 전환된 사용자의 권한을 일시적으로 소유할 수 있습니다. su 命令可让一个普通用户切换为超级用户或其他用户,并可临时拥有所切换用户的权限。

1.2 su命令
[san@San ~]$ su root
Password: 
[root@San san]#

注意:su命令在进行用户切换的时候需要输入目标用户的密码才能切换成功。

2. Linux命令之为普通用户提权执行root命令
2.1 简述

sudo 是系统管理员允许让普通用户执行一些或者全部的root命令的一个工具(执行身份一般当然要短暂成为root喽)。

2.2 sudo命令
[san@San ~]$ date
Fri Apr 10 15:50:07 CST 2020
[san@San ~]$ date -s "2020-04-10 15:50:57"
date: cannot set date: Operation not permitted
Fri Apr 10 15:50:57 CST 2020
[san@San ~]$ sudo date -s "2020-04-10 15:52:43"
[sudo] password for san: 
Fri Apr 10 15:52:43 CST 2020
[san@San ~]$ date

从示例中可以看到,设置系统时间在普通用户下则会报错,操作不被允许。然而使用sudo命令临时对用户操作进行提权则可以直接使用普通用户进行系统时间的设置。

并且sudo不是对shell的一个代替,它是面向每个命令的,对于每个命令都可以使用sudo进行提权操作。使用sudo 提权操作不仅减少了root用户的登录和管理时间,同样也提高了安全性。

注意:sudo命令的使用需要对/etc/sudoers配置文件进行修改。

2.3 /etc/sudoers配置文件的修改

任何用户都可以随时使用sudo指令来对自己的操作进行提权吗?不是这样的,若是这样的话,则root管理员用户形同虚设,只有管理员将指定用户添加入/etc/sudoers中,这个用户才可以进行提权操作,因为它是系统管理员集中的管理用户的使用权限和使用的主机的配置文件。

[san@San ~]$ su root
Password: 
[root@San san]# visudo        #vi /etc/sudoers 也可以,但是我们暂时不用,原因见后面

## 在配置文件中约第100行的位置可以找到需要配置信息, 输入 :100 回车可以直接跳转至第100行
## 将需要提权的用户信息添加到root用户信息的下方,格式雷同root即可,这里的san是我自己的用户~
## 通过输入 :wq 回车后保存配置并退出
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
san     ALL=(ALL)

注意:/etc/sudoers文件因为文件权限原因无法直接使用编辑器进行修改,就算修改成功也不会进行语法检查,因此推荐使用visudo

1.2 su 명령
[root@San san]# ls -l /etc/sudoers

참고: su 전환이 성공하려면 사용자 전환 시 대상 사용자의 비밀번호를 입력해야 하는 명령이 필요합니다. 🎜

2. 일반 사용자를 위한 권한 상승 및 루트 명령 실행을 위한 Linux 명령🎜
2.1 간략한 설명🎜

sudo는 시스템 관리자가 일반 사용자가 일부 또는 모든 루트 명령을 실행할 수 있도록 허용하는 도구입니다(실행 ID는 일반적으로 물론 단명) 루트가 됩니다). 🎜

2.2 sudo 명령 🎜rrreee

에서 볼 수 있듯이 예를 들어, 일반 사용자가 시스템 시간을 설정하면 오류가 보고되고 작업이 허용되지 않습니다. 그러나 sudo 명령을 사용하여 일시적으로 사용자 작업 권한을 상승시키는 경우 일반 사용자를 직접 사용하여 시스템 시간을 설정할 수 있습니다. 🎜

그리고 sudo는 셸을 대체하는 것이 아니라 각 명령에 대한 것이며 sudo를 사용하여 각 명령에 대한 권한을 에스컬레이션할 수 있습니다. sudo를 사용하여 권한을 승격하면 루트 사용자의 로그인 및 관리 시간이 단축될 뿐만 아니라 보안도 향상됩니다. 🎜

참고: sudo 명령을 사용하려면 /etc/sudoers 구성 파일을 수정해야 합니다. 🎜

2.3 /etc/sudoers 구성 파일 수정🎜

Any Can 사용자는 자신의 작업을 에스컬레이션하기 위해 언제든지 sudo 명령을 사용합니까? 그렇지 않으면 루트 관리자 사용자는 쓸모가 없습니다. 관리자가 지정된 사용자를 /etc/sudoers에 추가한 경우에만 이 사용자는 시스템 관리자이므로 권한 상승 작업을 수행할 수 있습니다. 사용된 호스트의 사용자 권한 및 구성 파일을 중앙에서 관리합니다. 🎜rrreee

참고: /etc/sudoers 파일은 수정에 성공하더라도 파일 권한으로 인해 편집기를 사용하여 직접 수정할 수 없습니다. 확인이 수행되지 않으므로 visudo 명령을 사용하여 구성하는 것이 좋습니다. 🎜아아아아

위 내용은 Linux 명령 권한이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제