로그인 회원가입
모두인포
전체IT경제사회생활스포츠시사여행연애

리눅스 sudo

lmkfox · 2025-09-30 · 조회 0
리눅스 sudo
1. sudo 개요 - sudo는 일반 사용자 계정이 루트 권한(root privilege) 또는 다른 사용자 권한으로 명령을 실행할 수 있게 하는 프로그램입니다. - 전통적으로 루트 권한이 필요한 작업은 su로 root 계정으로 직접 전환해야 했지만, sudo는 특정 명령만 루트 권한으로 수행할 수 있도록 허용하여 보안성과 편의성을 동시에 제공합니다. 2. 기본 사용법 sudo [옵션] 명령어 [인자...] 예시: sudo apt update sudo systemctl restart nginx sudo cp file /etc/ - 기본적으로 sudo를 입력하면 현재 사용자의 비밀번호를 묻습니다. (root 비밀번호가 아님) - 인증 성공 후 일정 시간 동안(timestamp_timeout, 보통 5분) 재입력 없이 사용할 수 있습니다. 3.  sudo 의 동작 원리 - 사용자가 sudo를 입력 → /etc/sudoers 설정 확인. - 해당 사용자가 지정된 명령을 실행할 권한이 있는지 확인. - 권한이 있으면 명령을 root(혹은 다른 지정 사용자) 권한으로 실행. - 실행 기록이 /var/log/auth.log 또는 journalctl 같은 로그에 남음. 4. 주요 옵션 - -u USER : 특정 사용자 권한으로 실행 sudo -u postgres psql - - -i : 지정 사용자 환경 초기화 후 로그인 셸 실행 sudo -i - - -s : 지정 사용자 셸 실행 (환경 유지) - -k : 캐시된 인증 무효화(다음 명령 시 비밀번호 재요구) - -l : 자신이 어떤 명령을 sudo로 실행할 수 있는지 확인 5.  /etc/sudoers  설정 sudo 권한은 /etc/sudoers 파일 또는 /etc/sudoers.d/ 디렉토리에 정의됩니다. 편집은 visudo 명령으로 해야 구문 오류를 방지할 수 있습니다. 기본 구조 user host = (runas) command 예시: # root 모든 권한 root ALL=(ALL:ALL) ALL # user1은 모든 호스트에서 모든 명령 가능 user1 ALL=(ALL) ALL # devuser는 /bin/systemctl restart nginx만 실행 가능 devuser ALL=(ALL) /bin/systemctl restart nginx 6.  sudo  그룹 대부분의 배포판은 특정 그룹(예: sudo, wheel)에 속한 사용자에게 루트 권한을 부여합니다. - Debian/Ubuntu 계열: sudo 그룹 - Red Hat/CentOS 계열: wheel 그룹 사용자를 그룹에 추가: sudo usermod -aG sudo user1 # Ubuntu sudo usermod -aG wheel user1 # CentOS 7. 보안 특징 - 최소 권한 원칙: root 계정 직접 로그인 대신 필요한 명령만 허용. - 감사(Audit) 가능: 모든 sudo 사용 내역이 로그에 기록. - 비밀번호 보호: root 비밀번호 대신 사용자 자신의 비밀번호 사용. - 시간 제한 인증: 비밀번호 입력 후 일정 시간만 유효. 8. 위험과 주의사항 - sudo su 또는 sudo -i로 root 셸을 띄우면 전체 권한을 계속 유지 → 실수 위험 증가. - 잘못된 sudoers 설정은 보안 구멍으로 이어질 수 있음(예: NOPASSWD:ALL). - 스크립트에서 sudo 사용 시 입력 대기 문제 발생 가능 → 자동화에서는 sudoers 설정을 통해 특정 명령을 비밀번호 없이 허용하는 경우도 있음. 9. 유용한 활용 예시 - 로그 보기 (보안 감사) sudo journalctl -u ssh - - 특정 사용자 권한으로 실행 sudo -u www-data whoami - - 비밀번호 묻지 않고 특정 명령 실행 (sudoers) deploy ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart myapp 10. 요약 - sudo는 루트 계정 직접 사용을 대체하는 보안 도구. - /etc/sudoers로 권한을 세밀하게 제어 가능. - 로그가 남아 추적 가능. - 권한을 최소화하는 방향으로 설정하는 것이 보안적으로 안전.

댓글

아직 댓글이 없습니다.

로그인 후 댓글을 남길 수 있습니다.