Firefox: Sæt startside(r)
Source: Download script
Last Updated: 4. December 2024 by Agnete Moos (agms@sonderborg.dk)
Parameters:
Navn | Type | Standardværdi | Påkrævet |
---|---|---|---|
Click to see the source code
#!/bin/bash
: << 'COMMENT'
Policy-script developed by Magenta ApS for Aarhus Municipal.
Learn more about Firefox "Policy Names" here:
https://github.com/mozilla/policy-templates/blob/master/README.md
It's only possible to have ONE policy-file. In the future this script
should have to evolve to be a more dynamic solution if we want to be
able to, e.g. use the same script accross machines and handpick which
Policies we want to use. Until then there will be set some default static
Policies with OS2borgerPC in mind.
Author: Heini L. Ovason
COMMENT
set -x
if get_os2borgerpc_config os2_product | grep --quiet kiosk; then
echo "Dette script er ikke designet til at blive anvendt på en kiosk-maskine."
exit 1
fi
STARTPAGE="$1"
ADDITIONAL_PAGES="$2"
POLICY_DIR="/etc/firefox/policies"
POLICY_FILE="policies.json"
if [ -z "$STARTPAGE" ]; then
echo "WARNING: Missing argument. Not able to set Firefox startpage."
exit 1
fi
if [ ! -d "$POLICY_DIR" ]; then
mkdir -p "$POLICY_DIR";
fi
PAGES_STRING=""
if [ -n "$ADDITIONAL_PAGES" ]; then
IFS='|' read -ra PAGES_ARRAY <<< "$ADDITIONAL_PAGES"
PAGES_STRING="\"Additional\": [" # start array-string
for PAGE in "${PAGES_ARRAY[@]}"
do
PAGES_STRING+="\"$PAGE\","
done
PAGES_STRING=${PAGES_STRING::-1} # remove comma at end of list
PAGES_STRING+="]," # finish array-string
fi
cat << EOF > "$POLICY_DIR/$POLICY_FILE"
{
"policies": {
"Homepage": {
"URL": "$STARTPAGE",
"Locked": true,
$PAGES_STRING
"StartPage": "homepage"
},
"DisableFirefoxAccounts": true,
"InstallAddonsPermission": {
"Default": false
},
"OverrideFirstRunPage": "",
"OverridePostUpdatePage": "",
"Preferences": {
"datareporting.policy.dataSubmissionPolicyBypassNotification": true
},
"BlockAboutAddons": true,
"BlockAboutConfig": true,
"BlockAboutProfiles": true,
"BlockAboutSupport": true,
"DownloadDirectory": "/home/user/Hentet",
"PromptForDownloadLocation": false,
"DisableFirefoxAccounts": true,
"DisableFormHistory": true,
"DisableProfileImport": true,
"OfferToSaveLogins": false,
"OfferToSaveLoginsDefault": false,
"PasswordManagerEnabled": false,
"SanitizeOnShutdown": {
"Cache": true,
"Cookies": true,
"Downloads": false,
"FormData": true,
"History": true,
"Sessions": true,
"SiteSettings": true,
"OfflineApps": true,
"Locked": true
},
"SearchEngines": {
"PreventInstalls": true
},
"EnableTrackingProtection": {
"Value": true,
"Locked": true,
"Cryptomining": true,
"Fingerprinting": true
},
"DisableDeveloperTools": true
}
}
EOF
# Attempting to remove policy from former standard location.
OLD_POLICY="/usr/lib/firefox/distribution/policies.json"
if [ -f "$OLD_POLICY" ]; then
rm -f "$OLD_POLICY"
fi
Beskrivelse
Udviklet og testet i samarbejde med Aarhus kommune.
Scriptet fjerner alle default startsider (inkl. fanen “Firefox Privacy Notice”), som køres hver gang Firefox startes for første gang i en given ny bruger-session.
Scriptet implementerer policies, der bla.a. deaktiverer slut-brugers’ mulighed for at installere udvidelser samt at logge på(browser sync). Ydermere deaktiveres lagring af historik og cache, gem-password, tracking, m.m.
For mere info de konkrete implementerede policies henvises til at læse scriptet, hvor man kan krydsrefere med Mozillas dokumentation her: https://github.com/mozilla/policy-templates
Udover at sætte startsiden kan man også tilføje en liste yderligere ekstra faner man kunne tænke sig. Læs mere forneden. Dette script er blevet testet og virker på Ubuntu 22.04.
Parametre
Startside-URL : tekststreng
Ekstra faneblade : tekststreng
Eksempel med startside plus 1 ekstra fane
Startside-URL: https://borger.dk
Ekstra faneblade: https://info.jobnet.dk/
Eksempel med startside plus 3 ekstra faner
URL’erne separes med |
som herunder.
Ekstra faneblade : https://info.jobnet.dk/|https://skat.dk|https://www.sundhed.dk/