우분투(Ubuntu) 서버에는 여러 사용자가 동시에 접속하여 작업을 수행할 수 있습니다. 각 사용자별로 적절한 권한을 부여하고, 필수적으로 필요한 권한만을 제공하는 것이 보안과 관리에 있어 매우 중요합니다. 본 문서에서는 우분투 서버에서 사용자 및 그룹 관리, sudo 권한 관리 및 최소 권한 원칙을 적용하는 방법에 대해 자세히 다루겠습니다.
1. 사용자 관리
우분투 서버에서는 여러 사용자를 생성하고 관리할 수 있습니다. 각 사용자는 시스템에 로그인하고, 특정 작업을 수행할 수 있는 권한을 가지고 있습니다.
1.1 사용자 추가하기
사용자를 추가하려면 adduser
명령어를 사용합니다. 이 명령어는 새로운 사용자를 생성하고, 해당 사용자의 홈 디렉터리도 생성합니다.
sudo adduser 사용자이름
예를 들어, “newuser”라는 사용자를 추가하려면 다음 명령어를 실행합니다.
sudo adduser newuser
1.2 사용자 삭제하기
사용자를 삭제하려면 deluser
명령어를 사용할 수 있습니다. 이 명령어는 사용자를 제거합니다.
sudo deluser 사용자이름
사용자를 삭제하면서 홈 디렉터리도 함께 삭제하려면, 다음과 같이 --remove-home
옵션을 추가합니다.
sudo deluser --remove-home newuser
2. 그룹 관리
사용자는 그룹에 속할 수 있습니다. 그룹은 사용자를 모아놓은 단위로, 특정 그룹에 속하는 사용자들에게 공통의 권한을 부여할 수 있습니다.
2.1 그룹 추가하기
그룹을 추가하려면 addgroup
명령어를 사용합니다.
sudo addgroup 그룹이름
예를 들어, “developers”라는 그룹을 추가하려면 다음과 같이 입력합니다.
sudo addgroup developers
2.2 사용자에게 그룹 할당하기
사용자를 그룹에 추가하려면 usermod
명령어를 사용합니다.
sudo usermod -aG 그룹이름 사용자이름
예를 들어, “newuser”를 “developers” 그룹에 추가하려면 다음과 같이 입력합니다.
sudo usermod -aG developers newuser
3. sudo 권한 관리
일반 사용자가 시스템의 관리자 작업을 수행해야 할 경우, sudo
명령어를 사용합니다. 이 명령어를 통해 일시적으로 관리자 권한을 부여받아 특정 작업을 수행할 수 있습니다.
3.1 sudo 설치하기
우분투에는 기본적으로 sudo
가 설치되어 있지만, 만약 설치되어 있지 않다면 다음 명령어로 설치할 수 있습니다.
sudo apt update
sudo apt install sudo
3.2 사용자에게 sudo 권한 부여하기
특정 사용자에게 sudo 권한을 부여하려면, 해당 사용자를 sudo
그룹에 추가합니다.
sudo usermod -aG sudo 사용자이름
예를 들어, “newuser”에게 sudo 권한을 부여하려면 다음과 같이 입력합니다.
sudo usermod -aG sudo newuser
3.3 sudoers 파일 수정하기
sudors 파일을 수정하여 특정 사용자나 그룹에게 세부적인 권한을 설정할 수 있습니다. visudo
명령어를 사용하여 sudoers 파일을 편집합니다.
sudo visudo
이 파일에서 특정 사용자나 그룹에 대한 규칙을 추가하거나 수정할 수 있습니다. 예를 들어, “newuser”가 모든 명령을 실행할 수 있도록 하려면 다음과 같이 추가합니다.
newuser ALL=(ALL:ALL) ALL
4. 최소 권한 원칙
최소 권한 원칙(Principle of Least Privilege)은 사용자가 수행해야 할 작업에 필요한 최소한의 권한만을 부여하는 보안 원칙입니다. 이 원칙을 적용하면 사용자의 권한을 최소화하여 보안 위험을 줄일 수 있습니다.
4.1 사용자 권한 검토하기
각 사용자의 현재 권한을 확인하고, 실제로 필요한 권한과 권한을 비교하여 불필요한 권한을 제거하는 것이 필요합니다. groups 사용자이름
명령어를 사용하여 사용자가 속한 그룹을 확인할 수 있습니다.
groups newuser
4.2 권한 변경하기
필요한 경우 사용자의 권한을 조정합니다. 예를 들어, 사용자에게 불필요한 sudo 권한을 제거하고자 한다면, 해당 사용자를 sudo
그룹에서 제거합니다.
sudo gpasswd -d 사용자이름 sudo
5. 마무리
우분투 서버에서 사용자 및 그룹 관리, sudo 권한 설정과 최소 권한 원칙의 적용은 시스템 보안을 강화하는 데 매우 중요한 역할을 합니다. 이 글에서 설명한 방법을 통해, 효율적으로 사용자를 관리하고 권한을 설정하여 보다 안전한 서버 환경을 구축할 수 있습니다.
추가로, 주기적으로 사용자와 그룹의 권한을 검토하고, 필요하지 않은 권한은 적극적으로 제거하여 관리하는 것이 좋습니다. 보안이 중요한 서버 환경에서는 특히 이러한 관리가 더욱 필요합니다.
이제 여러분은 우분투 서버에서 사용자 및 그룹 관리, sudo 권한 부여, 최소 권한 원칙에 대해 잘 이해하고 적용할 수 있게 되었습니다. 이를 통해 안정적이고 보안성이 높은 서버 환경을 운영하시기 바랍니다.