SaltStack - system kontroli dostępu
System kontroli dostępu zapewnia grupie opcje wykonywania zadania z uprawnieniami. System kontroli dostępu Salt służy do konfigurowania dostępu do nieadministracyjnych interfejsów kontrolnych. Możesz zastosować ten proces do wszystkich systemów. Ta kontrolka pomaga użytkownikom nieadministracyjnym w wykonywaniu poleceń Salt.
Interfejsy solne są trzech następujących typów -
- System ACL wydawcy
- Zewnętrzny system autoryzacji
- System równorzędny
Rozumiemy, że szczegółowo omówimy każdy z tych interfejsów.
System ACL wydawcy
System ACL wydawcy umożliwia dostęp użytkownikom innym niż root do wykonywania poleceń Salt na sługach od mistrza. System ACL wydawcy jest konfigurowany w głównym pliku konfiguracyjnym za pośrednictwempublisher_aclopcja konfiguracji. Jest zdefiniowany w następujący sposób -
publisher_acl:
user1:
- .*
user2:
- web*:
- test.*
- pkg.*
Tutaj,
user1 może wykonywać wszystko.
user2 może używać test i pkg, ale tylko w stworach „web *”.
Zewnętrzny system uwierzytelniania
Plik external auth system służy do zapewniania dostępu do wykonywania poleceń soli na określonych stworach za pośrednictwem zewnętrznego systemu autoryzacji, takiego jak PAM, LDAPitd. Ten plik konfiguracyjny jest zdefiniowany w pliku głównym, jak opisano poniżej.
external_auth:
pam:
user1:
- 'web*':
- test.*
- network.*
user2:
- .*
Tutaj,
user1 może wykonywać funkcje w test i network modules na sługusach pasujących do web* cel.
user2 może wykonywać wszystkie funkcje.
Włącz zewnętrzny system uwierzytelniania w poleceniu
Serwer Salt udostępnia opcję „–a”, która umożliwia uwierzytelnianie zewnętrzne.
salt -a pam web\* test.ping
Tutaj -a pamopcja służy do włączania zewnętrznego uwierzytelniania PAM. Salt Server zapyta o szczegóły uwierzytelnienia za każdym razem, gdy wykonamy polecenie. Aby uniemożliwić serwerowi Salt Server pytanie o szczegóły uwierzytelniania tylko po raz pierwszy, możemy użyć opcji T. To-T option Buforuje szczegóły uwierzytelniania przez następne 12 godzin (ustawienie domyślne) i używa ich do uwierzytelniania użytkowników.
salt -T -a pam web\* test.ping
System równorzędny
Sługusy mogą wydawać polecenia za pomocą interfejsu rówieśników. Interfejs równorzędny jest konfigurowany za pomocą głównego pliku konfiguracyjnego, aby umożliwić sługom wysyłanie poleceń od mistrza za pomocąpeer konfiguracji lub aby umożliwić sługom wykonywanie runnerów z poziomu głównego przy użyciu peer_run konfiguracja.
Rozumiemy szczegółowo obie te konfiguracje.
Konfiguracja równorzędna
Prosta konfiguracja do zdefiniowania w pliku głównym jest następująca -
peer:
.*:
- .*
Tutaj umożliwia komunikację wszystkim stworom, ale jest zalecane tylko w bardzo bezpiecznych środowiskach.
Aby przypisać stronników do konkretnych identyfikatorów, konfigurację należy zdefiniować, jak pokazano poniżej: peer -
.*domain.com:
- test.*
Konfiguracja peer_run
Ta konfiguracja umożliwia sługom wykonywanie programów uruchamiających z poziomu głównego za pomocą opcji peer_run w pliku głównym. Poniższy przykład przedstawia dostęp do wszystkich stronników i wszystkich biegaczy.
peer_run:
.*:
- .*
Aby przypisać stronników do konkretnego identyfikatora, konfigurację należy zdefiniować w sposób podany poniżej -
peer_run:
.*domain.com:
- test.*
Jak wykonywać polecenia
Wykonać test.ping na wszystkich stworach użyj salt-call polecenie wraz z publish.publish moduł.
salt-call publish.publish \* test.ping
Wykonać runner, użyj polecenia salt-call wraz z publish.runner moduł.
salt-call publish.runner manage.up