PowerStore: rbash 및 기타 보안 구현으로 인한 셸 제한 사항 이해

摘要: 전체 보안을 강화하기 위해 rbash(제한된 bash 셸) 및 기타 보안 구현을 활성화하여 PowerStore 셸을 잠그기로 결정되었습니다. 또 다른 예는 서비스 사용자 홈 폴더가 예상 대로 /home/service가 아니라 /home/service/user인 경우입니다. 이는 서비스 사용자에게 쓰기 권한이 있는 몇 가지 위치 중 하나입니다. ...

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

症状

이러한 조치로 발생할 수 있는 오류:

  • rbash: cd: restricted (디렉토리를 탐색할 때)
  • rbash: xxxx: restricted: cannot redirect output (출력을 ">"가 있는 파일로 리디렉션하려고 할 때)
  • rbash: xxxx: command not found (승인된 허용 목록에 없는 명령을 실행하려고 할 때)
  • rbash: ./example_script: restricted: cannot specify `/' in command names (스크립트를 실행하려고 할 때)
  • SFTP 프로토콜을 초기화할 수 없습니까? 호스트에서 SFTP 서버를 실행 중입니까? (WinSCP와 같은 파일 전송 도구를 설정하려고 하는 경우)
  • 반환 코드 1 및 오류 메시지와 함께 'cd "xxxx"' 명령 실패. -rbash: line 47: cd: restricted(WinSCP로 디렉토리를 변경하려고 하는 경우)

原因

rbash 구현은 다음을 비롯한 일부 작업과 기능을 비활성화하면 셸 동작이 변경된다는 것을 의미합니다.

  • cd builtin으로 디렉토리 변경
  • SHELL, PATH, ENV 또는 BASH_ENV 변수 값 설정 또는 설정 해제
  • 슬래시를 포함하는 명령 이름 지정
  • 슬래시를 포함하는 파일 이름을 .builtin 명령에 대한 인수로 지정
  • 슬래시를 포함하는 파일 이름을 hash builtin 명령에 대한 -p 옵션에 대한 인수로 지정
  • 시작할 때 셸 환경에서 함수 정의를 가져오기
  • 시작할 때 셸 환경에서 SHELLOPTS 값 구문 분석
  • ‘>’, ‘>|’, ‘<>’, ‘>&’, ‘&>’ 및 ‘>>’ 리디렉션 연산자를 사용하여 출력 리디렉션
  • exec builtin을 사용하여 다른 명령으로 셸 교체
  • enable builtin에 -f 및 -d 옵션을 사용하여 builtin 명령 추가 또는 삭제
  • enable builtin 명령을 사용하여 비활성화된 shell builtin을 활성화합니다.
  • builtin 명령에 -p 옵션 지정
  • 'set +r' 또는 'set +o restricted'로 제한된 모드 끄기

자세한 내용은 여기를 참조하십시오.
https://www.gnu.org/software/bash/manual/html_node/The-Restricted-Shell.html 

解决方案

위에 설명된 제한 사항에도 불구하고 시스템과의 탐색 및 상호 작용을 용이하게 하기 위한 몇 가지 대안이 여기에 제시되어 있습니다.

파일 전송 

WinSCP와 같은 파일 전송 도구를 설정할 때 SFTP 또는 FTP 프로토콜 대신 SCP를 사용합니다.   
SLN321130_en_US__1icon 기억하십시오.
사용자는 디렉토리를 변경할 수 없으므로(cd가 허용되지 않음) 노드 또는 어플라이언스에서 다운로드할 모든 것을 먼저 /home/service/user로 복사해야 합니다.
유일한 예외는 일반 지원 자료입니다. 다운로드를 용이하게 하기 위해 사용 가능한 각 지원 자료 세트에 대한 홈 디렉토리에 링크가 자동으로 배치됩니다.

파일이 있는 디렉토리에서 직접 다운로드하려면 먼저 PowerStore 셸에서 전체 경로를 찾아야 합니다. 그런 다음 pscp(windows cli에서) 또는 scp(linux에서)와 같은 도구를 사용할 수 있습니다.
Windows pscp 예:

구문:
사용: pscp [options] [user@]host:source target
pscp [options] source [source...] [user@]host:target
참고: 일부 새 버전의 Windows 10에서는 포트(-P 22)를지정해야 할 수 있습니다.

다운로드 예:
pscp -scp -P 22 service@<appliance or node IP>:/path/to/file/to/download C:\Local\dowwnload-save\location

pscp -scp service@xx.xx.xx.xx:/cyc_var/cyc_service/data_collection/xxxxxxxx/powerstore_xxxxxxxx_2020-05-06_00-00-00_service-data.tgz C:\LOGS
service@xx.xx.xx.xx의 암호:
powerstore_xxxxxxxxx | 10944kB | x.x kB/s | 도착: 00:00:00| 100%

업로드 예:
pscp -scp -P 22 C:\Logs\somefile.txt service@xx.xx.xx.xx:/home/service/user
service@xx.xx.xx.xx's password:
somefile.txt | 211kB | 212.0kB/s | 도착: 00:00:00| 100%

 

탐색

"cd"를 사용하여 탐색할 수 없지만 "ls" 또는 "cat/less" 등의 명령을 사용하여 디렉토리 내용을 나열하거나 파일을 읽을 수 있습니다. 유일한 차이점은 항상 전체 경로를 사용해야 한다는 것입니다.
다른 모든 항목(grep 등)에도 동일한 원칙이 적용됩니다.

Support Materials 디렉토리 내에 하위 디렉토리를 나열하는 예:
[SVC:service@xxxxxxx-B user]$ ls -l /cyc_var/cyc_service/data_collection/total
80
drwxrwsr-x+ 2 cyc cycg 4096 Apr 8 14:48 0941c91a-2431d-4bfb-b5b2-062b02c45950
drwxrwsr-x+ 2 cyc cycg 4096 Apr 25 15:27 20439835-3654-4d93-af3b-ebfc0ae222fd
drwxrwsr-x+ 2 cyc cycg 4096 Apr 19 15:27 3d2011a8-0aa2-48d7-9f3f-21f234df2abfb
drwxrwsr-x+ 2 cyc cycg 4096 Apr 19 13:08 473ed1cb-0ebb-4bd6-bbf6-e87e61af8578
drwxrwsr-x+ 2 cyc cycg 4096 Apr 22 14:01 48a522ff-0aaa-4f83-a936-973f6f1097b2
drwxrwsr-x+ 2 cyc cycg 4096 Apr 22 15:26 4ba1375c-c23b-47c6-bc04-1498e3443b39
drwxrwsr-x+ 2 cyc cycg 4096 Apr 27 15:26 6faf6d88-58c6-4891-b001-8e0311e9e00d
drwxrwsr-x+ 2 cyc cycg 4096 Apr 24 14:36 798b13df-70bb-4fd3-9691-608b735207e9
drwxrwsr-x+ 2 cyc cycg 4096 Apr 28 15:27 8187fc5d-d389-4676-a69f-23db20c06602
drwxrwsr-x+ 2 cyc cycg 4096 Apr 26 15:12 83cb57dc-dee3-4dae-8585-e3b670d4b52a
drwxrwsr-x+ 2 cyc cycg 4096 Apr 18 12:50 a038d9ac-6ecc-4c49-8bb3-ae6623b418f6
drwxrwsr-x+ 2 cyc cycg 4096 4096 4월 21일 13:43 b02e88fb-3f80-47a3-8f6d-3547afad7c35
drwxrwsr-x+ 2 cyc cycg 4096 Apr 24 15:2 6 b4bdd7c3-dbd0-4ac7-93ac-2e3e7ea1ff93
drwxrwsr-x+ 2 cyc cycg 4096 Apr 23 14:18 bf965b7e-e136-42ba-b46c-5fc565b6cf58
drwxrwsr-x+ 2 cyc cycg 4096 Apr 20 13:26 d96caca8-4395-4f15-aea1-60dd7a2490f5
drwxrwsr-x+ 2 cyc cycg 4096 Apr 23 15:26 e101bd57-fd3d-421a-b15a-341456a52f1f
drwxrwsr-x+ 2 cyc cycg 40 96 Apr 25 14:54 e57e625d-e393-4919-b0d1-5efd89042897
drwxrwsr-x+ 2 cyc cycg 4096 Apr 20 15:26 ea40f70d-3cbf-4c84-9643-627fdbf9f0bd
drwxrwsr-x+ 2 cyc cycg 4096 Apr 21 15:26 ea9d95dd-1c72-4b2b-929a-ab6ec9cbedc1
drwxrwsr-x+ 2 cyc cycg 4096 Apr 17 12:34 fa02405b-ae24-4d7d-b178-97a99a2b717f
[SVC:service@xxxxxxx-B user]$ 

受影响的产品

PowerStore, PowerStore 1000X, PowerStore 1000T, PowerStore Expansion Enclosure, PowerStore 3000X, PowerStore 3000T, PowerStore Rack, PowerStore 5000X, PowerStore 5000T, PowerStore 7000X, PowerStore 7000T, PowerStore 9000X, PowerStore 9000T
文章属性
文章编号: 000126621
文章类型: Solution
上次修改时间: 27 4月 2021
版本:  8
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。