![sudo 없이 systemctl 명령을 실행하는 방법은 무엇입니까?](https://linux55.com/image/196703/sudo%20%EC%97%86%EC%9D%B4%20systemctl%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EC%8B%A4%ED%96%89%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
배경: 내 개발자가 RHEL8.3 서버에 Informatica 제품을 설치하고 있습니다. 서비스는 이름이 지정된 사용자로 실행 중이며 infa_admin
해당 사용자는 이미 이 wheel
그룹에 속해 있습니다. 이 사용자는 sudo
비밀번호를 묻는 메시지 없이 모든 관리 명령을 실행할 수 있습니다.
비활성화를 요청했지만 SELinux
조직 정책에 따라 이는 허용되지 않습니다.
그들이 제안한 해결책은 사용자 infa_admin
가 sudo
.
서비스가 호출된다고 가정하면 nginx
현재 다음을 수행할 수 있습니다.
sudo systemctl restart nginx
그들은 다음을 수행해야 합니다:
systemctl restart ngnix
--> 현재는 원하는 비밀번호가 아닌 비밀번호를 묻는 메시지가 표시됩니다.
관리할 수 있어야 하는 실제 서비스는 다음과 같습니다.discoverypostgres , zk and solr
내 이해로는 이것은 불가능합니다. 이를 수행할 수 있는 방법이 있습니까?
답변1
그들은 다음을 수행해야 합니다: systemctl restart nginx --> 현재 이것은 그들이 원하는 것이 아닌 비밀번호를 묻는 메시지를 표시합니다.
비밀번호를 묻지 않고 sudo를 사용하여 특정 명령만 실행하도록 허용하는 솔루션입니까?
sudo visudo
그러면 파일 편집기가 열립니다 sudoers
. 다음 줄을 추가합니다.
%wheel ALL=NOPASSWD: /usr/bin/systemctl restart nginx
이를 통해 그룹 휠 사용자는 systemctl restart nginx
비밀번호를 입력하지 않고도 작업을 수행할 수 있습니다. 권한이 더 세분화된 경우 별도의 그룹을 만들 수 있습니다.