티스토리 뷰

우분투16.04로 웹서버를 운영중이다.


사내에서 특정 사이트만 ftp를 열어달라는 요청이 들어왔다.


현재 설정은 모든 사이트설정을 한폴더에 넣고 그 폴더 상위로 ftp를 잡아놨다.


계정은 모두 같은 사용자 계정과 그룹으로 설정되어있다.


이렇게 세팅 되어있는 상태에서 폴더중에 한폴더만 다른권한으로도 접근이 가능해야하는 상황이다.


vsftpd로 ftp를 가동중인데 이부분에 대한 설정을 할수있는게 제한적이다.


읽기는 계정생성 수 계정을 root디렉토리를 변경해버리면 되지만 현재는 rwx 가 모두 가능해야하는 상황


이런문제를 해결 할수 있는 방법이 ACL이다.


간단하게 폴더에 그룹권한이나 유저권한으로 rwx을 설정할수 있다.


저 위의 문제를 해결하기 위에 ftp용 그룹을 하나 설정하고 멀티계정으로 접근이 되야하는 ftp폴더에 그룹권한으로 rwx를 준다.


setfacl -R -m g:UserGroup:rwx /data/aaa


setfacl은 설정명령이다. 하위폴더 포함해서 그룹명인 userGroup에 rwx권한을 /data/aaa폴더에 주라는 뜻


이렇게 되면 ftp로 사용할 사용자 계정들을 UserGroup 그룹으로 묶어두면 연결이 된다..


또한 이중에 특정 계정은 읽기만 주고싶다 하면


setfacl -R -m u:user2:r /data/aaa


위처럼 설정해주면 나머지 계정은 다 rwx권한이고 user2 계정만 r 권한으로 변경된다.


해당 폴더의 설정상태를 보려면 getfacl /data/aaa 를 입력하면 설정 내용이 보여진다.


윈도우는 방화벽으로 막아버리고 파일질라서버 쓰면 편한데 ㅎㅎㅎ

댓글