본문 바로가기
秋 - Tip

Raiden 에서 권한주기

by 민수아빠™ 2003. 4. 28.
어떻게 보면 정말 간단한 문제인데..
섭을 운영하다보면 헷갈리고 그렇다..

자주 질문이 들어와서 올린다.

권한은 크게 두가지로 줄 수 있다.

(1) 하나는 VFS의 세팅에 의한것이고
(2) 다른 하나는 개인 세팅에 의한것인데.. 참 좋은 아이디어라고 생각한다.

많은 가정이 필요하다.

먼저 root 계정은 무조건적으로 쓰고 지우기가 가능하게 하려면..
후자를 택하는 것이 좋다.

그리고 계정의 경우는 당연히 VFS 세팅에 의한 권한주기가 편리하다.
반드시 그룹지정을 해두어야하며 절대 root 계정의 그룹에 포함되지 않도록 주의하도록 한다.


tom과 jane이 family라는 그룹에 포함되어있다고 가정하자.

일반 폴더에는 모두 Read, Write 권한을 준다.
라이덴에서의

Read 권한이란 : Download(Resume), List, CWD를 포함한다.
Write 권한이란 : Upload(Resume), MKD를 포함한다.
eXcecute 권한은 : DELETE, RMD, OVERWRITE를 포함한다.

자 그럼 일반 폴더는 문제가 없다.
Upload 폴더에 다음과 같은 가정을 하자.

자신이 업로드한 파일/폴더는 지울 수 있고
비록 같은 그룹이라 할 지라도 다른 사람이 올린 파일/폴더는 지울 수 없도록 하는것이 좋다.
그리고 다른 사람이 업로드에 실패한(이게 문제다 -_-;;) 파일을 비록 지우거나 오버라이트할 수는 없지만 Resume은 가능해야 다른 사람이 그 파일들을 정리할 수 있다.

이 경우 Owner에게는 7, SameGroup, OtherGroup에는 6의 권한을 준다.

비교적 간단하지만 잘 안돼는 경우가 있다.

왜 이런 현상이 일어나는가 하면 처음 만들어질때 .raidenftpd.acl 파일은 공백을 가지지 못하기 때문이다.
즉 처음 폴더를 만들때 직접 폴더를 만들지 않고 가상 폴더로 만들면 자동적으로 라이덴이 .raidenftpd.acl을 만들어 버리고 주의하지 않을 경우 666등의 퍼미션을 주게되는데.. 이렇게 되면 이어서 올라오는 파일들의 권한이 모두 666이 되어버린다.
이게 무슨말인지 알 필요는 없다.

가장 쉬운 방법은 .raidenftpd.acl 파일을 지워버리면 그만이다. 물론 내용만 지워도 상관없다.

그럼..

ps. 재미있는 것은 tom이 덜 올린 파일을 jane이 지울 수는 없다. 하지만 jane이 resume을 하게되면 지우기 권한을 가져버린다.