PowerStore: Zrozumienie ograniczeń powłoki wprowadzonych przez rbash i innych implementacji zabezpieczeń
摘要: W celu wzmocnienia ogólnego bezpieczeństwa podjęto decyzję o zablokowaniu powłoki PowerStore poprzez włączenie powłoki rbash (restricted bash shell) i innych implementacji zabezpieczeń. Innym przykładem jest to, że folder główny użytkownika usługi to /home/service/user, a nie /home/service, jak można by się spodziewać. Jest to jedna z niewielu lokalizacji, w których użytkownik usługi ma uprawnienia do zapisu. ...
本文适用于
本文不适用于
本文并非针对某种特定的产品。
本文并非包含所有产品版本。
症状
Możliwe błędy zaobserwowane po zastosowaniu tych środków:
rbash: cd: restricted(podczas próby poruszania się po katalogach)rbash: xxxx: restricted: cannot redirect output(podczas próby przekierowania danych wyjściowych do pliku z użyciem „>”)rbash: xxxx: command not found(podczas próby uruchomienia poleceń spoza listy dozwolonych)rbash: ./example_script: restricted: cannot specify `/' in command names(podczas próby uruchomienia skryptów)- Nie można zainicjować protokołu SFTP. Czy host posiada serwer SFTP? (podczas próby skonfigurowania narzędzi do przesyłania plików, takich jak WinSCP)
- Polecenie cd "xxxx" nie powiodło się z kodem zwrotnym 1 i komunikatem o błędzie. -rbash: line 47: cd: restricted (podczas próby zmiany katalogów przy użyciu WinSCP)
原因
Wdrożenie rbash oznacza, że zachowanie powłoki jest zmieniane przez wyłączenie niektórych działań i funkcji, takich jak:
- Zmiana katalogów przy użyciu wbudowanej funkcji cd.
- Ustawianie lub resetowanie wartości zmiennych SHELL, PATH, ENV lub BASH_ENV.
- Określanie nazw poleceń zawierających ukośniki.
- Określanie nazwy pliku zawierającej ukośnik jako argument do wbudowanego polecenia . .
- Określanie nazwy pliku zawierającej ukośnik jako argument do opcji -p do wbudowanego polecenia hash.
- Importowanie definicji funkcji ze środowiska powłoki podczas uruchamiania.
- Analizowanie wartości SHELLOPTS ze środowiska powłoki przy uruchamianiu.
- Przekierowanie danych wyjściowych za pomocą operatorów przekierowywania „>”, „>|”, „<>”, „>&”, „&>” i „>>”.
- Użycie wbudowanej funkcji exec do zastąpienia powłoki innym poleceniem.
- Dodawanie lub usuwanie wbudowanych poleceń przy użyciu opcji -f i -d do wbudowanej funkcji enable.
- Używanie wbudowanego polecenia enable do włączania wyłączonych wbudowanych funkcji powłoki.
- Określanie opcji -p do wbudowanego polecenia.
- Wyłączanie trybu ograniczonego za pomocą poleceń „set +r” lub „set +o restricted”.
Więcej informacji znajdziesz tutaj:
https://www.gnu.org/software/bash/manual/html_node/The-Restricted-Shell.html
解决方案
Poniżej przedstawiono kilka rozwiązań alternatywnych, które ułatwiają nawigację i interakcję z systemem pomimo ograniczeń opisanych powyżej.
Przesyłanie plików
Podczas konfigurowania narzędzi do przesyłania plików, takich jak WinSCP, należy używać protokołu SCP zamiast protokołu SFTP lub FTP.
Pamiętaj:
Użytkownicy nie mogą zmieniać katalogów (funkcja cd nie jest dozwolona), dlatego wszystkie elementy, które należy pobrać z węzła lub urządzenia, należy najpierw skopiować do katalogu /home/service/user.
Jedynym wyjątkiem od tej czynności są zwykłe materiały wsparcia technicznego. Łącza są automatycznie umieszczane w katalogu głównym dla każdego dostępnego zestawu materiałów wsparcia technicznego w celu ułatwienia pobierania.
Uwaga: w niektórych nowych wersjach systemu Windows 10 może być konieczne określenie portu (-P 22).
Przykład pobierania:
Przykład wysyłania:
Pamiętaj:
Użytkownicy nie mogą zmieniać katalogów (funkcja cd nie jest dozwolona), dlatego wszystkie elementy, które należy pobrać z węzła lub urządzenia, należy najpierw skopiować do katalogu /home/service/user.
Jedynym wyjątkiem od tej czynności są zwykłe materiały wsparcia technicznego. Łącza są automatycznie umieszczane w katalogu głównym dla każdego dostępnego zestawu materiałów wsparcia technicznego w celu ułatwienia pobierania.
Jeśli chcesz pobrać pliki bezpośrednio z katalogu, w którym się znajdują, należy najpierw znaleźć pełną ścieżkę z powłoki PowerStore, a następnie użyć narzędzi takich jak pscp (z wiersza poleceń systemu Windows) lub scp (z systemu Linux).
Przykład pscp w systemie Windows:
Składnia:
| Usage: pscp [options] [user@]host:source target pscp [options] source [source...] [user@]host:target |
Przykład pobierania:
| pscp -scp -P 22 service@<adres IP urządzenia lub węzła>:/ścieżka/do/pobranego/pliku 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's password: powerstore_xxxxxxxxx | 10944 kB | x.x kB/s | ETA: 00:00:00 | 100% |
Przykład wysyłania:
| 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 | 211 kB | 212.0 kB/s | ETA: 00:00:00 | 100% |
Nawigacja
Do nawigacji nie można używać polecenia „cd”, ale do wyświetlenia zawartości katalogu lub odczytu plików można użyć poleceń takich jak „ls” lub „cat/less”. Jedyna różnica polega na tym, że należy zawsze korzystać z pełnych ścieżek.
Ta sama zasada ma zastosowanie do wszystkich innych poleceń (grep itd.).
Przykład listy podkatalogów w katalogu Support Materials:
Ta sama zasada ma zastosowanie do wszystkich innych poleceń (grep itd.).
Przykład listy podkatalogów w katalogu 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-431d-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-1f234df2abfb 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 Apr 21 13:43 b02e88fb-3f80-47a3-8f6d-3547afad7c35 drwxrwsr-x+ 2 cyc cycg 4096 Apr 24 15:26 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 4096 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
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。