Ansible'ı kullanarak, ham komutları veya Ansible çalışma kitaplarını kullanarak uzak makinelerde çeşitli işlemleri gerçekleştirebilirsiniz. Varsayılan olarak, uzak ana bilgisayarda Ansible denetleyicisindeki aynı kullanıcı olarak bir Ansible çalışma kitabı yürütülür. Bu, uzak makinede başka bir kullanıcı olarak bir komut çalıştırmanız gerekirse, bunu Ansible playbook'unuzda açıkça belirtmeniz gerektiği anlamına gelir.
Komut çalıştırma işlevini başka bir kullanıcı olarak uygulamak için Linux sistemlerinde bulunan sudo özelliğini kullanmanız gerekir. Ansible yönergesi, komutları belirtilen kullanıcı olarak çalıştırmanıza izin verir.
Kullanıcının bilgileri, bir Ansible çalışma kitabında, kullanıcının parolasını ve aynı zamanda komutu çalıştırabilecek kullanıcının parolasını belirtmek için be_pass gibi değişkenler kullanılarak belirtilir.
Ansible Tasks Root Olarak Nasıl Çalıştırılır
Ansible'da kök kullanıcı olarak belirli bir komutu çalıştırmak için, be yönergesini uygulayabilir ve değeri 'true' olarak ayarlayabilirsiniz.Bunu yapmak, Ansible'a komutu çalıştırırken argüman olmadan Sudo uygulamasını söyler.
Örneğin, MySQL sunucusu paketini güncelleyen ve ardından yeniden başlatan bir Ansible çalışma kitabını düşünün. Normal Linux işlemlerinde, bu tür görevleri gerçekleştirmek için kök kullanıcı olarak oturum açmanız gerekir. Ansible'da, aşağıda gösterildiği gibi, basitçe be: evet yönergesini çağırabilirsiniz:
- ev sahibi: hepsihale: evet
görevler:
- isim: Ansible root olarak çalıştır ve sys'yi güncelle
yum:
isim: mysql-sunucu
durum: en son
- isim:
hizmet.hizmet:
isim: mysqld
durum: yeniden başlatıldı
Yukarıdaki oyun kitabında, be yönergesini kullandık ve be_user kullanıcısını belirtmedik, çünkü be yönergesi altındaki tüm komutlar varsayılan olarak root olarak çalıştırılır.
Bu, şu şekilde belirtmeye benzer:
- ev sahibi: hepsihale: evet
be_user: kök
görevler:
- isim: Ansible root olarak çalıştır ve sys'yi güncelle
yum:
isim: mysql-sunucu
durum: en son
- isim: hizmet.hizmet:
isim: mysqld
durum: yeniden başlatıldı
Ansible Tasks Sudo Olarak Nasıl Çalıştırılır
Bir Ansible görevini normal kök kullanıcı yerine belirli bir kullanıcı olarak çalıştırmak için, be_user yönergesini kullanabilir ve görevi yürütmek için kullanıcının kullanıcı adını iletebilirsiniz. Bu, Unix'te sudo -u komutunu kullanmak gibidir.
be_user yönergesini uygulamak için ilk önce be yönergesini etkinleştirmelisiniz, çünkü bu yönerge etkinleştirilmeden be_user kullanılamaz.
Komutun hiç kimse kullanıcısı olarak çalıştırıldığı aşağıdaki oyun kitabını göz önünde bulundurun.
- name: Bir komutu başka bir kullanıcı olarak çalıştırın (kimse)komut: ps yardımcı
olmak: doğru
be_method: su
be_user: kimse
be_flags: '-s /bin/bash'
Yukarıdaki oyun kitabı pasajında, be, be_user ve diğer be yönergelerini uyguladık.
- be_method: Bu, su veya sudo gibi ayrıcalık yükseltme yöntemini ayarlar.
- be_user yönergesi: Bu, komutu şu şekilde çalıştıracak kullanıcıyı belirtir; bu şu anlama gelmez: evet.
- be_flags: Belirtilen görev için kullanılacak bayrakları ayarlar.
Şimdi yukarıdaki çalışma kitabını ansible-playbook dosya adıyla çalıştırabilirsiniz.yml ve sonucu kendiniz görün. Çıktı olan görevler için hata ayıklama modülünü uygulamanız gerekebilir.
Şifreli Ansible nasıl çalıştırılır
Parola gerektiren bir hale yönergesini çalıştırmak için, Ansible'a belirtilen çalışma kitabını çağırırken parola sormasını söyleyebilirsiniz.
Örneğin, bir çalışma kitabını parolayla çalıştırmak için aşağıdaki komutu girin:
ansible-playbook be_pass.yml --ask-olma-geçişYukarıdaki komuta benzer işlemleri gerçekleştiren -K bayrağını da belirtebilirsiniz. Örneğin:
ansible-playbook be_pass.yml -KBelirtildikten sonra, görevler yürütülürken sizden bir parola istenecektir.
NOT: -b bayrağını kullanarak Ansible AD HOC raw komutlarında be yönergesini de kullanabilirsiniz. Daha fazla bilgi edinmek için aşağıda sağlanan belgelere göz atın:
https://linkfy./olmakBelgeler
Sonuç
Bu makaleyi okuduktan sonra, artık çeşitli görevler için ayrıcalık yükseltmesi gerçekleştirmek için Ansible BECOME yönergesini nasıl kullanacağınızı bilmelisiniz.
Güvenlik nedeniyle, çeşitli hesaplar için kısıtlamalar uygulamak ve bunların ne zaman kullanılacağını açıkça belirtmek daha iyidir. Bu nedenle, ayrıcalık yükseltme, Ansible'da sudo ve su kullanmanın önemli bir yönüdür.