Sudo 패스워드 설정

/etc/sudoers 에 아래와 같이 설정하였습니다.

daemon ALL=NOPASSWD:/etc/init.d/dhcp3-server

daemon 계정으로 암호 없이 dhcp3-server 를 실행하려고 하는데 계속 암호를 물어봅니다.

암호를 아예 안물어보게 하는 방법이 있나요?

아니면 sudo 패키지를 걍 지워야 할까요…

daemon ALL = (ALL) ALL, NOPASSWD: /etc/init.d/dhcp3-server 로
변경 하여 보시기 바랍니다.

daemon ALL = (ALL) ALL, NOPASSWD: /etc/init.d/dhcp3-server

이렇게 설정해도 마찬가지 입니다 ㅠㅠ

sudo 패키지를 지우는것은 어떨까요… 답답하네요 ㅡㅡ;;

안되신 다니 3가지 생각이 듭니다.

  1. sudoers 파일 편집은 visudo 로 해야 합니디.

  2. daemon 은 원래 존재 하는 유저 입니다.
    유저를 하나 만들고 고쳐 보시기 바랍니다.

  3. daemon 을 admin 그릅으로 추가 바랍니다.
    usermod -g admin daemon

정 안되심 demon 그룹은 passwd 안 물어 보게 하실수 도 있습니다.
4. sudoers 파일 편집
demon ALL=(ALL) ALL

visudo 로 수정했어요… 위에 말씀하신대로 전부 해봤는데도 su - 하면
자기 자신의 패스워드를 물어봅니다.

답변주신분은 혹시 이상없이 잘되시나요…?

우선 4번 답변이 틀렸네요
계정 ALL=NOPASSWD: ALL 입니다.

참고 : https://help.ubuntu.com/community/RootSudo 에서 Remove Password Prompt For sudo

[quote="linuxian":22abkh26]답변주신분은 혹시 이상없이 잘되시나요…?[/quote:22abkh26]
왜 deamon에 권한을 줘서 실행 하려 하는 지 모르겠으나.
전 그리 안하고 그냥 dhcp 서버 구성 이라면 서비스데몬이 처리 하게 하죠
그리고 sudo 나 su - 이용 하여 데몬 중지 재시작 등 하겠지요

일반 유저가 su - 로 루트전환은 당연히 비번 물어 보는거로 알고 있습니다.
비번없이 가능 하려면 그것은 sudoers 편집이 아니라 /etc/pam.d/su 파일 편집으로 가능 합니다.
방법은 생략 합니다.

[quote="linuxian":1sv9p48n]daemon ALL = (ALL) ALL, NOPASSWD: /etc/init.d/dhcp3-server

이렇게 설정해도 마찬가지 입니다 ㅠㅠ

sudo 패키지를 지우는것은 어떨까요… 답답하네요 ㅡㅡ;;[/quote:1sv9p48n]

[code:1sv9p48n]
daemon ALL=NOPASSWD: /etc/init.d/dhcp3-server start, /etc/init.d/dhcp3-server stop
[/code:1sv9p48n]
의도 하시는 바라면 start, stop 옵션까지 붙이셔야 할껍니다…
(ALL) 을 빼도 되는건 분도님 글 보고 해보니 빼도 되는군요… 전 항상 넣어서 썼었는데…

당연히 아시겠지만…
sudo /etc/init.d/dhcp3-server start
와 같은 식으로 실행 시키셔야…

그리고 보통 /etc/init.d 아래 데몬을 유저가 sudo 권한을 가지고 실행 시켜도… 유저 권한이 이나고…
그 데몬설정에 실행 시키고자 했던 권한 을 가지고 실행 되는것으로 알고 있습니다.

말씀들 정말 고맙습니다. 제가 의도하는것은 웹에서 dhcp 데몬을 실행시키고자 함입니다.

그래서 일반 유저 권한이 필요합니다.

아파치를 실행 권한을 가지고 있는 daemon, nobody, apache 등의 권한으로

dhcp 까지 구동해야 하기때문입니다. /etc/init.d/dhcp3-server 스크립트 파일을 열어보니

몇개의 파일을 더 열어야 하고 그 파일에도 권한을 다 줘야하는군요…

여러가지로 복잡하네요… 이것 저것 테스크해보 다시 올려야 겠습니다.

[quote="linuxian":260ao3cw]말씀들 정말 고맙습니다. 제가 의도하는것은 웹에서 dhcp 데몬을 실행시키고자 함입니다.

그래서 일반 유저 권한이 필요합니다.

아파치를 실행 권한을 가지고 있는 daemon, nobody, apache 등의 권한으로

dhcp 까지 구동해야 하기때문입니다. /etc/init.d/dhcp3-server 스크립트 파일을 열어보니

몇개의 파일을 더 열어야 하고 그 파일에도 권한을 다 줘야하는군요…

여러가지로 복잡하네요… 이것 저것 테스크해보 다시 올려야 겠습니다.[/quote:260ao3cw]
웹에서 실행 파일을 실행 시키는것은 원래 권장되는것은 절대 아닙니다만…
그래도 sudo 를 사용해서 하겠다고 한다면…
apache 가 실행 되는 유저 권환에 할당 해주면 됩니다…

[code:260ao3cw]
debian 인 경우는 www-data
gentoo 인 경우는 apache
[/code:260ao3cw]
라는 유저권한으로 실행되는데…(우분투는 뭔지 모르겠습니다…)
이때 해당 유저에 대한 권한만 주면 다른 설정 파일을 건드릴 필요가 없습니다…
오히려 건디단면 더욱 이상한것으로 보입니다…
그리고 php 등에서

[code:260ao3cw]<?
$output = shell_exec(‘sudo /etc/init.d/apache2 restart’);
echo $output;
?>[/code:260ao3cw]
와 같이 원하는… 상태를 넣어 둔다음…

[code:260ao3cw]www-data ALL = NOPASSWD: /etc/init.d/apache2 restart [/code:260ao3cw]
와 같이 /etc/sudoer 에 설정을 추가 한후
root 유저 등에서 sudo su www-data 등고 같이 전환후

[code:260ao3cw]
$ php test.php
[/code:260ao3cw]
같이 실행 시키면 작동하는것을 확인할수 있습니다…

[quote="bluetux":hb8iytqk]웹에서 실행 파일을 실행 시키는것은 원래 권장되는것은 절대 아닙니다만…
그래도 sudo 를 사용해서 하겠다고 한다면…
apache 가 실행 되는 유저 권환에 할당 해주면 됩니다…
Code:
debian 인 경우는 www-data
gentoo 인 경우는 apache

라는 유저권한으로 실행되는데…(우분투는 뭔지 모르겠습니다…)[/quote:hb8iytqk]
우분투도 데비안 동생인지라 … 아파치 기본 권한이 www-data 이옵니다.

[quote="강분도":ea1ylsx3]
우분투도 데비안 동생인지라 … 아파치 기본 권한이 www-data 이옵니다.[/quote:ea1ylsx3]
아마도 같겠지 하긴 했지만…
가끔 형님 뒤통수 치는 동생이 있어서… ㅋㅋ ^^;

우분투는 www-data 네요…

bluetux 님께서 알려주신 방법으로도 마찬가지로 암호를 물어봅니다… ㅡㅡ;;

제 우분투가 이상한건가요…??

[quote="linuxian":37bgsmlj]우분투는 www-data 네요…

bluetux 님께서 알려주신 방법으로도 마찬가지로 암호를 물어봅니다… ㅡㅡ;;

제 우분투가 이상한건가요…??[/quote:37bgsmlj]

/etc/sudoer 파일에…

[code:37bgsmlj]www-data ALL=NOPASSWD: /etc/init.d/dhcp3-server start, /etc/init.d/dhcp3-server stop[/code:37bgsmlj]
라인을 추가 한후…

이렇게 한다음…

[code:37bgsmlj]sudo su www-data[/code:37bgsmlj]
와 같이 www-data 로 로그인한후…

[code:37bgsmlj]sudo /etc/init.d/dhcp3-server stop
sudo /etc/init.d/dhcp3-server start[/code:37bgsmlj]
이렇게 하는데도 패스워드를 불어 본다는건가요?