[Linux] 특정 프로세스만 파일접근

zzang2k의 이미지


리눅스는 파일 접근 권한을 user/group/other 등 사용자로 구분해서
권한을 부여하잖아요.

근데 꼭 특정 프로그램을 통해서만 RWX 권한으로 access 돼야 하고
vi나 gedit 같은 다른 편집기로는 R 권한만 주려고 한다면 어떻게 해야 할까요?

root 계정으로 로그인해도 반드시 특정 프로그램을 통해서만 파일의 변경이 가능하다는 얘기죠.

이렇게 프로세스를 구분해서 접근 권한 설정이 가능할까요?

정태영의 이미지

사용자 아이디 하나 만드시고, 그 사용자에게만 권한을 주신 다음에 그 파일에 접근하는 프로그램에 setuid 를 주세요.

--
오랫동안 꿈을 그리는 사람은 그 꿈을 닮아간다...

http://mytears.org ~(~_~)~
나 한줄기 바람처럼..

오랫동안 꿈을 그리는 사람은 그 꿈을 닮아간다...

http://mytears.org ~(~_~)~
나 한줄기 바람처럼..

zzang2k의 이미지

프로그램 권한을 chmod로 변경해서 4711 로 변경했는데 잘 안되네요.
그래서 seteuid(1001) 로 코드 추가해서 해도 자꾸 읽지 못하는데

현재
읽기 위한 파일은
-rw------- 1 test test 124 2009-08-12 15:44 rule

프로그램은
-rws--x--x 1 zzang2k zzang2k 7387 2009-08-12 17:14 test

위의 권한을 가지고 있습니다.

프로그램안에 seteuid, setegid 를 넣어봐도 똑같이 파일을 open 할 수가 없군요..

zzang2k.

molla의 이미지

rule 이라는 file 의 소유자가 "test" 라는 사용자이니, 이를 열기 위한 프로그램의 소유자도 "test" 라는 사용자가 되어야 할 듯 합니다.
super user로
chown test test
를 실행하고 테스트해 보세요.

ps. test 의 permission 은 rwsr-xr-x 여야 하지 않을까 싶군요.