728x90
반응형
Linux에서 관리자 권한을 부여하는 방법은 주로 sudo
명령어를 통해 사용자에게 특정 명령어를 실행할 수 있는 권한을 부여하는 방식입니다. 이 문서에서는 이를 수행하는 상세한 절차와 주의사항을 설명합니다.
1. sudo를 통한 관리자 권한 부여
sudo
는 사용자가 루트(root) 권한으로 명령어를 실행할 수 있도록 허용하는 도구입니다. 특정 사용자 또는 그룹에 sudo
권한을 부여하려면 아래 단계를 따르세요.
1.1 사용자에게 sudo 권한 부여
- 루트 계정으로 로그인
또는su -
sudo -i
를 사용하여 루트 권한을 획득합니다. - 사용자를 sudo 그룹에 추가대부분의 Linux 배포판(Ubuntu, Rocky Linux 등)에서는
sudo
또는wheel
그룹에 속한 사용자가 관리자 권한을 가집니다.Rocky Linux 또는 CentOS에서는wheel
그룹을 사용:참고:-a
옵션은 기존 그룹을 유지하면서 추가하는 역할을 합니다. usermod -aG wheel username
usermod -aG sudo username
- 권한 확인변경 사항을 적용하려면 사용자가 로그아웃 후 다시 로그인해야 합니다. 이후 아래 명령어로 확인:또는 사용자가
sudo
명령어를 실행할 수 있는지 테스트: sudo -l
groups username
1.2 sudoers 파일 직접 수정
더 세밀한 권한 관리가 필요할 경우, /etc/sudoers
파일을 편집하여 특정 사용자나 명령어에 대한 권한을 설정할 수 있습니다.
- sudoers 파일 안전하게 편집
visudo
명령어를 사용하여 안전하게 파일을 편집: visudo
- 사용자 권한 추가파일 끝에 다음 줄을 추가하여 특정 사용자에게 모든 명령어 실행 권한 부여:비밀번호 입력 없이
sudo
실행 허용: username ALL=(ALL) NOPASSWD: ALL
username ALL=(ALL) ALL
- 특정 명령어만 허용예:
/usr/bin/systemctl
명령어만 실행 가능하도록 설정: username ALL=(ALL) NOPASSWD: /usr/bin/systemctl
- 변경 사항 저장
visudo
는 파일 문법을 자동으로 검사하므로 오류가 없으면 저장됩니다.
2. 루트 계정 직접 사용
루트 계정으로 직접 로그인하여 관리자 권한을 사용하는 방법입니다. 하지만 보안상 권장되지 않으며, 필요한 경우에만 사용하세요.
- 루트 계정 활성화일부 배포판에서는 루트 계정의 비밀번호가 기본적으로 설정되어 있지 않을 수 있습니다. 설정 방법:
sudo passwd root
- 루트로 전환
또는:su -
sudo -i
- SSH를 통한 루트 로그인 허용 (선택 사항)
/etc/ssh/sshd_config
파일에서PermitRootLogin
을 수정:변경 후 SSH 서비스 재시작:경고: 루트 SSH 로그인은 보안 위험이 크므로, 키 기반 인증과 함께 사용하거나 비활성화하는 것이 좋습니다. systemctl restart sshd
PermitRootLogin yes
3. SELinux와의 상호작용 (Rocky Linux 등)
Rocky Linux와 같은 SELinux 활성화 배포판에서는 추가적인 권한 설정이 필요할 수 있습니다.
- SELinux 상태 확인
getenforce
- sudo 명령어에 대한 SELinux 정책 확인SELinux가
sudo
명령어를 제한할 수 있으므로, 필요 시 정책 추가: semanage permissive -a sudo_t
4. 권한 관리 모범 사례
- 최소 권한 원칙: 필요한 사용자에게만 최소한의 권한을 부여하세요.
- 비밀번호 보호:
sudo
명령어 실행 시 비밀번호를 요구하도록 설정하여 보안을 강화하세요. - 로그 모니터링:
/var/log/secure
또는/var/log/auth.log
를 확인하여sudo
사용 내역을 모니터링하세요. - 루트 계정 최소화: 루트 계정 직접 사용 대신
sudo
를 사용하세요.
5. 문제 해결
- "user is not in the sudoers file" 오류사용자가
sudo
그룹에 없거나sudoers
파일에 정의되지 않은 경우 발생. 위의 1.1 또는 1.2 단계를 따라 권한 추가. - SELinux 관련 오류
journalctl -xe
로 SELinux 관련 로그를 확인하고, 필요 시 정책 수정. - SSH 루트 로그인 실패
sshd_config
설정과 방화벽 포트(기본 22번)를 확인하세요.
6. 추가 참고 자료
- 공식 문서: sudoers Manual
- Rocky Linux SELinux 가이드: Rocky Linux SELinux
반응형
'리눅스 리뷰' 카테고리의 다른 글
우분투(Ubuntu) 설치 가이드: 단계별로 따라하기 쉬운 설치 방법 (0) | 2025.05.06 |
---|---|
Linux에서 bash와 sh 스크립트 작성: 차이점과 주의점 (0) | 2025.05.04 |
CentOS 7에서 yum을 다시 활성화하는 방법 (0) | 2025.03.19 |
🚀 CentOS에서 Rocky Linux로 마이그레이션 후 성능 최적화 가이드 (0) | 2025.03.19 |
🐧 CentOS vs Rocky Linux 완벽 비교! (2025 최신) (0) | 2025.03.19 |