환경
- 우분투 14.04.1 LTS 서버 에디션
- OpenSSH_6.6.1p1 Ubuntu-2ubuntu2, OpenSSL 1.0.1f 2014년 1월 6일
현재 구성
SFTP 비밀번호로 보호된 계정은 Alice와 Bob에 대해 설정됩니다. 해당 홈 디렉토리는 다음 위치에 있습니다.
/sftp/alice/
/sftp/bob/
두 계정 모두 chroot되어 홈 디렉토리를 벗어나는 것을 방지합니다. SSH 액세스도 비활성화됩니다.
필수 구성
Alice와 Bob은 자신의 홈 디렉터리 내에 하위 디렉터리를 만들고 해당 디렉터리에 사용자 이름과 비밀번호를 할당할 수 있어야 합니다. 예를 들어
/sftp/alice/stuff_for_chris
username: chris
password: my_stuff
그런 다음 Alice는 Chris에게 SFTP를 통해 오라고 말합니다.[이메일 보호됨]그는 어디에서 파일을 다운로드할 수 있나요? Chris는 읽기 액세스 권한만 가져야 합니다./sftp/alice/stuff_for_chris
질문
- SFTP가 이 작업을 수행할 수 있나요? 아니면 비슷한 것을 사용해야 하나요?FTPD 프로토콜?
답변1
내가 아는 한 SFTP나 ProFTPD를 사용하면 이 작업을 수행할 수 없습니다. 과거에 내가 수행했던 비슷한 요구 사항은 루트로 실행되는 프로그램이 합의된 파일에 대한 최상위 디렉터리를 검색하도록 하는 것이었습니다(귀하의 경우에는 Alice와 Bob의 경우 account.new
). 이 파일의 내용을 기반으로 루트가 실행하는 스크립트는 적절한 조치를 취하고 필요한 모든 권한을 갖습니다.
어떤 명령도 실행하지 않도록 주의해야 합니다 account.new
.설명하다콘텐츠를 기반으로 제한된 작업을 수행합니다. 파일에는 다음과 유사한 줄이 포함될 수 있습니다.
create charles
delete donald
deactivate eric
activate fiona
실행 중인 프로그램은 root
관련 디렉터리에서 해당 파일을 주기적으로 확인하는 데몬일 수도 있고, 속도가 중요한 경우 inotify에 의해 실행될 수도 있습니다.