Kontrol listesi¶
Check-Neutron-01: Yapılandırma dosyalarının kullanıcı/grup sahipliği root/neutron 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 ownership of such critical configuration files must be set to root and group ownership must be set to neutron. 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/neutron/neutron.conf | egrep "root neutron"
$ stat -L -c "%U %G" /etc/neutron/api-paste.ini | egrep "root neutron"
$ stat -L -c "%U %G" /etc/neutron/policy.json | egrep "root neutron"
$ stat -L -c "%U %G" /etc/neutron/rootwrap.conf | egrep "root neutron"
$ stat -L -c "%U %G" /etc/neutron | egrep "root neutron"
Başarılı: Tüm yapılandırma dosyalarının kullanıcı ve grup sahipliği sırasıyla root ve neutron ise. Yukarıdaki komutlar root neutron çıktısı vermeli.
Başarısız: Eğer yukarıdaki komutlar hiçbir çıktı dönmezse, kullanıcı ve grup sahipliği root ve neutron haricinde bir şey ise.
Check-Neutron-02: 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/neutron/neutron.conf
$ stat -L -c "%a" /etc/neutron/api-paste.ini
$ stat -L -c "%a" /etc/neutron/policy.json
$ stat -L -c "%a" /etc/neutron/rootwrap.conf
$ stat -L -c "%a" /etc/neutron
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. The permissions of 640 translates into owner r/w, group r, and no rights to others i.e. “u=rw,g=r,o=”.
Note that with Check-Neutron-01: Yapılandırma dosyalarının kullanıcı/grup sahipliği root/neutron mu? and permissions set to 640, root has read/write access and neutron has read access to these configuration files. The access rights can also be validated using the following command. This command will only be available on your system if it supports ACLs.
$ getfacl --tabular -a /etc/neutron/neutron.conf
getfacl: Removing leading '/' from absolute path names
# file: etc/neutron/neutron.conf
USER root rw-
GROUP neutron r--
mask r--
other ---
Başarısız: Eğer yetkileri en az 640 değilse.
Check-Neutron-03: Kimlik doğrulama için keystone kullanıldı mı?¶
Not
This item only applies to OpenStack releases Rocky and before as
auth_strategy
was deprecated in Stein.
OpenStack, noauth, keystone vb. gibi çeşitli kimlik doğrulama stratejilerini desteklemektedir. Eğer ‘noauth’ stratejisi kullanılıyorsa, kullanıcılar herhangi bir kimlik denetimi olmaksızın OpenStack servisleri ile etkileşimde bulunabilirler. Bu, bir saldırgan OpenStack bileşenlerine yetkisiz erişebileceğinden potansiyel bir risk oluşturabilir. Bu nedenle, tüm servislerin servis hesaplarını kullanarak keystone ile doğrulanması önemle tavsiye edilir.
Başarılı: /etc/neutron/neutron.conf
dosyasında [DEFAULT]
bölümündeki auth_strategy
parametresinin değeri keystone
ise.
Başarısız: Eğer /etc/nova/nova.conf
dosyasındaki [DEFAULT]
bölümündeki auth_strategy
değeri noauth
ya da noauth2
ise.
Check-Neutron-04: Kimlik doğrulama için güvenli protokol kullanıldı mı?¶
OpenStack bileşenleri kendi aralarında çeşitli protokollerde ve hassas / gizli veri içeren bir iletişim yapabilir. Saldırgan, bu hassas bilgileri erişim sağlamak için bu kanalı dinleyebilir. Bu yüzden tüm bileşenler güvenli bir haberleşme protokolü kullanarak haberleşmelidir.
Pass: If value of parameter www_authenticate_uri
under
[keystone_authtoken]
section in /etc/neutron/neutron.conf
is set to
Identity API endpoint starting with https://
and value of parameter
insecure
under the same [keystone_authtoken]
section in the same
/etc/neutron/neutron.conf
is set to False
.
Fail: If value of parameter www_authenticate_uri
under
[keystone_authtoken]
section in /etc/neutron/neutron.conf
is not set to
Identity API endpoint starting with https://
or value of parameter
insecure
under the same [keystone_authtoken]
section in the same
/etc/neutron/neutron.conf
is set to True
.
Check-Neutron-05: Neutron API sunucusunda TLS etkinleştirildi mi?¶
Önceki denetime benzer şekilde, API sunucusunda güvenli iletişimi etkinleştirmeniz önerilir.
Başarılı: /etc/neutron/neutron.conf
dosyasında [DEFAULT]
bölümündeki use_ssl
parametresinin değeri True
ise.
Başarılı: /etc/neutron/neutron.conf
dosyasında [DEFAULT]
bölümündeki use_ssl
parametresinin değeri False
ise.