d1ck3n
Goto Top

Script: Firefox starten und nach 5s wieder beenden

Hallo zusammen,

ich möchte auf einem Linux System per Ansible und eventuell etwas shell scripting ein Firmen CA root certificate in Firefox importieren.

Klar, über die Einstellungen kann der user das auch manuell einfügen, aber ich möchte das gerne automatisieren,

Dazu habe ich auch schon ein gutes Script im Internet gefunden: https://thomas-leister.de/en/how-to-import-ca-root-certificate/

#!/bin/bash

### Script installs root.cert.pem to certificate trust store of applications using NSS
### (e.g. Firefox, Thunderbird, Chromium)
### Mozilla uses cert8, Chromium and Chrome use cert9

###
### Requirement: apt install libnss3-tools
###


###
### CA file to install (CUSTOMIZE!)
###

certfile="root.cert.pem"  
certname="My Root CA"  


###
### For cert8 (legacy - DBM)
###

for certDB in $(find ~/ -name "cert8.db")  
do
    certdir=$(dirname ${certDB});
    certutil -A -n "${certname}" -t "TCu,Cu,Tu" -i ${certfile} -d dbm:${certdir}  
done


###
### For cert9 (SQL)
###

for certDB in $(find ~/ -name "cert9.db")  
do
    certdir=$(dirname ${certDB});
    certutil -A -n "${certname}" -t "TCu,Cu,Tu" -i ${certfile} -d sql:${certdir}  
done

das script funktioniert auch super, aber ein kleines Problem habe ich: Der User muss ein Mal den Browser geöffnet haben damit sich die cert9.db erstellt.

Ich dachte mir: "okay, das kann ich ja mit einem simplen script erledigen":

#!/bin/bash

firefox --headless
sleep 5s
pkill firefox

Firefox startet auch, aber der pkill command wird nicht ausgeführt.

Das ist der einzige Output den ich bekomme:


cli

eigentlich sollte das nicht so schwer sein. Oder kann ich die cert9.db auch anders generieren?

Grüße
D1Ck3n

Content-Key: 592417

Url: https://administrator.de/contentid/592417

Printed on: April 19, 2024 at 13:04 o'clock

Member: NetzwerkDude
Solution NetzwerkDude Jul 31, 2020 at 11:55:09 (UTC)
Goto Top
Also werden die ganzen befehle nach firefox --headless überhaupt ausgeführt?

Ich nehme an du müsstest es starten und dann in den hintergrund schieben:
firefox --headless &

Und dann forkt der firefox prozess meistens etliche childs - kann sein das pkill da nicht zurechtkommt, also einfach mal alle firefoxe killen:
ps -ax | grep firefox | awk '{print $1}' | xargs -i kill {}  

Happy Sysadmin Day, Prost
N-Dude
Member: D1Ck3n
D1Ck3n Jul 31, 2020 at 13:43:19 (UTC)
Goto Top
Hi NetzwerkDude,

vielen vielen Dank! Es funktioniert nun wie es soll!

ich habe es spaßeshalber auch mit pkill auch ausprobiert, aber da scheinen nicht alle Prozesse sauber gekillt zu werden.

Ich wünsche dir auch noch einen Happy Sysadmin Day face-smile

Grüße
D1Ck3n