SaltStack - Erişim Kontrol Sistemi
Bir Erişim Kontrol Sistemi, bir grubun izinlere sahip bir görevi yürütmesi için bir kullanıcıya seçenekler sağlar. Yönetici olmayan kontrol arayüzlerine erişimi yapılandırmak için bir Salt erişim kontrol sistemi kullanılır. Bu işlemi tüm sistemlere uygulayabilirsiniz. Bu kontrol, yönetici olmayan kullanıcıların Salt komutlarını yürütmesine yardımcı olur.
Tuz arayüzleri aşağıdaki üç türdendir -
- Yayıncı EKL sistemi
- Harici Yetkilendirme sistemi
- Akran sistemi
Bu arayüzlerin her birini ayrıntılı olarak inceleyelim.
Yayıncı ACL Sistemi
Bir Publisher ACL sistemi, ana bilgisayardan minyonlar üzerinde Salt komutlarını yürütmek için kök dışındaki kullanıcılara erişim sağlar. Yayıncı EKL sistemi, ana yapılandırma dosyasında şu şekilde yapılandırılır:publisher_aclyapılandırma seçeneği. Aşağıdaki gibi tanımlanır -
publisher_acl:
user1:
- .*
user2:
- web*:
- test.*
- pkg.*
Buraya,
user1 herhangi bir şeyi yürütmesine izin verilir.
user2 kullanımına izin verilir test ve pkg, ancak yalnızca "web *" kölelerinde.
Dış Kimlik Doğrulama Sistemi
external auth system harici yetkilendirme sistemi aracılığıyla belirli minyonlarda salt komutları yürütmek için erişim sağlamak için kullanılır. PAM, LDAP, vb. Bu konfigürasyon dosyası, aşağıda açıklandığı gibi ana dosyada tanımlanır.
external_auth:
pam:
user1:
- 'web*':
- test.*
- network.*
user2:
- .*
Buraya,
user1 içindeki işlevleri yürütmesine izin verilir test ve network modules eşleşen minyonlarda web* hedef.
user2 tüm işlevleri yürütmesine izin verilir.
Komutta Harici Kimlik Doğrulama Sistemini etkinleştirin
Salt sunucusu, harici kimlik doğrulamayı etkinleştirmek için bir '–a' seçeneği sunar.
salt -a pam web\* test.ping
Burada -a pamseçeneği, PAM harici kimlik doğrulamasını etkinleştirmek için kullanılır. Salt Server, komutu her çalıştırdığımızda kimlik doğrulama ayrıntılarını soracaktır. Salt Server'ın kimlik doğrulama ayrıntılarını yalnızca ilk kez sormasını kısıtlamak için T seçeneğini kullanabiliriz. Bu-T option sonraki 12 saat için kimlik doğrulama ayrıntılarını önbelleğe alır (varsayılan ayar) ve bunu kullanıcıların kimliğini doğrulamak için kullanır.
salt -T -a pam web\* test.ping
Eş Sistem
Salt minyonlar, eş arayüzü kullanarak komutları geçebilir. Eş arabirim, ya minyonların ana bilgisayardan komutları kullanarak komut göndermesine izin vermek için ana yapılandırma dosyası aracılığıyla yapılandırılır.peer yapılandırma bölümü veya minyonların ustadan koşucuları kullanarak yürütmesine izin vermek için peer_run yapılandırma.
Bu iki konfigürasyonu da ayrıntılı olarak anlayalım.
Eş yapılandırması
Ana dosyada tanımlanacak basit konfigürasyon aşağıdaki gibidir -
peer:
.*:
- .*
Burada, tüm minyonlar için iletişimi sağlar, ancak yalnızca çok güvenli ortamlar için önerilir.
Minyonları belirli kimliklere atamak için yapılandırmanın aşağıda gösterildiği gibi tanımlanması gerekir: eş -
.*domain.com:
- test.*
peer_run Yapılandırması
Bu yapılandırma, minyonların ana dosyadaki peer_run seçeneğini kullanarak ana bilgisayardan koşucuları yürütmesine izin vermek içindir. Aşağıdaki örnek, tüm minyonlara ve tüm koşuculara erişim sağlamaktır.
peer_run:
.*:
- .*
Minyonları belirli bir kimliğe atamak için, yapılandırmanın aşağıda belirtildiği gibi tanımlanması gerekir -
peer_run:
.*domain.com:
- test.*
Komutlar Nasıl Yürütülür
Yürütmek test.ping tüm minyonlarda, salt-call ile birlikte komut publish.publish modül.
salt-call publish.publish \* test.ping
Yürütmek runnertuz çağrısı komutunu, publish.runner modül.
salt-call publish.runner manage.up