![프로그램/사용자에게 특정 작업을 수행할 수 있는 권한 부여](https://linux55.com/image/202821/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8%2F%EC%82%AC%EC%9A%A9%EC%9E%90%EC%97%90%EA%B2%8C%20%ED%8A%B9%EC%A0%95%20%EC%9E%91%EC%97%85%EC%9D%84%20%EC%88%98%ED%96%89%ED%95%A0%20%EC%88%98%20%EC%9E%88%EB%8A%94%20%EA%B6%8C%ED%95%9C%20%EB%B6%80%EC%97%AC.png)
저는 비밀번호를 삽입하지 않고 일부 권한 있는 작업을 수행해야 하는 프로그램을 작성하고 있습니다. 예를 들면 다음과 같습니다.
- systemctl 명령 사용
- 슈퍼유저 명령 실행
- 루트 사용자가 소유한 파일 읽기/쓰기
지금까지 내가 한 일은 프로그램을 실행하는 사용자를 위한 sudoer 파일을 생성하여 암호 없이 특정 sudo 명령을 실행할 수 있도록 하는 것이었습니다.
이제 일부 루트 파일을 읽고 써야 합니다. 예를 들어 /etc/shadow를 읽어야 합니다. 비록 cat /etc/shadow
sudoer 파일에 추가할 수 있지만 내 프로그램(또는 프로그램을 실행하는 사용자)에게 직접 읽기 권한을 부여하는 것을 선호합니다. 파일(즉, 프로그램 자체 내에서 파일 열기 및 읽기)
이 목표를 어떻게 달성할 수 있나요?
그리고 저처럼 sudoer 파일을 사용해도 괜찮을까요? 더 나은 옵션이 있습니까?
마지막으로 내 프로그램/사용자에게 전체 수퍼유저 권한을 부여하지 않고 필요한 특정 작업에 필요한 권한만 부여하도록 지정하고 싶습니다.
미리 감사드립니다.