{{tag>[sudo config sudoers security]}}
====== sudo configuration ======
''sudoers'' 정책의 기본 구조와 안전한 작성·검증 흐름을 설명한다.
===== File locations =====
* ''/etc/sudoers'': 기본 정책 파일
* ''/etc/sudoers.d/'': 역할이나 애플리케이션별 include 정책
* ''/etc/sudo.conf'': sudo frontend와 plugin 설정. sudoers 정책 파일과 용도가 다르다.
===== Syntax =====
기본 user specification은 다음 요소로 구성된다.
USER HOST=(RUNAS_USER:RUNAS_GROUP) TAGS: COMMANDS
%operations ALL=(root) /usr/bin/systemctl status sshd
deploy ALL=(www-data) /usr/bin/id
* ''%GROUP'': Unix group
* ''ALL'': 해당 위치에서 모든 값. 각 위치의 의미가 다르므로 최소 범위로 제한
* command는 가능하면 절대 경로로 지정
* alias와 ''Defaults''는 반복 정책을 구조화할 때 사용
===== Safe authoring =====
sudo visudo
sudo visudo -f /etc/sudoers.d/operations
sudo visudo -cf /etc/sudoers.d/operations
sudo -l -U alice
''NOPASSWD: ALL'', unrestricted shell/editor/interpreter, 사용자가 수정 가능한 script나 directory를 privileged command로 허용하지 않는다. wildcard와 command argument matching은 sudoers 버전의 정확한 규칙을 공식 manual에서 확인한다.
===== Precedence and includes =====
sudoers는 선언 순서, alias, ''Defaults'' scope, include 순서가 결과에 영향을 줄 수 있다. 파일 이름 규칙과 include 처리는 배포판 설정을 확인하고 전체 정책을 ''visudo -c''로 검사한다.
===== Validation =====
sudo visudo -c
sudo -l
sudo -l -U alice
===== See Also =====
* [[sudo:ko]]
* [[visudo:ko]]
* [[sudoedit]]
* [[https://www.sudo.ws/docs/man/sudoers.man/|Official sudoers manual]]
===== History =====
* codex:: 2026-08-10 Added a dedicated sudoers authoring, precedence, and validation guide.
{{indexmenu>.#1|js}}