Linux에서 sudoers 파일에 사용자를 추가하는 방법
게시 됨: 2022-11-02 Linux sudo
명령을 사용할 수 있는 사람들은 "sudoers" 목록이라고도 하는 소규모 선별 클럽의 회원입니다. 각 구성원은 root
와 동일한 권한을 갖습니다. 그럼 어떻게 그 동아리에 가입합니까? sudoers에 사람을 추가하고 sudoers 파일을 편집하여 권한을 제한하는 방법을 살펴보겠습니다.
sudo: 당신의 초능력 Alter-Ego
sudoers 파일 및 visudo
Ubuntu 및 기타 Linux 배포판에 새 sudo 사용자 추가
sudoers 파일을 편집하여 sudo 권한 제한
누구든지 이 명령을
sudo: 당신의 초능력 Alter-Ego
Linux 설치에서 루트 사용자는 가장 높은 권한을 가진 사용자입니다. 그들은 모든 관리 작업을 수행할 수 있고, 실제 소유 여부와 상관없이 모든 파일에 액세스할 수 있으며, 다른 사용자를 생성, 조작 및 제거할 수도 있습니다.
이 수준의 힘은 위험합니다. root
가 실수를 하면 결과는 치명적일 수 있습니다. 파일 시스템을 마운트 및 마운트 해제하고 완전히 덮어쓸 수 있습니다. 훨씬 더 안전한 작업 방법은 root
로 로그인하지 않는 것입니다.
지명된 사용자는 sudo
를 사용하여 일시적으로 관리 권한을 얻고 필요한 작업을 수행한 다음 권한이 없는 정상 상태로 돌아갈 수 있습니다. 이것은 당신이 필요할 때 의식적으로 더 높은 능력을 불러일으키기 때문에 그리고 당신이 그것을 필요로 하는 것이 무엇이든 하는 데 집중하는 동안 더 안전합니다.
sudo
명령은 Linux에서 "Shazam"이라고 외치는 것과 같습니다. 무서운 일이 끝나면 초강력 분신을 버리고 평범한 평범한 자아로 돌아갑니다.
root
로 로그인하는 것은 대부분의 최신 배포판에서 기본적으로 꺼져 있지만 복원할 수 있습니다. 일상적인 작업에 루트 계정을 사용하는 것은 바람직하지 않습니다. 일반적으로 단일 사용자에게 영향을 미치거나 권한이 충분하지 않아 완전히 차단되는 실수는 root
에서 실행하면 문제 없이 실행할 수 있습니다.
최신 Linux 배포판은 설치 또는 설치 후 구성 단계에서 생성된 사용자 계정에 sudo
권한을 부여합니다. 다른 사람이 sudo
를 사용하려고 하면 다음과 같은 경고 메시지가 표시됩니다.
mary는 sudoers 파일에 없습니다. 이 사건은 보고될 것입니다.
충분히 당연한 것 같습니다. 사용자 mary
는 "sudoers 파일"에 없기 때문에 sudo
를 사용할 수 없습니다. 그럼 어떻게 그녀를 추가할 수 있는지 봅시다.
관련: Linux에서 sudo 액세스를 제어하는 방법
sudoers 파일 및 visudo
누군가 sudo
명령을 사용하려면 먼저 sudoers
파일로 작업해야 합니다. 이것은 sudo
를 사용할 수 있는 사용자의 사용자 그룹을 나열합니다. 파일을 수정해야 하는 경우 수정해야 합니다.
sudoers
파일은 visudo
명령을 사용하여 열어야 합니다 . 이것은 sudoers
파일을 잠그고 두 사람이 동시에 변경을 시도하는 것을 방지합니다. 또한 편집 내용을 저장하기 전에 일부 온전성 검사를 수행하여 올바르게 구문 분석되고 구문적으로 올바른지 확인합니다.
visudo
는 편집기가 아니며 사용 가능한 편집기 중 하나를 시작합니다. Ubuntu 22.04, Fedora 37 및 Manjaro 21에서 visudo
는 nano를 출시했습니다. 컴퓨터에서는 그렇지 않을 수 있습니다.
누군가에게 전체 sudo
권한에 대한 액세스 권한을 부여하려면 sudoers
파일의 일부 정보만 참조하면 됩니다. 좀 더 세분화하고 사용자에게 root
의 일부 기능을 제공하려면 파일을 편집하고 변경 사항을 저장해야 합니다.
어느 쪽이든, 우리는 visudo
를 사용해야 합니다.
관련: Vi 또는 Vim 편집기를 종료하는 방법
Ubuntu 및 기타 Linux 배포판에 새 sudo 사용자 추가
작업 역할을 수행하기 위해 루트 권한에 액세스해야 하는 두 명의 사용자가 있습니다. 그들은 톰과 메리입니다. Mary는 root
가 할 수 있는 모든 것에 액세스할 수 있어야 합니다. Tom은 응용 프로그램만 설치하면 됩니다.
먼저 sudoers' 그룹에 Mary를 추가해 보겠습니다. 우리는 visudo
를 시작해야 합니다.
sudo visudo
"사용자 권한 사양" 섹션이 표시될 때까지 편집기에서 아래로 스크롤합니다. "이 그룹의 구성원이 모든 명령을 실행할 수 있도록 허용"과 유사한 설명을 찾습니다.
sudo
그룹의 구성원은 모든 명령을 실행할 수 있다고 들었습니다. Mary의 경우에 우리가 알아야 할 것은 그 그룹의 이름뿐입니다. 항상 sudo
는 아닙니다. 그것은 wheel
또는 다른 것일 수 있습니다. 이제 그룹 이름을 알았으므로 편집기를 닫고 Mary를 해당 그룹에 추가할 수 있습니다.
-a
(추가) 및 -G
(그룹 이름) 옵션과 함께 usermod
명령을 사용하고 있습니다. -G
옵션을 사용하면 사용자를 추가하려는 그룹의 이름을 지정할 수 있고 -a
옵션은 usermod
에게 이 사용자가 이미 있는 기존 그룹 목록에 새 그룹을 추가하도록 지시합니다.
-a
옵션을 사용하지 않으면 사용자가 속하게 될 그룹은 새로 추가된 그룹뿐입니다. 다시 확인하고 -a
옵션을 포함했는지 확인하십시오.
sudo usermod -aG sudo 메리
다음에 Mary가 로그인할 때 그녀는 sudo
에 액세스할 수 있습니다. 우리는 그녀를 로그인했고 파일 시스템 테이블 파일 "/etc/fstab"을 편집하려고 합니다. 이것은 root
를 제외한 모든 사람에게 범위를 벗어난 파일입니다.
sudo 나노 /etc/fstab
nano 편집기는 "/etc/fstab" 파일이 로드된 상태로 열립니다.
sudo
권한이 없으면 읽기 전용 파일로만 열 수 있습니다. Mary에게는 더 이상 이러한 제한이 없습니다. 그녀는 변경 사항을 저장할 수 있습니다.
편집기를 닫고 변경 사항을 저장 하지 마십시오 .
sudoers 파일을 편집하여 sudo 권한 제한
다른 사용자인 Tom은 소프트웨어를 설치할 수 있는 권한을 부여받을 것이지만 Mary에게 부여된 모든 권한을 받지는 못할 것입니다.
sudoers
파일을 수정해야 합니다.
sudo visudo
"사용자 권한 사양" 섹션이 표시될 때까지 편집기에서 아래로 스크롤합니다. "이 그룹의 구성원이 모든 명령을 실행할 수 있도록 허용"과 유사한 설명을 찾습니다. Mary를 추가해야 하는 그룹의 이름을 찾은 파일의 동일한 지점입니다.
해당 섹션 아래에 다음 줄을 추가합니다.
# 사용자 Tom은 소프트웨어를 설치할 수 있습니다. 톰 ALL=(루트) /usr/bin/apt
첫 번째 줄은 간단한 주석입니다. 사용자 이름 "tom"과 단어 "All" 사이에 탭이 있습니다.
이것이 라인의 항목이 의미하는 것입니다.
- tom : 사용자의 기본 그룹 이름입니다. 일반적으로 사용자 계정의 이름과 동일합니다.
- ALL= : 이 규칙은 이 네트워크의 모든 호스트에 적용됩니다.
- (root) : "tom" 그룹의 구성원, 즉 사용자 Tom은 나열된 명령에 대해
root
권한을 가질 수 있습니다. - /usr/bin/apt : 이것은 사용자 Tom이
root
로 실행할 수 있는 유일한 명령입니다.
이 컴퓨터는 Ubuntu Linux를 사용하기 때문에 여기에 apt
패키지 관리자를 지정했습니다. 다른 배포판을 사용하는 경우 이를 적절한 명령으로 바꿔야 합니다.
Tom에 로그인하여 예상한 동작이 나타나는지 봅시다. "/etc/fstab" 파일을 편집하려고 합니다.
sudo 나노 /etc/fstab
그 명령은 거부되었고 "user tom은 루트로 '/usr/bin/nano /etc/fstab'을 실행할 수 없습니다 ..."라는 메시지가 표시됩니다.
그것이 우리가 원했던 것입니다. 사용자 Tom은 apt
패키지 관리자만 사용할 수 있어야 합니다. 그들이 그렇게 할 수 있는지 확인합시다.
sudo apt 설치 네오페치
명령이 Tom에 대해 성공적으로 실행되었습니다.
누구든지 이 명령을
모든 사용자가 sudo
를 사용할 수 있다면 혼란이 가중될 것입니다. 그러나 다른 사용자가 귀하의 관리 부담을 공유할 수 있도록 홍보할 가치가 있습니다. 그들이 가치가 있는지 확인하고 계속 주시하십시오.
컴퓨터의 유일한 사용자일지라도 다른 사용자 계정을 만들고 sudo
에 대한 전체 액세스 권한을 부여하는 것을 고려해 볼 가치가 있습니다. 그렇게 하면 기본 계정이 잠긴 경우 상황을 해결하기 위해 로그인할 수 있는 다른 계정을 갖게 됩니다.
관련: Linux에서 sudo 명령 사용을 검토하는 방법