임베디드 프로그래밍을 하고 있는데, 쉘 스크립트로 CGI를 동작시킬 때 일시적으로나마 루트권한을 얻고 싶습니다.
사용자가 웹으로 장치의 ipaddress를 바꿀 수 있어야 하는데, 웹으로 접속한 사용자가 nobody여서 ifconfig로 ip를 바꿀 수가 없네요.
좋은 방법 없을까요? 해결책을 제시해주시면 정말 정말 고맙겠습니다. ㅜㅜ
임베디드 환경에서는 어떨지 모르겠지만,
일반적으로 쉘스크립트를 setuid 할 수는 없습니다.
간단하게 C 프로그램을 하나 짜셔서
그 안에서 system등을 써서 ifconfig를 호출하셔야 할 것으로 생각됩니다.
C 프로그램 owner는 root (또는 필요권한을 가진 사용자)로 하시고,
setuid 를 걸어주시면 될겁니다.
임베디드 환경에서는 어떨지 모르겠지만,일반적으로 쉘스크립트를 setu
임베디드 환경에서는 어떨지 모르겠지만,
일반적으로 쉘스크립트를 setuid 할 수는 없습니다.
간단하게 C 프로그램을 하나 짜셔서
그 안에서 system등을 써서 ifconfig를 호출하셔야 할 것으로 생각됩니다.
C 프로그램 owner는 root (또는 필요권한을 가진 사용자)로 하시고,
setuid 를 걸어주시면 될겁니다.
감사합니다.
답변 감사합니다. 그러나 setuid 사용시 또 다른 문제가 발생하여 다시 질문을 해야 할 것 같네요. ^^
댓글 달기