SaltStack - Hệ thống kiểm soát truy cập

Hệ thống kiểm soát truy cập cung cấp các tùy chọn cho người dùng trong một nhóm để thực thi một tác vụ với quyền. Hệ thống kiểm soát truy cập Salt được sử dụng để định cấu hình quyền truy cập vào các giao diện kiểm soát phi quản trị. Bạn có thể áp dụng quy trình này cho tất cả các hệ thống. Điều khiển này giúp người dùng không phải là quản trị viên thực hiện các lệnh Salt.

Các giao diện muối có ba loại sau:

  • Hệ thống ACL của nhà xuất bản
  • Hệ thống xác thực bên ngoài
  • Hệ thống ngang hàng

Hãy cùng chúng tôi tìm hiểu chi tiết từng giao diện này.

Hệ thống ACL của nhà xuất bản

Hệ thống Publisher ACL cho phép người dùng truy cập không phải root để thực thi các lệnh Salt trên các tay sai từ chủ. Hệ thống ACL của nhà xuất bản được định cấu hình trong tệp cấu hình chính thông quapublisher_acltùy chọn cấu hình. Nó được định nghĩa như sau:

publisher_acl:
   user1:
      - .*

   user2:
      - web*:
         - test.*
         - pkg.*

Đây,

  • user1 được phép thực hiện bất cứ điều gì.

  • user2 được phép sử dụng testpkg, nhưng chỉ trên tay sai “web *”.

Hệ thống xác thực bên ngoài

Các external auth system được sử dụng để cung cấp quyền truy cập để thực hiện các lệnh muối trên các tay sai cụ thể thông qua hệ thống ủy quyền bên ngoài như PAM, LDAP, v.v. Tệp cấu hình này được xác định trong tệp chính như được mô tả bên dưới.

external_auth:
   pam:
      user1:
         - 'web*':
            - test.*
            - network.*
      user2:
         - .*

Đây,

  • user1 được phép thực thi các chức năng trong testnetwork modules trên những tay sai phù hợp với web* Mục tiêu.

  • user2 được phép thực hiện tất cả các chức năng.

Kích hoạt hệ thống xác thực bên ngoài trong Command

Máy chủ muối cung cấp tùy chọn '–a' để kích hoạt xác thực bên ngoài.

salt -a pam web\* test.ping

Đây, -a pamtùy chọn được sử dụng để kích hoạt xác thực bên ngoài PAM. Salt Server sẽ hỏi chi tiết xác thực bất cứ khi nào chúng tôi thực hiện lệnh. Để hạn chế Salt Server chỉ hỏi chi tiết xác thực lần đầu tiên, chúng tôi có thể sử dụng tùy chọn T. Điều này-T option lưu vào bộ nhớ cache các chi tiết xác thực trong 12 giờ tới (cài đặt mặc định) và sử dụng nó để xác thực người dùng.

salt -T -a pam web\* test.ping

Hệ thống ngang hàng

Salt minions có thể chuyển các lệnh bằng giao diện ngang hàng. Giao diện ngang hàng được định cấu hình thông qua tệp cấu hình chính để cho phép các tay sai gửi lệnh từ chủ bằng cách sử dụngpeer phần cấu hình hoặc để cho phép tay sai thực thi người chạy từ chủ bằng cách sử dụng peer_run cấu hình.

Hãy để chúng tôi hiểu chi tiết cả hai cấu hình này.

Cấu hình ngang hàng

Cấu hình đơn giản được xác định trong tệp chính như sau:

peer:
   .*:
      - .*

Ở đây, Nó cho phép giao tiếp cho tất cả các tay sai, nhưng nó chỉ được khuyến nghị cho những môi trường rất an toàn.

Để gán các minion cho các ID cụ thể, cấu hình cần được xác định như hình dưới đây: peer -

.*domain.com:
   - test.*

Cấu hình peer_run

Cấu hình này là để cho phép các tay sai thực thi người chạy từ tệp chính bằng cách sử dụng tùy chọn peer_run trên tệp chính. Ví dụ sau đây là cho phép truy cập vào tất cả các tay sai và tất cả những người chạy.

peer_run:
   .*:
      - .*

Để gán tay sai cho một ID cụ thể, cấu hình cần được xác định như dưới đây:

peer_run:
   .*domain.com:
      - test.*

Cách thực hiện lệnh

Để thực hiện test.ping trên tất cả các tay sai, sử dụng salt-call lệnh cùng với publish.publish mô-đun.

salt-call publish.publish \* test.ping

Để thực hiện runner, sử dụng lệnh gọi muối cùng với publish.runner mô-đun.

salt-call publish.runner manage.up