Приходится добавлять свои сертификаты в браузеры для проверки трафика такими системами как Data Leak Prevention (DLP), Unified threat management (UTM), Next-Generation Firewall (NGFW) и т.д. Учитывая количество учётных записей на вашем предприятии и срок действия сертификатов, лучше данный процесс автоматизировать через вашу систему оркестровки/развёртывания.
sudo openssl x509 -inform DER -in UTM.cer -out UTM.crtsudo cp *.crt /usr/local/share/ca-certificates/
sudo chown root:root /usr/local/share/ca-certificates/*.crt
Мой пример с Astra Linux 1.7.
{
"policies": {
"ImportEnterpriseRoots": true,
"Certificates": {
"Install": [
"/etc/ipa/ca.crt",
"/usr/local/share/ca-certificates/DLP.crt",
"/usr/local/share/ca-certificates/UTM.crt"
]
}
}
}
sudo apt install libnss3-toolsmkdir -p ~/.pki/nssdb/certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n "MyUTM" -i /path/to/UTM.crtcertutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n "MyDLP" -i /path/to/DLP.crt
Для всех будущих учётных записей пользователей создайте скелетон sudo mkdir -p /etc/skel/.pki/nssdb/ и поместите в каталог /etc/skel/.pki/nssdb/ файлы *.db из предыдущего шага. Смените владельца sudo chown -R root:root /etc/skel/.pki/
Теперь при первом входе пользователя во время создания ему домашней папки, автоматом будут копироваться в его ~/.pki/nssdb/ файлы-базы из /etc/skel/.pki/nssdb/*.db.
Вариант с удалением базы у пользователя и копированием уже существующей базы-эталона - add_cert_exist_user1.sh.
#!/bin/bash
ls -1 /home | while read userhome
do
echo "[${userhome}]"
sudo rm -Rf /home/${userhome}/.pki/
sudo mkdir -p /home/${userhome}/.pki/nssdb/
sudo cp -f /etc/skel/.pki/nssdb/*.db /home/${userhome}/.pki/nssdb/
sudo chown -R ${userhome}:${userhome} /home/${userhome}/.pki/
echo "----------------------"
done
exit
Вариант с добавлением сертификатов в существующую базу пользователя, предполагая что в ней могут существовать и другие сертификаты - add_cert_exist_user2.sh.
#!/bin/bash
ls -1 /home | while read userhome
do
echo "[${userhome}]"
sudo mkdir -p /home/${userhome}/.pki/nssdb/
certutil -d sql:/home/${userhome}/.pki/nssdb -A -t "C,," -n "MyDLP" -i /usr/local/share/ca-certificates/DLP.crt
certutil -d sql:/home/${userhome}/.pki/nssdb -A -t "C,," -n "MyUTM" -i /usr/local/share/ca-certificates/UTM.crt
echo "----------------------"
done
exit
certutil -d sql:$HOME/.pki/nssdb -L
Дополнительные материалы:
Дата последней правки: 2024-10-08 13:29:50