sudo를 사용하여 암호를 묻지 않고 실행을 허용하는 방법은 무엇입니까?


15

명령 줄 실행을 수행하고 결과를 다시 가져와야하는 Java 응용 프로그램을 작성하고 있지만 명령을 실행할 때 sudo 암호를 묻습니다. 지금까지 나는 시도했다 :

$ sudo -s
$ vim /etc/sudoers
# User privilege specification
root         ALL=(ALL:ALL) NOPASSWD: ALL
javauser     ALL=(ALL:ALL) NOPASSWD: ALL

:wq
$ 4 -r--r-----   1 root root     615 2011-10-26 09:23 sudoers

명령을 실행하면 "[javauser] password for javauser :"를 다시 묻습니다. 그러나 나는 이미 noPASSWD를 언급했습니다.

whoami반환 alex하고 sudoers파일에 이것을 추가하고 있습니다

# User privilege specification
root    ALL=(ALL:ALL) ALL
alex ALL=NOPASSWD: ALL


# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

달리기를 계속하면 비밀번호, 아이디어가 필요합니까?


매우 유사한 질문이 이미있는 것 같습니다 : askubuntu.com/questions/39281/…- 거기서 답변을 시도해 보셨습니까 ?
Sergey

Java 코드에서 시스템 호출에 "sudo / absolute / path / to / command"를 사용해야합니다. Btw. 보안상의 이유로 sudoers 파일을 편집하는 sudo visudo대신 사용해야 vim합니다. 그렇게하면 실수를하면 프로그램이 경고합니다.
con-f-use

내가 정확히 시도한 것을 여기에서 찾을 수 있습니다 : gist.github.com/1315951

답변:


28

터미널 유형에서 다음을 수행하고 sudo visudosudo 암호를 입력하지 않고 실행할 명령을 지정하여 파일 끝에 다음과 같은 행을 추가해야합니다 (프로그램에서 사용하려는 각 명령을 사용하는 것이 좋습니다. 이것으로 모든 프로그램을 실행할 수는 없습니다)

<yourusername> ALL=NOPASSWD: <command1>, <command2>

로 명령을 입력하는 한 암호없이 지정된 명령을 실행할 수 있습니다 sudo.

즉 : shutdown -r now매번 sudo 암호를 입력하지 않아도 실행 하고 사용자 이름이 'joedoe'라고 말하십시오.

  1. sudo visudo터미널에 입력

  2. 파일 끝에joedoe ALL=NOPASSWD: /usr/sbin/shutdown -r now 새 줄 추가 하고 사용하려는 프로그램의 절대 경로를 사용하십시오.

  3. 프로그램 sudo shutdown -r now에서 sudo 암호를 입력하지 않고도 사용할 수 있습니다 .

which <program name>터미널 을 사용하여 프로그램의 절대 경로를 찾을 수 있습니다 .

매우 위험한 속임수는 시스템을 다른 위험에 노출 시키지만, 당신이하는 일을 알고 이것을 원한다고 생각합니다.

편집하다

그룹 권한으로 아무것도 덮어 쓰지 않도록 설정중인 허용이 파일의 끝에 있는지 확인해야합니다 .


그는 이미 그렇게 한 것 같습니다.
con-f-use

그는 이미 그랬다면 왜 그가 사용해야 그를 설명하는 sudo visudo하지 vim의 sudoers 파일을 편집? 그가 그렇게하면 효과가 있습니다.
Bruno Pereira

1
@goOgle sudo코드 내부 명령 앞에 입력 하고 있습니까? sudoers 파일에서 nopasswd를 강요하더라도이를 수행해야합니다. 즉 : sudo <command>뿐만 아니라 사용하십시오 <command>.
Bruno Pereira

1
나 = "whoami를"반환 cmd를 들어 brunocmd를 = "sudo whoami"반환root
브루노 페레이라를

3
그것을 발견! 내 줄이 sudoers파일 끝에서 끝나지 않으면 이것을 재현 할 수 있습니다. 그룹 할당 후, 정말 마지막 줄! 줄을 파일의 마지막 줄로 이동하십시오! (이것이 좋았습니다).
Bruno Pereira
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.