Kontrol listesi¶
Check-Identity-01: Yapılandırma dosyalarının kullanıcı/grup sahipliği keystone mu?¶
Configuration files contain critical parameters and information required for smooth functioning of the component. If an unprivileged user, either intentionally or accidentally modifies or deletes any of the parameters or the file itself then it would cause severe availability issues causing a denial of service to the other end users. Thus user and group ownership of such critical configuration files must be set to that component owner. Additionally, the containing directory should have the same ownership to ensure that new files are owned correctly.
Aşağıdaki komutları çalıştırın:
$ stat -L -c "%U %G" /etc/keystone/keystone.conf | egrep "keystone keystone"
$ stat -L -c "%U %G" /etc/keystone/keystone-paste.ini | egrep "keystone keystone"
$ stat -L -c "%U %G" /etc/keystone/policy.json | egrep "keystone keystone"
$ stat -L -c "%U %G" /etc/keystone/logging.conf | egrep "keystone keystone"
$ stat -L -c "%U %G" /etc/keystone/ssl/certs/signing_cert.pem | egrep "keystone keystone"
$ stat -L -c "%U %G" /etc/keystone/ssl/private/signing_key.pem | egrep "keystone keystone"
$ stat -L -c "%U %G" /etc/keystone/ssl/certs/ca.pem | egrep "keystone keystone"
$ stat -L -c "%U %G" /etc/keystone | egrep "keystone keystone"
Başarılı: Tüm bu yapılandırma dosyalarının kullanıcı ve grup sahipliği keystone ise. Yukarıdaki komut keystone keystone çıktısı verecektir.
Başarısız: Yukarıdaki komut hiçbir çıktı dönmezse, kullanıcı veya grup sahipliği keystone haricinde başka bir kullanıcı ise.
Dahili olarak uygulanan kimlik doğrulama yöntemleri belgesinde önerildi.
Check-Identity-02: Kimlik yapılandırma dosyaları için sıkı izinler ayarlandı mı?¶
Önceki denetimine benzer şekilde, bu yapılandırma dosyaları için sıkı erişim izinlerini ayarlamanız önerilir.
Aşağıdaki komutları çalıştırın:
$ stat -L -c "%a" /etc/keystone/keystone.conf
$ stat -L -c "%a" /etc/keystone/keystone-paste.ini
$ stat -L -c "%a" /etc/keystone/policy.json
$ stat -L -c "%a" /etc/keystone/logging.conf
$ stat -L -c "%a" /etc/keystone/ssl/certs/signing_cert.pem
$ stat -L -c "%a" /etc/keystone/ssl/private/signing_key.pem
$ stat -L -c "%a" /etc/keystone/ssl/certs/ca.pem
$ stat -L -c "%a" /etc/keystone
A broader restriction is also possible: if the containing directory is set to 750, the guarantee is made that newly created files inside this directory would have the desired permissions.
Pass: If permissions are set to 640 or stricter, or the containing directory is set to 750.
Fail: If permissions are not set to at least 640/750.
Dahili olarak uygulanan kimlik doğrulama yöntemleri belgesinde önerildi.
Check-Identity-03: Kimlik için TLS etkinleştirildi mi?¶
OpenStack bileşenleri çeşitli protokolleri kullanarak birbirleriyle iletişim kurar ve iletişim hassas veya gizli verileri içerebilir. Hassas bilgilerinize erişebilmek için bir saldırgan kanalda kulak misafiri olmayı deneyebilir. Böylece, tüm bileşenlerin HTTPS gibi güvenli bir iletişim protokolü kullanarak birbirleriyle iletişim kurması gerekir.
Kimlik için HTTP/WSGI sunucusunu kullanırsanız, HTTP/WSGI sunucusunda TLS’yi etkinleştirmelisiniz.
Başarılı: HTTP sunucunuzda TLS etkin ise.
Başarısız: HTTP sunucunuzda TLS etkin değil ise.
Güvenli iletişim de önerildi.
Check-Identity-04: (Obsolete)¶
Check-Identity-05: max_request_body_size
parametresinin değeri öntanımlıya (114688) ayarlandı mı?¶
Max_request_body_size
parametresi, istek başına maksimum gövde boyutunu bayt olarak tanımlar. Maksimum boyut tanımlanmadıysa, saldırgan büyük boyutlu rastgele bir istekte bulunarak servisin çökmesine neden olabilir ve nihayet Hizmet Reddi’ne neden olabilir. Maksimum değeri atamak, kötü niyetli büyük boyutlu talebin engellenmesini sağlayarak bileşen kullanımının devamlılığını sağlar.
Başarılı: /etc/keystone/keystone.conf
dosyasındaki max_request_body_size
parametresinin değeri öntanımlı (114688) ise ya da ortamınıza göre uygun bir değer ise.
Başarısız: max_request_body_size
parametresinin değeri ayarlanmamışsa.
Check-Identity-06: /etc/keystone/keystone.conf
dosyasındaki yönetici belirtecini devre dışı bırakmak¶
Yönetici belirteci genellikle Kimliği önyüklemek için kullanılır. Bu belirteç, bulut yöneticisi ayrıcalıkları kazanmak için kullanılabilecek en değerli Kimlik varlığıdır.
Pass: If admin_token
under [DEFAULT]
section in
/etc/keystone/keystone.conf
is disabled. And,
AdminTokenAuthMiddleware
under [filter:admin_token_auth]
is deleted
from /etc/keystone/keystone-paste.ini
Fail: If admin_token
under [DEFAULT]
section is set and
AdminTokenAuthMiddleware
exists in keystone-paste.ini
.
Tüyo
Disabling admin_token
means it has a value of <none>
.
Check-Identity-07: /etc/keystone/keystone.conf
dosyasındaki insecure_debug false mu?¶
`` Insecure_debug`` parametresi true olarak ayarlanırsa sunucu, kimlik doğrulamanın başarısız olmasına ilişkin ek ayrıntılar gibi, kimliği doğrulanmamış veya kimliği doğrulanmış bir kullanıcının normalden daha fazla bilgi almasına izin verebilecek HTTP yanıtlarında bilgi döndürür.
Başarılı: Eğer /etc/keystone/keystone.conf
dosyasındaki [DEFAULT]
bölümündeki insecure_debug
false ise.
Başarısız: Eğer /etc/keystone/keystone.conf
dosyasındaki [DEFAULT]
bölümündeki insecure_debug
true ise.
Check-Identity-08: Use fernet token in /etc/keystone/keystone.conf
¶
OpenStack Identity service provides uuid
and fernet
as token providers.
The uuid
tokens must be persisted and is considered as insecure.
Pass: If value of parameter provider
under [token]
section in /etc/keystone/keystone.conf
is set to fernet.
Fail: If value of parameter provider
under [token]
section is set to uuid.