我正在尝试使用根CA配置Vagrant框并将其安装在Firefox中。我已经发现我可以使用安装证书,certutil
但问题是它需要一个现有的Firefox配置文件来添加证书。
在一个全新的盒子上,配置文件是在Firefox第一次运行时创建的。这是有问题的,因为Firefox在没有显示器的情况下无法正常运行,但可以通过使用该-headless
选项来解决。但是这需要手动杀死。由于创建新配置文件需要一些时间,因此需要使用hack sleep
。总的来说,我有以下几点:
#!/bin/bash
sudo DEBIAN_FRONTEND=noninteractive apt-get -y install \
firefox \
libnss3-tools
# create a new profile
firefox -headless &
sleep 2
kill $!
# install the root CA into all profiles
cert="${HOME}/mycert.cer"
for certDb in $(find ${HOME}/.mozilla* -name "cert8.db"); do
certDir="$(dirname ${certDb})"
echo ${certDir}
certutil -A -n "mycert" -t "TCu,Cuw,Tuw" -i "${cert}" -d "${certDir}"
done
没有使用sleep
和有更好的方法kill
吗?