1. 사용자와 그룹

다중 사용자 운영 체제에서 사용자 및 그룹 관리는 근본적인 개념입니다. 이는 액세스 제어 및 권한을 위해 설계된 리눅스 기초의 핵심 부분입니다. 프로세스가 실행될 때, 해당 프로세스는 시작한 사용자로 실행됩니다. 마찬가지로 파일 액세스 및 소유권은 권한에 따라 달라지므로 한 사용자가 다른 사용자의 개인 문서를 액세스하는 것을 방지합니다.

리눅스 사용자 및 그룹의 기본 사항

리눅스 시스템의 모든 사용자에게는 개인 홈 디렉터리가 할당되며, 일반적으로 /home/username에 위치합니다. 이 디렉터리는 사용자별 파일 및 구성이 저장되는 곳이지만, 정확한 경로는 리눅스 배포판마다 다를 수 있습니다.

시스템은 사용자 ID(UID) 로 사용자를, 그룹 ID(GID) 로 그룹을 식별합니다. 사람이 읽을 수 있는 사용자 이름을 사용하지만, 운영 체제는 모든 권한 관련 작업에 대해 이러한 고유한 숫자 ID 에 의존합니다. 그룹은 단순히 사용자들의 모음이므로 여러 계정에 대한 권한을 한 번에 더 쉽게 관리할 수 있습니다.

슈퍼유저 및 Sudo 명령어

리눅스 사용자 및 그룹 계층 구조 내에서 모든 사용자 위에 군림하는 한 사용자가 있습니다. 바로 슈퍼유저인 root입니다. root 사용자는 무제한의 권한을 가지며, 모든 파일에 액세스하고 모든 프로세스를 관리할 수 있습니다. 지속적으로 root로 작업하는 것은 간단한 실수로 시스템이 손상될 수 있으므로 위험합니다.

이러한 위험을 완화하기 위해 권한이 있는 사용자는 sudo(superuser do) 명령어를 사용하여 루트 권한으로 명령을 실행할 수 있습니다. 이를 통해 root 사용자로 로그인하지 않고도 관리 작업을 수행할 수 있습니다. sudo를 올바르게 사용하는 방법을 이해하는 것은 가장 빠른 리눅스 고급 관리 기술을 습득하려는 모든 사람에게 필수적입니다.

암호화된 사용자 암호가 저장되는 /etc/shadow와 같은 보호된 파일을 보려고 시도해 봅시다.

cat /etc/shadow

"Permission denied" 오류가 발생할 것입니다. 파일의 권한을 검사해 봅시다.

$ ls -la /etc/shadow

-rw-r----- 1 root shadow 1134 Dec 1 11:45 /etc/shadow

권한에 대해서는 나중에 자세히 다루겠지만, 이 출력은 root 사용자와 shadow 그룹의 구성원만이 이 파일을 읽을 수 있음을 보여줍니다. 이제 sudo를 사용하여 명령을 다시 실행해 봅시다.

sudo cat /etc/shadow

이번에는 암호를 입력하라는 메시지가 표시되며, 인증에 성공하면 파일 내용이 표시됩니다.

로그인하여 학습 진행 상황을 저장하세요

로그인

연습 문제

많은 리눅스 학습 앱이 있지만, 실습이 필수적입니다. 리눅스 사용자, 그룹 및 sudo에 대한 이해를 강화하기 위한 몇 가지 실습실 (랩) 이 있습니다.

  1. useradd, usermod 및 userdel 을 사용하여 리눅스 사용자 계정 관리 - 새 계정 생성 및 보안부터 계정 수정 및 삭제에 이르기까지 사용자 관리의 전체 수명 주기를 연습합니다.
  2. groupadd, usermod 및 groupdel 을 사용하여 리눅스 그룹 관리 - 새 그룹 생성, 사용자 멤버십 수정 및 그룹 제거를 포함하여 그룹 관리를 위한 핵심 명령줄 유틸리티에 대한 실습 경험을 얻습니다.
  3. 리눅스에서 사용자 계정 및 Sudo 권한 구성 - 리눅스 시스템 보안 강화를 위해 사용자 계정 및 sudo 권한을 관리하는 필수 기술을 학습하며, 관리 권한 부여도 포함됩니다.

이러한 실습실은 사용자 및 그룹 관리 개념과 sudo 사용을 실제 시나리오에 적용하고 리눅스 시스템 관리 자신감을 키우는 데 도움이 될 것입니다.

퀴즈

단일 명령을 `root` 권한으로 실행할 수 있게 해주는 명령어는 무엇입니까? (영어로, 소문자만 사용하여 답하십시오).