f8a60ddbf8
Add FirefoxHome policy to hide top sites, sponsored shortcuts, and Pocket articles on the new tab page for all profiles. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
242 lines
7.7 KiB
Markdown
242 lines
7.7 KiB
Markdown
# Configuration Firefox ESR et uBlock Origin
|
|
|
|
Cette page documente la configuration appliquee par
|
|
[`powershell/Install-Firefox.ps1`](../powershell/Install-Firefox.ps1).
|
|
|
|
Le but est de preparer Firefox ESR pour tous les utilisateurs Windows, y compris
|
|
les futurs profils :
|
|
|
|
- Firefox ESR devient le navigateur par defaut pour `.htm`, `.html`, `http` et `https`.
|
|
- uBlock Origin est installe automatiquement depuis Mozilla Add-ons.
|
|
- uBlock Origin recoit une configuration geree commune a tous les profils Firefox.
|
|
|
|
## Execution
|
|
|
|
Lance le script dans un terminal PowerShell administrateur. Il installe Firefox
|
|
ESR puis applique la configuration :
|
|
|
|
```powershell
|
|
powershell -ExecutionPolicy Bypass -File .\powershell\Install-Firefox.ps1
|
|
```
|
|
|
|
Le script est aussi appele automatiquement par
|
|
[`powershell/libres-softwares-install.ps1`](../powershell/libres-softwares-install.ps1)
|
|
quand Firefox ESR est selectionne via l'installateur interactif.
|
|
|
|
## Fichiers et cles crees
|
|
|
|
Le script ecrit un fichier `policies.json` dans chaque dossier d'installation
|
|
Firefox detecte :
|
|
|
|
```text
|
|
C:\Program Files\Mozilla Firefox\distribution\policies.json
|
|
```
|
|
|
|
Selon l'installation, le dossier peut etre sous `Program Files (x86)` ou dans un
|
|
dossier `Mozilla Firefox ESR`.
|
|
|
|
Le fichier est ecrit en UTF-8 sans BOM et relu immediatement pour verifier que le
|
|
JSON est valide.
|
|
|
|
Le script ecrit aussi un fichier XML d'associations Windows :
|
|
|
|
```text
|
|
C:\ProgramData\WindowsLibreSoftwareToolkit\FirefoxDefaultAssociations.xml
|
|
```
|
|
|
|
Puis il configure la policy Windows :
|
|
|
|
```text
|
|
HKLM\SOFTWARE\Policies\Microsoft\Windows\System
|
|
DefaultAssociationsConfiguration
|
|
```
|
|
|
|
Enfin, il importe les associations par defaut pour les futurs utilisateurs avec :
|
|
|
|
```powershell
|
|
dism.exe /Online /Import-DefaultAppAssociations:C:\ProgramData\WindowsLibreSoftwareToolkit\FirefoxDefaultAssociations.xml
|
|
```
|
|
|
|
## Policies Firefox
|
|
|
|
Firefox lit les policies machine au demarrage. Le fichier `policies.json` genere
|
|
contient principalement :
|
|
|
|
```json
|
|
{
|
|
"policies": {
|
|
"DontCheckDefaultBrowser": true,
|
|
"DisableDefaultBrowserAgent": true,
|
|
"FirefoxHome": {
|
|
"Search": true,
|
|
"TopSites": false,
|
|
"SponsoredTopSites": false,
|
|
"Pocket": false,
|
|
"SponsoredPocket": false
|
|
},
|
|
"ExtensionSettings": {
|
|
"uBlock0@raymondhill.net": {
|
|
"installation_mode": "force_installed",
|
|
"install_url": "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Page Nouvel onglet (FirefoxHome)
|
|
|
|
La policy `FirefoxHome` masque les raccourcis de sites et les articles
|
|
sponsorisés sur la page d'accueil et le nouvel onglet :
|
|
|
|
| Parametre | Valeur | Effet |
|
|
| --- | --- | --- |
|
|
| `Search` | `true` | Conserve la barre de recherche. |
|
|
| `TopSites` | `false` | Masque les raccourcis de sites frequents. |
|
|
| `SponsoredTopSites` | `false` | Masque les raccourcis sponsorises. |
|
|
| `Pocket` | `false` | Masque les articles Pocket recommandes. |
|
|
| `SponsoredPocket` | `false` | Masque les articles Pocket sponsorises. |
|
|
|
|
`ExtensionSettings` force l'installation de uBlock Origin pour chaque profil
|
|
Firefox. Si l'extension est supprimee ou absente, Firefox la reinstalle au
|
|
demarrage suivant.
|
|
|
|
L'identifiant officiel de l'extension Firefox est :
|
|
|
|
```text
|
|
uBlock0@raymondhill.net
|
|
```
|
|
|
|
## Configuration geree uBlock Origin
|
|
|
|
La configuration uBlock Origin passe par la policy Firefox `3rdparty`.
|
|
Firefox expose ensuite ces valeurs a l'extension via `storage.managed`.
|
|
|
|
Extrait simplifie :
|
|
|
|
```json
|
|
{
|
|
"policies": {
|
|
"3rdparty": {
|
|
"Extensions": {
|
|
"uBlock0@raymondhill.net": {
|
|
"adminSettings": {
|
|
"selectedFilterLists": [
|
|
"user-filters",
|
|
"ublock-filters",
|
|
"ublock-badware",
|
|
"ublock-privacy",
|
|
"ublock-abuse",
|
|
"ublock-unbreak",
|
|
"ublock-quick-fixes",
|
|
"easylist",
|
|
"easyprivacy",
|
|
"urlhaus-1",
|
|
"plowe-0"
|
|
],
|
|
"userSettings": {
|
|
"advancedUserEnabled": false,
|
|
"cloudStorageEnabled": false,
|
|
"contextMenuEnabled": true,
|
|
"showIconBadge": true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## Listes de filtres activees
|
|
|
|
| Liste | Role |
|
|
| --- | --- |
|
|
| `user-filters` | Reserve les filtres utilisateur. |
|
|
| `ublock-filters` | Filtres principaux uBlock Origin. |
|
|
| `ublock-badware` | Protection contre domaines malveillants. |
|
|
| `ublock-privacy` | Protection vie privee. |
|
|
| `ublock-abuse` | Protection contre abus et nuisances. |
|
|
| `ublock-unbreak` | Corrections de compatibilite. |
|
|
| `ublock-quick-fixes` | Correctifs rapides publies par uBlock Origin. |
|
|
| `easylist` | Liste anti-publicite generaliste. |
|
|
| `easyprivacy` | Liste anti-tracking generaliste. |
|
|
| `urlhaus-1` | Blocage de domaines malveillants URLhaus. |
|
|
| `plowe-0` | Liste de blocage complementaire. |
|
|
|
|
## Parametres utilisateur imposes
|
|
|
|
| Parametre | Valeur | Effet |
|
|
| --- | --- | --- |
|
|
| `advancedUserEnabled` | `false` | Desactive le mode utilisateur avance. |
|
|
| `cloudStorageEnabled` | `false` | Desactive la synchronisation cloud uBlock. |
|
|
| `contextMenuEnabled` | `true` | Garde le menu contextuel uBlock disponible. |
|
|
| `showIconBadge` | `true` | Affiche le badge de compteur sur l'icone. |
|
|
|
|
## Firefox navigateur par defaut
|
|
|
|
Windows ne permet pas de forcer proprement le navigateur par defaut en modifiant
|
|
simplement le registre utilisateur. Le script utilise donc la methode
|
|
administrateur standard :
|
|
|
|
1. lire les ProgID Firefox dans le registre ;
|
|
2. generer un XML `DefaultAssociations` ;
|
|
3. definir la policy `DefaultAssociationsConfiguration` ;
|
|
4. importer le XML avec DISM pour les futurs profils.
|
|
|
|
Les associations configurees sont :
|
|
|
|
| Identifiant | Application |
|
|
| --- | --- |
|
|
| `.htm` | Firefox |
|
|
| `.html` | Firefox |
|
|
| `http` | Firefox |
|
|
| `https` | Firefox |
|
|
|
|
## Verification
|
|
|
|
Pour verifier les policies Firefox :
|
|
|
|
1. ouvre Firefox ;
|
|
2. va sur `about:policies` ;
|
|
3. verifie l'onglet `Active`.
|
|
|
|
Si uBlock Origin n'apparait pas, commence par verifier `about:policies`. Si
|
|
`ExtensionSettings` n'est pas visible dans les policies actives, Firefox ne lit
|
|
pas le fichier `policies.json` attendu. Dans ce cas, verifie que le fichier est
|
|
present dans le dossier `distribution` du Firefox reellement lance.
|
|
|
|
Pour verifier uBlock Origin :
|
|
|
|
1. ouvre Firefox avec un nouveau profil utilisateur Windows ;
|
|
2. va sur `about:addons` ;
|
|
3. verifie que uBlock Origin est present ;
|
|
4. ouvre le tableau de bord uBlock Origin ;
|
|
5. verifie que les listes de filtres attendues sont selectionnees.
|
|
|
|
Pour verifier les associations Windows :
|
|
|
|
```powershell
|
|
dism.exe /Online /Get-DefaultAppAssociations
|
|
```
|
|
|
|
## Limites
|
|
|
|
Les associations importees par DISM ciblent les futurs profils Windows. Un profil
|
|
deja cree peut conserver ses associations existantes.
|
|
|
|
Le script installe Firefox ESR avec winget avant de lire les ProgID Firefox. Si
|
|
winget echoue ou si Firefox ne s'enregistre pas correctement, les associations
|
|
par defaut ne peuvent pas etre importees.
|
|
|
|
uBlock Origin est telecharge par Firefox depuis Mozilla Add-ons au demarrage. La
|
|
machine doit donc avoir acces a `addons.mozilla.org`.
|
|
|
|
## Sources
|
|
|
|
- Mozilla Firefox policies : <https://firefox-admin-docs.mozilla.org/guides/policies-configuration/>
|
|
- Mozilla `ExtensionSettings` : <https://firefox-admin-docs.mozilla.org/reference/policies/extensionsettings/>
|
|
- Mozilla `3rdparty` policies : <https://firefox-admin-docs.mozilla.org/reference/policies/3rdparty/>
|
|
- Mozilla Firefox default browser enterprise : <https://support.mozilla.org/en-US/kb/make-firefox-enterprise-default-browser>
|
|
- Microsoft DISM default app associations : <https://learn.microsoft.com/windows-hardware/manufacture/desktop/dism-default-application-association-servicing-command-line-options>
|