Ngược lại với nhiều thiết bị lưu trữ khác, PowerScale luôn bao gồm một dòng lệnh mở rộng, phong phú và có khả năng, lấy từ di sản FreeBSD của nó. Do đó, nó kết hợp một lựa chọn các shell UNIX đầy đủ (tức là ZSH), khả năng viết kịch bản bằng nhiều ngôn ngữ khác nhau (Perl, Python, v.v.), quyền truy cập dữ liệu đầy đủ, nhiều công cụ quản lý và giám sát hệ thống và mạng, cùng với bộ lệnh OneFS isi toàn diện . Tuy nhiên, những gì là phần thưởng cho khả năng sử dụng cũng có thể gây ra rủi ro từ quan điểm bảo mật.
Với điều này trong tâm trí, trong số các tính năng bảo mật ra mắt trong bản phát hành OneFS 9.5 là việc bổ sung một shell bị hạn chế cho CLI. Shell này hạn chế đáng kể quyền truy cập vào các tiện ích dòng lệnh cụm, loại bỏ các khu vực mà lệnh và tập lệnh có thể chạy và các tệp bị sửa đổi một cách độc hại và không được kiểm tra.
Lớp vỏ hạn chế mới có thể giúp cả các tổ chức khu vực công và tư nhân đáp ứng nhiều yêu cầu về tuân thủ quy định và kiểm toán, bên cạnh việc giảm thiểu bề mặt đe dọa bảo mật khi quản lý OneFS.

Được viết bằng Python, shell bị hạn chế giới hạn người dùng vào một tập hợp con chặt chẽ các lệnh có sẵn trong shell dòng lệnh OneFS thông thường, cùng với một vài tiện ích bổ sung. Bao gồm:
| Tiện ích CLI | Sự miêu tả |
|---|---|
| Lệnh ISI | Các lệnh isi hoặc “isi space”. Bao gồm các lệnh như isi status , v.v. Để biết toàn bộ lệnh isi, hãy chạy isi –help . |
| Lệnh Shell | Các lệnh shell được hỗ trợ bao gồm clear , exit , logout và CTRL+D. |
| Truy cập nhật ký | Công cụ isi_log_access có thể được sử dụng nếu người dùng sở hữu đặc quyền ISI_PRIV_SYS_SUPPORT . |
| Vỏ phục hồi | Có thể sử dụng shell khôi phục isi_recovery_shell nếu người dùng sở hữu ISI_PRIV_RECOVERY_SHELL và thiết lập bảo mật Restricted shell Enabled được cấu hình thành true. |
Để lệnh OneFS CLI được kiểm tra, trình xử lý của lệnh này cần gọi qua API nền tảng (pAPI). Điều này xảy ra với các lệnh isi thông thường nhưng không nhất thiết phải với các lệnh “isi underscore” như isi_for_array , v.v. Trong khi một số lệnh isi_* này ghi vào tệp nhật ký, thì không có kiểm tra hoặc ghi nhật ký thống nhất hoặc nhất quán.
Về phía truy cập dữ liệu, kiểm toán hệ thống tệp /ifs hoạt động thông qua nhiều đầu giao thức OneFS khác nhau (NFS, SMB, S3, v.v.). Vì vậy, nếu CLI được sử dụng với shell không bị hạn chế để truy cập và sửa đổi trực tiếp /ifs , mọi quyền truy cập và thay đổi đều không được ghi lại và không được kiểm toán.
Trong OneFS 9.5, shell bị hạn chế mới được bao gồm trong danh sách shell được phép ( /etc/shells ):
# grep -i restr /etc/shells /usr/local/restricted_shell/bin/restricted_shell.py
Có thể dễ dàng thiết lập cho người dùng thông qua CLI. Ví dụ, để cấu hình tài khoản quản trị viên sử dụng shell bị hạn chế, thay vì mặc định là ZSH:
# isi auth users view admin | grep -i shell Vỏ: /usr/local/bin/zsh # isi auth users sửa đổi admin --shell=/usr/local/restricted_shell/bin/restricted_shell.py # isi auth users view admin | grep -i shell Vỏ: /usr/local/restricted_shell/bin/restricted_shell.py
OneFS cũng có thể được cấu hình để giới hạn người dùng không phải root chỉ sử dụng shell an toàn:
Shell bị hạn chế Đã bật: Không # isi thiết lập bảo mật sửa đổi --restricted-shell-enabled=true # isi thiết lập bảo mật xem | grep -i restr Shell bị hạn chế Đã bật: Có
Những thay đổi cấu hình cơ bản để hỗ trợ điều này bao gồm chỉ cho phép người dùng không phải root có shell được chấp thuận trong /etc/shells đăng nhập thông qua bảng điều khiển hoặc SSH và chỉ có /usr/local/restricted_shell/bin/restricted_shell.py trong tệp cấu hình /etc/shells .
Lưu ý rằng không có shell nào của người dùng bị thay đổi khi các lệnh cấu hình ở trên được ban hành. Nếu người dùng có ý định truy cập shell, shell đăng nhập của họ phải được thay đổi trước khi họ có thể đăng nhập. Người dùng cũng sẽ cần các đặc quyền ISI_PRIV_LOGIN_SSH và/hoặc ISI_PRIV_LOGIN_CONSOLE để có thể đăng nhập thông qua SSH và bảng điều khiển.
Trong khi WebUI trong OneFS 9.5 không cung cấp trang cấu hình shell an toàn, shell bị hạn chế có thể được bật từ API nền tảng, ngoài CLI. Cài đặt bảo mật pAPI hiện bao gồm khóa restricted_shell_enabled , có thể được bật bằng cách đặt thành value=1 , từ giá trị mặc định là 0 .
Xin lưu ý rằng, khi cấu hình cụm OneFS 9.5 để chạy ở chế độ tăng cường bảo mật với cấu hình STIG (tức là isi hardening enable STIG ), thiết lập bảo mật restricted-shell-enable sẽ tự động được đặt thành true . Điều này có nghĩa là chỉ root và người dùng có đặc quyền ISI_PRIV_LOGIN_SSH và/hoặc ISI_PRIV_LOGIN_CONSOLE và restricted shell là shell của họ mới được phép đăng nhập vào cụm. Chúng tôi sẽ tập trung vào việc tăng cường bảo mật OneFS trong một bài viết trong tương lai.
Vậy hãy cùng xem xét một số ví dụ về cấu hình và hoạt động của shell bị hạn chế.
Đầu tiên, chúng ta đăng nhập với tư cách là người dùng quản trị và sửa đổi tệp và kiểu băm mật khẩu của nhà cung cấp xác thực cục bộ thành SHA512 an toàn hơn từ giá trị mặc định là NTHash :
# ssh 10.244.34.34 -l quản trị viên # isi auth file view Hệ thống | grep -i hash Kiểu băm mật khẩu: NTHash # isi auth local view Hệ thống | grep -i hash Kiểu băm mật khẩu: NTHash # isi auth file sửa đổi Hệ thống –-password-hash-type=SHA512 # isi auth local sửa đổi Hệ thống –-password-hash-type=SHA512
Lưu ý rằng quản trị viên người dùng mặc định của cụm sử dụng kiểm soát truy cập dựa trên vai trò (RBAC), trong khi root thì không. Do đó, lý tưởng nhất là tài khoản root nên được sử dụng ít thường xuyên nhất có thể và lý tưởng nhất là chỉ được coi là tài khoản cuối cùng.
Tiếp theo, mật khẩu quản trị viên và root được thay đổi để tạo mật khẩu mới bằng cách sử dụng hàm băm SHA512:
# isi auth users change-password root # isi auth users change-password admin
Vai trò rl_ssh được tạo và quyền truy cập SSH được thêm vào vai trò đó:
# isi auth roles tạo rl_ssh # vai trò xác thực isi sửa đổi rl_ssh –-add-priv=ISI_PRIV_LOGIN_SSH
Sau đó, một người dùng thông thường (usr_ssh_restricted) và một người dùng quản trị (usr_admin_restricted) được tạo với các quyền shell bị hạn chế:
# isi auth users tạo usr_ssh_restricted –-shell=/usr/local/restricted_shell/bin/restricted_shell.py –-set-password # isi auth users tạo usr_admin_restricted –shell=/usr/local/restricted_shell/bin/restricted_shell.py –-set-password
Sau đó, chúng tôi chỉ định vai trò cho người dùng mới. Đối với người dùng SSH bị hạn chế, chúng tôi thêm vào vai trò rl_ssh mới tạo của mình:
# vai trò xác thực isi sửa đổi rl_ssh –-add-user=usr_ssh_restricted
Sau đó, người dùng quản trị được thêm vào vai trò quản trị bảo mật và quản trị hệ thống:
# isi auth roles sửa đổi SecurityAdmin –-add-user=usr_admin_restricted # isi auth roles sửa đổi SystemAdmin –-add-user=usr_admin_restricted
Tiếp theo, chúng ta kết nối tới cụm thông qua SSH và xác thực với tư cách là người dùng usr_ssh_restricted:
$ ssh usr_ssh_restricted@10.246.178.121 (usr_ssh_restricted@10.246.178.121) Mật khẩu: Bản quyền (c) 2001-2023 của Dell Inc. hoặc các công ty con của Dell. Bảo lưu mọi quyền. Bản quyền (c) 1992-2018 Dự án FreeBSD. Bản quyền (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 Hội đồng quản trị Đại học California. Mọi quyền được bảo lưu. PowerScale OneFS 9.5.0.0 Các lệnh được phép là thông thoáng ... đây là ... isi_recovery_shell ... truy cập nhật ký isi ... ra đăng xuất %
Tài khoản này không có quyền RBAC cụm nào ngoài quyền truy cập SSH nên không thể chạy các lệnh isi khác nhau . Ví dụ, cố gắng chạy isi status không trả về dữ liệu và thay vào đó, cảnh báo về nhu cầu về quyền event, job engine và statistics:
% isi status Tên cụm: h7001 __ *** Thông tin về dung lượng và tình trạng hoạt động yêu cầu *** *** quyền lợi: ISI_PRIV_STATISTICS. *** Sự kiện quan trọng: *** Yêu cầu quyền: ISI_PRIV_EVENT. *** Trạng thái công việc của cụm: __ *** Yêu cầu quyền: ISI_PRIV_JOB_ENGINE. *** Các lệnh được phép là thông thoáng ... đây là ... isi_recovery_shell ... truy cập nhật ký isi ... ra đăng xuất %
Tương tự như vậy, các lệnh shell UNIX chuẩn, chẳng hạn như pwd và whoami, cũng bị cấm:
% mật khẩu Các lệnh được phép là thông thoáng ... đây là ... isi_recovery_shell ... truy cập nhật ký isi ... ra đăng xuất % ai là ai Các lệnh được phép là thông thoáng ... đây là ... isi_recovery_shell ... truy cập nhật ký isi ... ra đăng xuất
Thật vậy, nếu không có các đặc quyền OneFS RBAC bổ sung, các lệnh duy nhất mà người dùng usr_ssh_restricted có thể chạy trong shell bị hạn chế là clear , exit và logout :
Lưu ý rằng shell bị hạn chế sẽ tự động đăng xuất phiên không hoạt động sau một thời gian ngắn không hoạt động.
Tiếp theo, chúng ta đăng nhập bằng tài khoản usr_admin_restricted:
$ ssh usr_admin_restricted@10.246.178.121 (usr_admin_restricted@10.246.178.121) Mật khẩu: Bản quyền (c) 2001-2023 của Dell Inc. hoặc các công ty con của Dell. Bảo lưu mọi quyền. Bản quyền (c) 1992-2018 Dự án FreeBSD. Bản quyền (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 Hội đồng quản trị Đại học California. Mọi quyền được bảo lưu. PowerScale OneFS 9.5.0.0 Các lệnh được phép là thông thoáng ... đây là ... isi_recovery_shell ... truy cập nhật ký isi ... ra đăng xuất %
Lệnh isi hiện hoạt động vì người dùng có vai trò và quyền SecurityAdmin và SystemAdmin:
% danh sách vai trò xác thực isi Tên --------------- Kiểm toánQuản trị Sao lưuQuản trị viên Vai trò người dùng cơ bản Quản trị viên bảo mật Thống kêAdmin Quản trị hệ thống Quản trị VMware bảng điều khiển rl rl_ssh --------------- Tổng cộng: 9 Các lệnh được phép là thông thoáng ... đây là ... isi_recovery_shell ... truy cập nhật ký isi ... ra đăng xuất % isi người dùng xác thực xem usr_admin_restricted Tên: usr_admin_restricted DN: CN=usr_admin_restricted,CN=Người dùng,DC=H7001 Tên miền DNS: - Tên miền: H7001 Nhà cung cấp: lsa-local-provider:System Tên tài khoản Sam: usr_admin_restricted Mã số nhận dạng: 2003 Mã số thuế: S-1-5-21-3745626141-289409179-1286507423-1003 Đã bật: Có Đã hết hạn: Không Ngày hết hạn: - Đã khóa: Không Thư điện tử: - GECO: - GID đã tạo: Không UID đã tạo: Không Đã tạo UPN: Có Nhóm chính Mã số: GID:1800 Tên: Người dùng Isilon Thư mục trang chủ: /ifs/home/usr_admin_restricted Tuổi mật khẩu tối đa: 4W Mật khẩu hết hạn: Không Ngày hết hạn mật khẩu: 2023-05-30T17:16:53 Mật khẩu được thiết lập lần cuối: 2023-05-02T17:16:53 Mật khẩu hết hạn: Có Lần đăng nhập cuối cùng: - Vỏ: /usr/local/restricted_shell/bin/restricted_shell.py UPN: usr_admin_restricted@H7001 Người dùng có thể thay đổi mật khẩu: Có Tắt khi không hoạt động: Không Các lệnh được phép là thông thoáng ... đây là ... isi_recovery_shell ... truy cập nhật ký isi ... ra đăng xuất %
Tuy nhiên, lệnh “isi underscore” của OneFS không được hỗ trợ trong shell bị hạn chế. Ví dụ, khi cố gắng sử dụng lệnh isi_for_array :
% isi_for_array -s uname -a Các lệnh được phép là thông thoáng ... đây là ... isi_recovery_shell ... truy cập nhật ký isi ... ra đăng xuất
Lưu ý rằng, theo mặc định, các vai trò SecurityAdmin và SystemAdmin không cấp cho người dùng usr_admin_restricted các quyền cần thiết để chạy các lệnh isi_log_access và isi_recovery_shell mới .
Trong bài viết tiếp theo của loạt bài này, chúng ta sẽ xem xét các tiện ích isi_log_access và isi_recovery_shell có liên quan cũng được giới thiệu trong OneFS 9.5.
Tác giả : Nick Trimbee

Bài viết mới cập nhật
Dell Storage Engines: Tăng tốc suy luận AI với PowerScale và ObjectScale
Giải pháp chuyển tải bộ nhớ đệm KV của Dell cho ...
Bảo vệ Nhà máy AI
Áp dụng phương pháp tiếp cận kiến trúc để bảo mật ...
Tiến lên mạnh mẽ với Dell PowerMax: Vượt mặt Hitachi VSP 5000
Dell PowerMax mang lại khả năng phục hồi, hiệu suất và ...
Đẩy nhanh đổi mới AI: Sức mạnh của quyền truy cập mở
Từ các mô hình tiên tiến đến các ứng dụng cấp ...