php로 sendmail을 restart 해주고 newaliases 명령을 주고자 합니다. 쉘스크립트로 이것이 가능한지 알고 싶습니다.
php로 실행하려면, webserver가 root 권한으로 실행되거나 setuid 되어 있는 binary 를 php가 실행하는 것으로 가능할 것 같습니다.
script에 setuid 들어 있으면 대략 낭패가되기 쉽죠
---http://coolengineer.com
setuid를 찾아봤습니다... 권한을 부여해주는것인가요? perl에서 php각본을 불러서 사용하라고 되어있습니다그럼 setuid는 perl에서 사용하는것인가요? 조금더 상세하게 부탁드립니다. (- -)(_ _)
ggojang
음.. 간단하게 설명하자면 setuid 가 붙어 있는 실행 프로그램은 해당 파일의 owner 의 권한으로 실행됩니다. 예를 들어
[susia@pthread susia]$ ls -l /usr/bin/passwd 16 -r-s--x--x 1 root root 15104 3 14 2002 /usr/bin/passwd* [susia@pthread susia]$
위에서 보는 passwd 프로그램은 setuid 가 붙어 있으므로 일반 사용자가 passwd 라는 프로그램을 실행시에는 passwd 의 파일의 소유자인 root 의 권한을 가지게 됩니다.
그러므로 shellscript 안에 원하는 명령어를 적은 후에 해당 shellscript 의 권한을 setuid 로 변경( chmod 4755 xxx , 뭐 이런식으로 물론 소유는 root 가 되어야 root 의 권한으로 구동이 되겠지요.. ) 하면 됩니다.
물론 root setuid script 는 보안상 매우 ~~~~ 위험하기 때문에 신중하게 작성하셔야 될듯..
생각해 보니 복잡하군요..
너무 어렵게 간다 싶으면..
/etc/mail/aliases* 파일을 apache 실행 계정이 writable 하게 만들어 놓으시면 됩니다.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
php로 실행하려면, webserver가 root 권한으로 실행되거나 s
php로 실행하려면, webserver가 root 권한으로 실행되거나 setuid 되어 있는 binary 를 php가 실행하는 것으로 가능할 것 같습니다.
script에 setuid 들어 있으면 대략 낭패가되기 쉽죠
---
http://coolengineer.com
setuid에대해
setuid를 찾아봤습니다... 권한을 부여해주는것인가요?
perl에서 php각본을 불러서 사용하라고 되어있습니다그럼 setuid는 perl에서 사용하는것인가요?
조금더 상세하게 부탁드립니다. (- -)(_ _)
ggojang
음..간단하게 설명하자면 setuid 가 붙어 있는 실행 프로그램
음..
간단하게 설명하자면 setuid 가 붙어 있는 실행 프로그램은
해당 파일의 owner 의 권한으로 실행됩니다.
예를 들어
[susia@pthread susia]$ ls -l /usr/bin/passwd
16 -r-s--x--x 1 root root 15104 3 14 2002 /usr/bin/passwd*
[susia@pthread susia]$
위에서 보는 passwd 프로그램은 setuid 가 붙어 있으므로 일반 사용자가
passwd 라는 프로그램을 실행시에는 passwd 의 파일의 소유자인 root 의 권한을 가지게 됩니다.
그러므로 shellscript 안에 원하는 명령어를 적은 후에 해당 shellscript 의 권한을 setuid 로 변경( chmod 4755 xxx , 뭐 이런식으로 물론 소유는 root 가 되어야 root 의 권한으로 구동이 되겠지요.. ) 하면 됩니다.
물론 root setuid script 는 보안상 매우 ~~~~ 위험하기 때문에
신중하게 작성하셔야 될듯..
생각해 보니 복잡하군요..너무 어렵게 간다 싶으면../et
생각해 보니 복잡하군요..
너무 어렵게 간다 싶으면..
/etc/mail/aliases* 파일을 apache 실행 계정이 writable 하게 만들어 놓으시면 됩니다.
---
http://coolengineer.com
댓글 달기