table of contents
        
      
      
    | AUTHSELECT-PROFILES(5) | AUTHSELECT-PROFILES(5) | 
NAME¶
authselect-profiles - authselect profillerinin genişletilmesi.
AÇIKLAMA¶
Bu kılavuz sayfasında authselect profillerinin nasıl düzenlendiği ve yeni profillerin nasıl oluşturulacağı açıklanmaktadır.
PROFİL DİZİNLERݶ
Profiller üç dizinden birinde bulunabilir.
/usr/share/authselect/default
/usr/share/authselect/vendor
/etc/authselect/custom
PROFİL DOSYALARI¶
Her profil, zorunlu profil açıklamasını sağlayan ve sistemde yapılan değişiklikleri açıklayan bu dosyalardan bir veya daha fazlasından oluşmaktadır.
README
system-auth
password-auth, smartcard-auth, fingerprint-auth
postlogin
nsswitch.conf
dconf-db
dconf-locks
KOŞULLU SATIRLAR¶
Bu dosyaların her biri bir şablon görevi görmektedir. Şablon, bazı isteğe bağlı profil özellikleri sağlamak için kullanılabilen birkaç işlemin isteğe bağlı kullanımına sahip bir düz metin dosyasıdır.
{continue if "özellik"}
{stop if "özellik"}
{include if "özellik"}
{exclude if "özellik"}
{imply "dolaylı-özellik" if "özellik"}
{if "özellik":true|false}
{if "özellik":true}
Koşullu satırda bir özellik adı belirtmek yerine mantıksal ifade de kullanılabilir. Bu durumda ifade doğru veya yanlış olarak değerlendirilecek ve koşullu operator sonuca göre hareket edecektir.
İfade söz dizimi; özellik tanımlıysa true, değilse false döndüren özellik adlarından (örn. "özellik") ve şu mantıksal işlemlerden oluşur: and, or ve not. İfade ayrıca parantez içine alınabilir ve birden fazla alt ifade içerebilir.
Örneğin:
{if "özellik1" or "özellik2":true}
{if not "özellik":true|false}
{if not "özellik":true}
{if "özellik1" and ("özellik2" or "özellik3"):true}
ÖRNEK¶
Aşağıda "if" işleminin kullanımına bir örnek verilmiştir. Bu, "with-sudo" özelliği etkinse sudoers satırına "sss" ekleyecektir.
passwd:     sss files
group:      sss files
netgroup:   sss files
automount:  sss files
services:   sss files
sudoers:    files {if "with-sudo":sss}
Aşağıda "continue-if" ve "include-if" işlemlerine bir örnek verilmiştir. "with-smartcard" özelliği etkinleştirilmediği sürece, sonuç olarak elde edilecek dosya boş olacaktır. Etkinleştirilirse ve ayrıca "with-faillock" özelliği de etkinse, pam_faillock desteğini de etkinleştirecektir.
{continue if "with-smartcard"}
auth        required                                     pam_env.so
auth        required                                     pam_faildelay.so delay=2000000
auth        required                                     pam_faillock.so preauth silent deny=4 unlock_time=1200 {include if "with-faillock"}
auth        [default=1 ignore=ignore success=ok]         pam_succeed_if.so uid >= 1000 quiet
auth        [default=1 ignore=ignore success=ok]         pam_localuser.so
auth        sufficient                                   pam_unix.so nullok
auth        requisite                                    pam_succeed_if.so uid >= 1000 quiet_success
auth        sufficient                                   pam_sss.so forward_pass
auth        required                                     pam_faillock.so authfail deny=4 unlock_time=1200       {include if "with-faillock"}
auth        required                                     pam_deny.so
...
Aşağıda mantıksal ifade kullanan bir "continue-if" örneği verilmiştir. "with-smartcard" veya "with-smartcard-required" ayarlanmadığı sürece dosya boş olacaktır. Bu, her iki özelliği de içermesi gerekmeyen, yalnızca "with-smartcard-required" özelliğinin gerekli olduğu authselect select komutunun çağrılmasını kolaylaştıracaktır.
{continue if "with-smartcard" or "with-smartcard-required"}
auth        required                                     pam_env.so
auth        required                                     pam_faildelay.so delay=2000000
auth        required                                     pam_faillock.so preauth silent deny=4 unlock_time=1200 {include if "with-faillock"}
auth        [default=1 ignore=ignore success=ok]         pam_succeed_if.so uid >= 1000 quiet
auth        [default=1 ignore=ignore success=ok]         pam_localuser.so
auth        sufficient                                   pam_unix.so nullok
auth        requisite                                    pam_succeed_if.so uid >= 1000 quiet_success
auth        sufficient                                   pam_sss.so forward_pass
auth        required                                     pam_faillock.so authfail deny=4 unlock_time=1200       {include if "with-faillock"}
auth        required                                     pam_deny.so
...
Aşağıda "imply-if" işlemine bir örnek verilmiştir. "with-smartcard-required" özelliğini etkinleştirmek, ilgili tüm PAM modüllerinin kullanıldığından emin olmak için "with-smartcard" özelliğini de etkinleştirecektir. Bu, önceki örnekle aynı davranışı sağlayacaktır.
{imply "with-smartcard" if "with-smartcard-required"}
auth        required                                     pam_env.so
auth        required                                     pam_faildelay.so delay=2000000
auth        [success=1 default=ignore]                   pam_succeed_if.so service notin login:gdm:xdm:kdm:kde:xscreensaver:gnome-screensaver:kscreensaver quiet use_uid {include if "with-smartcard-required"}
auth        [success=done ignore=ignore default=die]     pam_sss.so require_cert_auth ignore_authinfo_unavail             {include if "with-smartcard-required"}
auth        [default=1 ignore=ignore success=ok]         pam_succeed_if.so uid >= 1000 quiet
auth        [default=1 ignore=ignore success=ok]         pam_localuser.so                                                 {exclude if "with-smartcard"}
auth        [default=2 ignore=ignore success=ok]         pam_localuser.so                                                 {include if "with-smartcard"}
auth        [success=done authinfo_unavail=ignore user_unknown=ignore ignore=ignore default=die] pam_sss.so try_cert_auth {include if "with-smartcard"}
auth        sufficient                                   pam_unix.so {if not "without-nullok":nullok}
auth        requisite                                    pam_succeed_if.so uid >= 1000 quiet_success
auth        sufficient                                   pam_sss.so forward_pass
auth        required                                     pam_deny.so
...
YENİ BİR PROFİL OLUŞTURMA¶
Authselect içinde yeni bir profil kaydetmek için, authselect profil konumlarından birinde yukarıda listelenen dosyaları içeren bir dizin oluşturun. Dosyaların hepsinin bulunması zorunlu değildir, yalnızca README dosyası zorunludur. Diğer dosyalar ihtiyaca göre oluşturulabilir.
Yeni bir profil oluştururken authselect create-profile komutu faydalı olabilir. Daha fazla bilgi için authselect(8) kılavuz sayfasına bakın veya authselect create-profile --help komutunu kullanın.
AYRICA BAKIN¶
| 2018-02-17 |