PowerScale OneFS: SFTP 구성 및 chroot 설정

Summary: 이 문서에서는 SFTP(Secure File Transfer Protocol)를 통해 PowerScale Cluster에 대한 액세스를 허용하는 방법에 대해 설명합니다.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

이 문서에서는 SFTP를 통해 PowerScale Cluster에 액세스할 수 있도록 허용하는 방법에 대해 설명합니다. 이 프로세스를 시작할 때 명심해야 할 몇 가지 제한 사항과 고려 사항이 있습니다.

  • SFTP 액세스가 필요한 사용자/그룹에는 ISI_PRIV_LOGIN_SSH 해당 사용자와 연결된 권한입니다.
  • SSH 및 SFTP 액세스는 System 존 내에서만 작동합니다.
  • 모든 ssh 구성 옵션을 사용할 수 있는 것은 아닙니다. PowerScale은 isi ssh modify 명령 집합.

이러한 요소 외에 PowerScale은 다른 FreeBSD OpenSSH 서버로 작동합니다. 다음 명령을 사용하여 클러스터의 OpenSSH 버전 확인 ssh -V파일의 무결성을 확인합니다.

역할 및 권한 설정에 대한 지침은 '관리 역할 및 권한' 섹션에서 릴리스에 대한 CLI 또는 웹 관리 가이드를 참조하십시오.

사용자/그룹에 다음이 있는지 확인 ISI_PRIV_LOGIN_SSH

해당 사용자가 다음을 가지고 있는지 확인합니다. ISI_PRIV_LOGIN_SSH파일의 무결성을 확인합니다. 다음은 기본 관리자 사용자의 예입니다.

p930-1# isi auth mapping token admin | grep "LOGIN_SSH"
            ISI_PRIV_LOGIN_SSH

출력이 없는 경우 사용자에게 해당 권한이 포함된 역할을 할당해야 합니다. 이 작업을 수행하는 방법에 대한 자세한 내용은 관련 릴리스의 관리 가이드 "관리자 역할 및 권한"에서 확인할 수 있습니다.

로컬 사용자를 위한 기본 SFTP 액세스

올바른 권한을 확인한 후 사용자는 사용자 매핑 토큰을 기반으로 파일 시스템의 일부에 대한 SFTP 액세스 권한이 있어야 합니다.

p930-1# sftp admin@localhost
(admin@localhost) Password:
Connected to localhost.
sftp> dir
sftp> cd ..
sftp> dir
admin  ftp

기본 Chroot SFTP 액세스

사용자를 파일 시스템의 특정 하위 집합으로 제한하려면 OpenSSH의 ChrootDirectory 기능을 사용할 수 있습니다. 이렇게 하면 클라이언트의 로그인 경로가 / 파일 시스템의 하위 집합을 벗어날 수 없도록 합니다. ChrootDirectory 그러나 의 전체 경로에 대한 엄격한 디렉토리 권한 요구 사항이 있습니다. ChrootDirectory 경로의 모든 디렉토리에는 다음과 같은 Posix 권한이 있습니다. root:wheel drwxr-xr-x 이에 대한 자세한 내용은 OpenSSH 유지 관리자 매뉴얼 페이지를 참조하십시오.

다음은 구현을 위한 일반적인 Match 문입니다. ChrootDirectory 그룹과 일치하면서. 처음 세 줄은 ChrootDirectory 지원 파일 없이. 마지막 줄은 사용자가 OpenSSH 내에서 X11Forwarding 기능을 활용할 수 있는 기능을 제한합니다. 

Match Group admin
ChrootDirectory /ifs/sftp
ForceCommand internal-sftp
X11Forwarding no

다음은 일치하는 사용자가 chroot에 쓸 수 있는 경로를 준비하는 기본 예제입니다. /ifs/sftp/home 디렉토리 아래에 있는 것을 확인할 수 있습니다. root:wheel 디렉토리 소유 /ifs/ifs/sftp, 사용 권한이 755로 설정된 경우 ChrootDirectory 동안 /ifs/sftp/home 사용자 쓰기 액세스를 허용하는 777 권한이 있습니다.

p930-1# isi auth settings acls modify --calcmode-group=group_only --calcmode-owner=owner_only
p930-1# mkdir -p /ifs/sftp/home
p930-1# chmod 755 /ifs/
p930-1# chmod 755 /ifs/sftp
p930-1# chmod 777 /ifs/sftp/home
p930-1# isi ssh settings modify --match="Match Group admin
dquote>     ChrootDirectory /ifs/sftp
dquote>     ForceCommand internal-sftp"
p930-1# sftp admin@localhost
(admin@localhost) Password:
Connected to localhost.
sftp> ls
home
sftp> pwd
Remote working directory: /

여러 일치 문자열 구성

파일에서 여러 일치 항목을 관리 한 다음 전달하는 것이 더 쉽습니다. isi ssh 명령을 사용합니다. 이 프로세스를 사용하면 다음을 수행할 수 있습니다. sshd 파일의 유효성을 검사하고 변경 사항이 유효한 경우에만 적용합니다.

다음은 성공과 실패의 예입니다.

p930-1# cat /ifs/sshMatches
Match Group admin
ChrootDirectory /ifs/sftp
ForceCommand internal-sftp
X11Forwarding no
Match All
X11Forwarding no
p930-1# sshd -t -f /ifs/sshMatches && isi ssh settings modify --match="$(cat /ifs/sshMatches)"
p930-1# sshd -t -f /ifs/sshMatchBad && isi ssh settings modify --match="$(cat /ifs/sshMatchBad)"
Missing Match criteria for Allk
/ifs/sshMatchBad line 6: Bad Match condition

일치 문자열 고려 사항.

일치 문자열을 설정할 때 클러스터가 인식하는 모든 사용자 또는 그룹 식별자를 "사용자 일치" 또는 "일치 그룹" 문자열에 사용할 수 있습니다. 따라서 Active Directory 그룹 참조는 다음을 통해 RFC2307 수행할 수 있습니다. domain\user파일의 무결성을 확인합니다.

사용자가 사용자 일치 문자열의 올바른 경로 또는 설정으로 라우팅하지 않는 경우 다음 명령을 사용하여 클러스터에서 사용자를 조회할 수 있는지 확인합니다 isi auth mapping token <username> 일치 문자열에서 사용자 이름을 가져옵니다.

사용자가 일치 그룹 문자열의 올바른 경로 또는 설정으로 라우팅하지 않는 경우 명령을 사용하여 사용자가 문제가 되는 그룹의 구성원인지 확인합니다 isi auth mapping token <username> | grep <groupname>을 클릭합니다.

사용자 이름을 입력하고 일치 문자열에서 그룹 이름을 가져옵니다.

아래는 Match Group 구문의 실수로 인해 경로로 올바르게 라우팅하지 못하는 사용자의 예입니다. 사용자 stateroot 사용자가 제대로 작동하지 않는 동안 prodroot 즉, Match Group 문에 사용된 그룹 이름의 실수를 수정하여 이 문제를 해결합니다.

p930-1# isi auth mapping token stageroot | grep "LOGIN_SSH"
            ISI_PRIV_LOGIN_SSH
p930-1# isi auth mapping token prodroot | grep "LOGIN_SSH"
            ISI_PRIV_LOGIN_SSH
p930-1# cat /ifs/sshMatches
Match Group Stage-Root-SFTP
ChrootDirectory /ifs/home/Stage-Root
X11Forwarding no
ForceCommand internal-sftp
Match Group Prod-Root
ChrootDirectory /ifs/home/Prod-Root
X11Forwarding no
ForceCommand internal-sftp
p930-1# isi auth mapping token stageroot | grep "Stage-Root-SFTP"
p930-1# isi auth mapping token prodroot | grep "Prod-Root"
          Name: Prod-Root
p930-1# isi auth mapping token stageroot | grep "Stage-Root"
          Name: Stage-Root

레거시 구성

OneFS 8.2 이전에는 이와 동일한 기능을 수행할 수 있었지만 isi ssh 명령이 아직 존재하지 않습니다. 를 사용하는 대신 isi ssh settings modify --match="" 파일 편집 /etc/mcp/templates/sshd_config 위의 단계에서 사용하는 것과 동일한 일치 문자열을 사용합니다. 끝에 추가 /etc/mcp/templates/sshd_config파일의 무결성을 확인합니다.

제공된 지침은 OneFS 8.2 이전의 OneFS 버전에 적용되지만, 이러한 방식으로 수행한 모든 구성 조정은 API(Application Programming Interface)를 지원하는 OneFS 버전으로 업그레이드하면 제거됩니다. SFTP 액세스를 사용하는 사용자는 여전히 ISI_PRIV_LOGIN_SSH 권한.

Article Properties
Article Number: 000157780
Article Type: How To
Last Modified: 09 رمضان 1447
Version:  8
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.