Linux에서 비밀번호 입력 없이 권한 상승하기
sudo와 polkit에서 비밀번호 입력을 생략하는 방법을 알아봅니다.
Linux에서 비밀번호 입력 없이 권한 상승하기
보안을 위해서라면 언제든 비밀번호를 확인하면서 N분 동안만 다시 물어보지 않는 것이 적합합니다. 하지만 홈 기기를 사용하면서 sudo 명령이나 polkit-1이 요구하는 패스워드 입력으로 인해 집중이 깨지는 상황을 경험해본 적이 있을 것입니다.
이 가이드에서는 편의성을 위해 비밀번호 입력을 생략하는 방법을 소개합니다. 하지만 보안상 위험이 따르므로 주의 깊게 사용해야 합니다.
보안 주의사항
이 설정은 보안상 위험할 수 있습니다. 꼭 필요한 경우에만 사용하고, 특히 공용 컴퓨터나 서버 환경에서는 사용하지 않는 것을 강력히 권장합니다.
설정 방법
비밀번호 입력을 생략하는 방법은 크게 두 가지가 있습니다:
sudo 명령어 비밀번호 생략
터미널에서 실행하는 sudo 명령어에서 비밀번호 입력을 생략하는 방법입니다.
1
sudoers 파일 편집
bash
{sudo visudo}
안전한 편집을 위해 반드시 visudo
명령어를 사용하세요.
2
NOPASSWD 설정 추가
파일 끝에 다음 줄을 추가합니다:
text
{your_username ALL=(ALL) NOPASSWD: ALL}
your_username
을 실제 사용자명으로 바꾸세요.
3
설정 저장
Ctrl+X를 누르고 Y를 입력하여 저장합니다.
적용 범위
이 설정은 sudo로 실행되는 모든 명령(프로그램 설치, 설정, 파티션 작업 등)에 적용됩니다.
특정 명령어만 허용하기
보안을 위해 특정 명령어에만 비밀번호 생략을 적용할 수도 있습니다.
sudo 명령어별 설정
text
{# 특정 명령어만 허용 your_username ALL=(ALL) NOPASSWD: /usr/bin/apt, /usr/bin/systemctl }
polkit 액션별 설정
javascript
{polkit.addRule(function(action, subject) { if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" && subject.isInGroup("storage")) { return polkit.Result.YES; } });}
중요 고려사항
보안 위험
- 이 설정은 보안상 위험할 수 있습니다
- 홈 환경에서만 사용하는 것을 권장합니다
- 공용 컴퓨터나 서버에서는 절대 사용하지 마세요
- 허용 대상을 최소화하여 설정하세요
시스템 차이점
- sudoers와 polkit은 별개의 인증 시스템입니다
- 각각 독립적으로 설정해야 합니다
- GUI 프로그램과 터미널 명령어는 다른 시스템을 사용할 수 있습니다