Isilon: OneFS 8.X 이상: jail-chroot FTP 사용자를 특정 디렉토리로 잠그는 방법
Summary: 이 문서에서는 isi ftp 명령을 사용하여 FTP를 통해 연결하는 사용자를 위해 클러스터의 디렉토리에 대한 액세스를 구성하는 방법에 대해 설명합니다.
Instructions
다음 내용이 포함됩니다.
- 현재 FTP 설정 검토
- 공통으로 조정된 설정에 대한 설명
- 기본 동작
- 특정 디렉토리로 사용자 라우팅
- 사용자를 디렉토리 트리로 제한
현재 FTP 설정 검토
sa8004-1# isi ftp view Accept Timeout: 1m Allow Anon Access: No Allow Anon Upload: Yes Allow Dirlists: Yes Allow Downloads: Yes Allow Local Access: Yes Allow Writes: Yes Always Chdir Homedir: Yes Anon Chown Username: root Anon Password List: - Anon Root Path: /ifs/home/ftp Anon Umask: 0077 Ascii Mode: off Chroot Exception List: - Chroot Local Mode: none Connect Timeout: 1m Data Timeout: 5m Denied User List: - Dirlist Localtime: No Dirlist Names: hide File Create Perm: 0666 Limit Anon Passwords: No Local Root Path: - Local Umask: 0077 Server To Server: No Session Support: Yes Session Timeout: 5m User Config Dir: - FTP Service Enabled: Yes
공통으로 조정된 설정
로그인 시 사용자가 라우팅되는 방법과 관련된 몇 가지 설정이 있으며 이러한 설정은 자주 변경됩니다.
- Always ChDir(작업 디렉토리 변경) Homedir(홈 디렉토리)
isi ftp modify --always-chdir-homedir=[true|false]- Isilon에서 사용자가 시작 디렉토리가 아닌 디렉토리로 FTP 권한을 허용할 것인지 여부를 정의합니다.
- Chroot Exception List
isi ftp modify --chroot-exception-list=["comma separated list of usernames"]- 우회할 사용자 정의
Chroot Local Mode
- Chroot Local Mode
isi ftp modify --chroot-local-mode=['all','all-with-exceptions','none','none-with-exceptions']- 다음을 정의하는지 여부를 정의합니다.
chroot적용 방법 및 적용 방법- 모두 | 사용자 액세스는 다음으로 제한됩니다.
Local Root Path그리고 아이들 - 예외 없이 모두 | 에 있는 사용자를 제외한 모든 사용자
Chroot Exception List로 제한됩니다.Local Root Path그리고 아이들 - 없음 | 사용자 액세스는
Local Root Path - 예외 없음 | 에 있는 사용자 외에는 사용자가 없습니다.
Chroot Exception List로 제한됩니다.Local Root Path그리고 아이들
- 모두 | 사용자 액세스는 다음으로 제한됩니다.
- Local Root Path
isi ftp modify --local-root-path=['/ifs/ftp/path']- 로그인 시 FTP 사용자가 라우팅되는 위치를 정의합니다. 비워 두면 사용자 homedir이 기본값이 됩니다.
기본 FTP 동작
다음은 FTP 서비스가 기본적으로 작동하는 방식입니다.
- Allow Anon Access: 아니요
- Always Chdir Homedir: 예
- Chroot Local Mode: none
- Local root Path: -
인증 공급자에 있는 사용자만 FTP를 통해 클러스터에 액세스할 수 있습니다. 시스템은 항상 루트 디렉토리로 전송하여 연결을 시작한 다음 사용 권한 평가에 따라 자유롭게 탐색할 수 있습니다. 이래 Local Root Path 가 정의되지 않은 경우 사용자는 사용자 프로필에 지정된 경로로 라우팅됩니다. 다음을 사용하여 확인할 수 있습니다. isi auth users $username | grep Home 이는 $username 확인 중인 사용자 이름으로 바뀝니다. 다음은 로컬 사용자에 대한 예입니다.
sa8004-1# isi auth users view xavier | grep Home Home Directory: /ifs/home/xavier
기본 구성에서 위의 사용자는 Isilon에 연결하고 다음으로 라우팅됩니다. /ifs/home/xavier (연결에 설정된 경로에 관계없이) 디렉토리를 /ifs/home/ 이래 Chroot Local Mode 없음으로 설정되어 있는지 확인합니다.
특정 디렉토리로 사용자 라우팅
기본적으로 OneFS FTP 서비스에 연결하는 사용자는 홈 디렉토리로 라우팅됩니다. 그러나 고객은 FTP가 드롭박스처럼 작동하기를 더 원합니다. 이 경우 설정을 편집하기만 하면 됩니다 Local Root Path. 이렇게 하면 사용자가 홈 디렉토리 대신 해당 경로로 라우팅하게 됩니다. 값을 공백>으로 설정하면 홈 <디렉토리로 재설정됩니다.
다음은 해당 명령의 예입니다.
# Routing to /ifs/ftp sa8004-1# isi ftp modify --local-root-path=/ifs/ftp # Restoring to default sa8004-1# isi ftp modify --local-root-path=''
사용자를 디렉토리 트리로 제한
기본적으로 OneFS FTP 서비스에 연결하는 사용자는 전체 파일 시스템을 보고 사용 권한에 따라 허용되는 대로 탐색할 수 있습니다(사용자 이름 등은 계속 확인). 그러나 많은 고객은 해당 사용자가 파일 시스템의 특정 부분만 제한된 상태로 유지하기를 선호합니다. 이 작업은 다음 설정을 사용하여 수행됩니다. Chroot Local Mode. 이 설정이 사용자에게 적용되면 해당 아래에 있는 파일로만 이동하거나 볼 수 있습니다. Root Path. 기본적으로는 None으로 설정되지만 4가지 다른 설정을 적용할 수 있습니다.
다음으로 이 설정을 조정합니다. isi ftp modify --chroot-local-mode=['all','all-with-exceptions','none','none-with-exceptions']
- 모두 | 사용자 액세스는 다음으로 제한됩니다.
Local Root Path그리고 아이들 - 예외 없이 모두 | 에 있는 사용자를 제외한 모든 사용자
Chroot Exception List로 제한됩니다.Local Root Path그리고 아이들 - 없음 | 사용자 액세스는
Local Root Path - 예외 없음 | 에 있는 사용자 외에는 사용자가 없습니다.
Chroot Exception List로 제한됩니다.Local Root Path그리고 아이들
다음을 사용하여 예외 추가 isi ftp modify --chroot-exception-list=["comma separated list of usernames"]
다음은 한 사용자를 제외한 모든 사용자를 다음으로 제한하는 예입니다. /ifs/ftp. 이 한 명의 사용자는 여전히 연결을 시작하지만 나머지 사용자는 /ifs/
# Adding user to exception list sa8004-1# isi ftp modify --chroot-exception-list=xavier # Routing all logins to `/ifs/ftp` sa8004-1# isi ftp modify --local-root-path=/ifs/ftp # Limiting everyone by `xavier` to the Local Root Path sa8004-1# isi ftp modify --chroot-local-mode=all-with-exceptions
참고
명령 참조:
- PowerScale OneFS CLI 관리 가이드
- 이 관리 가이드에서 모든 명령의 동작이 정의되지는 않습니다.