>  기사  >  시스템 튜토리얼  >  너무 많은 사람들이 Linux에서 root와 sudo의 사용법과 차이점에 대해 혼란스러워합니다!

너무 많은 사람들이 Linux에서 root와 sudo의 사용법과 차이점에 대해 혼란스러워합니다!

PHPz
PHPz앞으로
2024-02-10 14:18:231281검색

Linux 시스템에는 모두에게 친숙할 수 있는 두 가지 개념이 있습니다. 하나는 sudo 명령이고 다른 하나는 루트 계정입니다. sudo 명령을 사용하면 루트 계정에서 가장 높은 권한으로 명령을 실행할 수 있으며, 이는 기본적으로 sudo가 추가된 모든 명령과 동일합니다.

Linux 中 root 与 sudo 的用法与区别,居然这么多人搞不清楚!

그럼, sudo와 root

의 차이점은 무엇인가요? 루트 계정을 직접 사용하는 대신 sudo를 사용하는 것이 권장되는 이유는 무엇입니까? 이 튜토리얼에서는 루트 액세스, sudo 명령, sudo를 사용하여 명령을 실행하는 방법, sudo 액세스와 루트 간의 차이점에 대해 알아봅니다.

루트란 무엇인가요?

root는 Linux와 같은 Unix 계열 시스템의 수퍼유저 계정을 나타냅니다. 시스템 관리에 사용되는 시스템에 대해 가장 높은 접근 권한을 가진 특권 계정입니다. 이 루트/수퍼유저 계정은 계정 이름에 관계없이 UID(사용자 식별자)가 0입니다.

루트 사용자는 전체 시스템에 대한 모든 권한을 갖습니다(루트 권한). 시스템의 핵심 부분 수정, 시스템 업그레이드, 시스템 구성 변경, 실행 중인 모든 시스템 서비스 시작, 중지 및 다시 시작과 같은 작업을 수행할 수 있습니다.

루트로 로그인하면(su - 사용) 터미널 명령 프롬프트 기호가

로 변경됩니다. 으아아아

으아아아

일부 시스템(예: Ubuntu)에서는 루트 사용자가 기본적으로 잠겨 있습니다. (참고: Bricklayer는 잠기지 않지만 Tencent Cloud는 기본적으로 잠급니다.)

sudo란 무엇인가요?

sudo (superuser do) 命令是一个命令行实用程序

이를 통해 사용자는 루트 또는 다른 사용자로 명령을 실행할 수 있습니다. 특정 사용자에게 특정 시스템 명령을 사용하거나 루트 사용자로 스크립트를 실행할 수 있는 적절한 권한을 부여하는 효율적인 방법을 제공합니다.

su 명령과 다소 유사하지만 sudo는 su에서 요구하는 대상 사용자의 비밀번호 대신 기본적으로 인증을 위해 사용자의 비밀번호를 요구한다는 점에서 다릅니다. 또한 Sudo는 루트 셸을 생성하지 않고 대신 루트 셸을 생성하는 su와 달리 높은 권한으로 프로그램이나 명령을 실행합니다.

Sudo를 사용하여 시스템 관리자는 다음을 수행할 수 있습니다.
  • 사용자 또는 사용자 그룹에게 상승된 권한이나 루트 권한으로 특정 명령을 실행할 수 있는 권한을 부여합니다.
  • sudo를 사용하여 각 사용자의 사용자 ID에 대한 로그를 봅니다.
  • 사용자가 호스트 시스템에서 사용할 수 있는 명령을 제어합니다.

Sudo는 실행된 모든 명령과 매개변수를 /var/log/auth.log 파일에 기록하며, 이는 실패 시 분석될 수 있습니다.

sudoers 파일

sudo는 기본 sudoers 보안 정책을 사용하고 특수 구성 파일 /etc/sudoers를 유지 관리합니다. 이 파일은 액세스 권한 및 비밀번호 프롬프트 시간 초과를 제어하는 ​​데 사용할 수 있습니다.

참고: sudoers 파일을 보려면 높은 권한이 있어야 합니다

/etc/sudoers 파일을 엽니다.

으아아아

이 줄:

으아아아

루트 사용자는 무제한 권한을 가지며 시스템에서 모든 명령을 실행할 수 있음을 의미합니다.

으아아아

sudo 그룹의 모든 구성원이 모든 명령을 실행할 수 있도록 허용합니다.

注意

: sudoers 파일의 '%'는 댓글이 아닌 그룹을 나타냅니다.

/etc/sudoers 파일의 첫 번째 줄에서 볼 수 있듯이:

으아아아

sudoers 파일을 직접 편집하려고 하지 마세요. 루트 권한으로 visudo 명령을 사용하십시오.

sudo를 사용하여 명령을 실행하는 것은 매우 간단합니다. 명령 앞에 sudo를 추가하면 됩니다.

으아아아

일반적으로 비밀번호를 입력하라는 메시지가 표시됩니다. 비밀번호를 입력하고 Enter를 누르세요. 🎜
$ sudo command
[sudo]  password for user:

Sudo 对比 Root

最小权限原则是一种信息和计算机安全概念,它认为授予程序和用户执行任务所需的最少或最低限度的权限。

以 root 用户登录后,输入到终端的每一条命令都以系统最高权限运行,违反了最小权限原则。像 rm 这样的简单命令可用于删除核心根目录或文件,而不会在意外时提示用户。例如,如果您尝试使用以下命令删除 /etc 之类的根目录:

$ rm -rf /etc

当您以普通用户身份登录时,您将被拒绝许可。当以 root 身份登录时,不会显示任何提示,并且整个文件夹将被删除 – 这很可能会破坏您的系统,因为运行系统所需的特殊配置文件存储在 /etc 目录中。您也可能最终错误地格式化磁盘,并且系统不会提示您。

此缺陷还扩展到以 root 身份运行代码或应用程序;应用程序中的一个小错误可能会删除一些系统文件,因为该应用程序是在最高权限下运行的。

Sudo 提供细粒度的访问控制。它仅向需要它的特定程序授予提升的权限。您知道哪个程序以提升的权限运行,而不是使用 root shell(以 root 权限运行每个命令)。

Sudo 也可以配置为以另一个用户身份运行命令,指定允许哪些用户和组使用 sudo 运行命令,或者通过编辑 sudoers 文件设置以 root 权限运行程序的超时。

因此,不建议使用 root shell 运行命令,因为您破坏系统的机会要高得多。如果您需要更高权限或 root 权限来运行命令,请使用 sudo 确保只有该命令以 root 权限运行。

위 내용은 너무 많은 사람들이 Linux에서 root와 sudo의 사용법과 차이점에 대해 혼란스러워합니다!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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