Rewrite README in French
This commit is contained in:
parent
e2fe868454
commit
6b55544443
1 changed files with 240 additions and 24 deletions
264
README.md
264
README.md
|
@ -1,31 +1,247 @@
|
||||||
Win10 privacy helper script
|
Clean Win10
|
||||||
==========================
|
===========
|
||||||
|
|
||||||
This Powershell script disable some anti-privacy Windows 10 features.
|
CleanW10 est un script powershell pour rendre Windows plus respectueux de la
|
||||||
I created this for my work needs.
|
vie privée de son|ses utilisateur(s) - Utilisatrice(s). Il réalise tout un tas
|
||||||
|
d'actions afin de désactiver, supprimer, modifier des composant du système et
|
||||||
|
applications tierces.
|
||||||
|
|
||||||
* redirect some Microsoft domain known to 0.0.0.0
|
Ce script est avant tout destiné aux utilisateurs avancés, il réalise beaucoup
|
||||||
* add firewall rules to block some Ms IP used to collect data
|
d'actions normalement réservées aux GPO (version pro et entreprise de Windows
|
||||||
* disable some Windows 10 features (Fax, MediaPlayer ...)
|
mais accessible) via la base de registre, ou autre (désactivation de
|
||||||
* disable somes services
|
services par exemple)
|
||||||
* disable most Modern Apps (because there are useless ...)
|
|
||||||
* disable some task
|
|
||||||
* write plenty of reg key to disable some features :
|
|
||||||
* advertising
|
|
||||||
* geolocation
|
|
||||||
* telemetry
|
|
||||||
* disable apps righs
|
|
||||||
* disable MS Account for login
|
|
||||||
* Onedrive
|
|
||||||
* (...)
|
|
||||||
|
|
||||||
### Warning!
|
# Actions réalisées
|
||||||
|
|
||||||
Do not use this script if you're logged with a MS Account on your
|
CleanW10 réalise beaucoup d'actions, en voici une liste non exhaustive :
|
||||||
Windows sesssion. Because this script disable MS Account, your account
|
|
||||||
may be blocked and you could not login again.
|
* Désinstallation d'applications universelles (ModernApp) pour l'utilisateur
|
||||||
|
et en version provisionnée. Attention, **Windows Store sera aussi supprimé**.
|
||||||
|
* Blocage d'applications dans le pare-feu Windows (explorer, Cortana,
|
||||||
|
Edge). Attention, **vous ne pourrez plus utiliser Edge**.
|
||||||
|
* Blocage d'adresse IP Microsoft connue pour récolter des données de
|
||||||
|
télémétrie. Attention, des IP utilisées pour **Skype et Outlook** seront
|
||||||
|
bloquées.
|
||||||
|
* Blocage de noms de domaine appartenant à Microsoft connus pour récolter des
|
||||||
|
données
|
||||||
|
* Désintallation de OneDrive
|
||||||
|
* Désactivation des comptes Microsoft. Attention, si vous utilisew des
|
||||||
|
comptes Microsoft sous Windows 10, **transformez-le en compte local AVANT de
|
||||||
|
lancer CleanW10**.
|
||||||
|
* Désactivation des droits pour les applications (caméra, localisation,
|
||||||
|
synchronisation des contacts / calendriers etc.)
|
||||||
|
* Désactivation des services relatifs aux données personnelles / de
|
||||||
|
télémétrie.
|
||||||
|
* Supression des tâches planifiées problématiques pour les données
|
||||||
|
personelles
|
||||||
|
|
||||||
|
# Lancer le CleanW10
|
||||||
|
|
||||||
|
Par défaut, Windows n'autorise pas l'execution de script powershell non signé
|
||||||
|
ou dont il ne connait pas la signature. Pour exécuter ce script, Il est donc
|
||||||
|
conseillé d'exécuter la commande suivante dans une fenêtre powershell en mode
|
||||||
|
administrateur :
|
||||||
|
|
||||||
|
```
|
||||||
|
Set-ExecutionPolicy unrestricted
|
||||||
|
```
|
||||||
|
|
||||||
|
Vous pouvez cependant lancer ``launcher.cmd`` en tant qu'administrateur.Il se
|
||||||
|
chargera de basculer la politique de sécurité relative à powershell, de lancer
|
||||||
|
CleanW10 puis de la remettre à son état initial.
|
||||||
|
|
||||||
|
## Options de la ligne de commande
|
||||||
|
|
||||||
|
voici les options du script en ligne de commande :
|
||||||
|
|
||||||
|
```
|
||||||
|
CleanW10.ps1 -module <path> -dir <path> -debug
|
||||||
|
```
|
||||||
|
|
||||||
|
### -module
|
||||||
|
|
||||||
|
Avec cette option vous pouvez executer un seul module. Le parametre est suivi
|
||||||
|
par le chemin complet du fichier module.
|
||||||
|
|
||||||
|
### -dir
|
||||||
|
|
||||||
|
Cette option donne le chemin complet vers le répertoire contenant les modules à
|
||||||
|
executer, par défaut ``./modules.d/``. Elle est imcompatible avec ``-module``
|
||||||
|
|
||||||
|
### -debug
|
||||||
|
|
||||||
|
Affiche des information de debug en plus des messages relatifs au script. Il y
|
||||||
|
en a très peu (pour le moment)
|
||||||
|
|
||||||
|
# Comment ça marche?
|
||||||
|
|
||||||
|
Le script fonctionne à partir de modules sous forme de fichiers écrits en JSON.
|
||||||
|
Un module contient un ensemble d'actions à réaliser ainsi que leurs paramètres.
|
||||||
|
Voici un exemple de fichier module :
|
||||||
|
|
||||||
|
```JSON
|
||||||
|
{
|
||||||
|
"name" : "Block Telemetry IPs",
|
||||||
|
"description" : "Block IPs relative to Microsoft telemery.",
|
||||||
|
"actions" :
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"_comment" : "Block telemetry IPS",
|
||||||
|
"action" : "FwBlockOutputIP",
|
||||||
|
"file" : "telemetry.txt"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"_comment" : "Block IP relative to Skype and Messenger",
|
||||||
|
"action" : "FwBlockOutputIP",
|
||||||
|
"file" : "skype-msn.txt"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Chaque module contient un nom (``name``), une description (``description``) et
|
||||||
|
une série d'actions à réaliser (``actions``).
|
||||||
|
|
||||||
|
uen action contient une action à réaliser (ici ``FwBlockOutputIP``),
|
||||||
|
éventuellement un commentaire (``_comment``) puis un ou plusieurs paramètre(s)
|
||||||
|
en fonction de l'action. Voici une liste des actions disponibles :
|
||||||
|
|
||||||
|
## Liste des actions
|
||||||
|
|
||||||
|
### BlockHost
|
||||||
|
|
||||||
|
Bloque un ou plusieurs nom(s) d'hôte via le fichier hosts, les paramètres de ce
|
||||||
|
module sont :
|
||||||
|
|
||||||
|
* ``host`` : nom d'hote à bloquer
|
||||||
|
* ``file`` : nom du fichier contenant une adresse IP par ligne pour un
|
||||||
|
traitement par lots. Voir la section [#fichiers-externes](fichiers)
|
||||||
|
* ``firewall`` [Booléen] : Bloque la ou les adresse(s) IP relative au nom
|
||||||
|
d'hôte par le module FwBlockOutputIP
|
||||||
|
|
||||||
|
Activer ce paramètre permet de bloquer par le firewall certains hôtes pour
|
||||||
|
lesquels Windows ne prends pas en compte le fichier hosts.
|
||||||
|
|
||||||
|
### FwBlockOutputIP
|
||||||
|
|
||||||
|
Bloque une ou plusieurs adresse(s) IP, les paramètres relatifs à ce module
|
||||||
|
sont :
|
||||||
|
|
||||||
|
* ``ip`` : adresse IP à bloquer
|
||||||
|
* ``file`` : nom du fichier contenant une adresse IP par ligne pour un
|
||||||
|
traitement par lot. Voir la section [#fichiers-externes](fichiers)
|
||||||
|
|
||||||
|
|
||||||
|
### FwBlockProgram
|
||||||
|
|
||||||
|
Bloque un ou plusieurs programme(s) dans le pare-feu, les paramètres relatifs à
|
||||||
|
ce module sont :
|
||||||
|
|
||||||
|
* ``name`` : ce paramètre est utilisé pour créer le nom de la règle du
|
||||||
|
pare-feu Windows - facultatif, utilise le chemin complet si absent
|
||||||
|
* ``path`` : chemin complet vers l'exécutable à bloquer.
|
||||||
|
* ``file`` : nom du fichier contenant un chemin par ligne pour un traitement
|
||||||
|
par lot. Voir la section [#fichiers-externes](fichiers)
|
||||||
|
|
||||||
|
|
||||||
### Licence
|
### AddRegKey
|
||||||
|
|
||||||
Do what you're want with it and feel fre to offer me a beer :)
|
Ajoute ou modifie une clé de registre. Si une clé concerne l'utilisateur
|
||||||
|
courant (HKCU) alors la clé sera ajoutée / modifiée pour tous les utilisateurs
|
||||||
|
mais aussi sur le gabarit de registre pour la création d'utilisateurs. Les
|
||||||
|
paramètres sont :
|
||||||
|
|
||||||
|
* ``path`` : chemin vers la clé
|
||||||
|
* ``key`` : la clé
|
||||||
|
* ``value`` : la nouvelle valeur - facultatif
|
||||||
|
* ``type`` : le type de valeur (DWord QWord, Multistring ...) - facutlatif,
|
||||||
|
DWord par défaut
|
||||||
|
|
||||||
|
### DelRegKey
|
||||||
|
|
||||||
|
Supprime une clé de registre, les mêmes actions que pour ``AddRegKey`` seront
|
||||||
|
réalisées si la clé concerne HKCU. Les paramètres sont :
|
||||||
|
* ``path`` : chemin vers la clé
|
||||||
|
* ``key`` : clé à supprimer.
|
||||||
|
|
||||||
|
### UninstallModernApp
|
||||||
|
|
||||||
|
Désintalle une ou plusiers application(s) universelle(s), les paramètres sont :
|
||||||
|
|
||||||
|
* ``name`` : nom de l'application à désintaller
|
||||||
|
* ``removeProvisionned`` [Booléen] : supprimer aussi des application
|
||||||
|
provisionnées (que le système réinstallera pour tout nouvel utilisateur créé)
|
||||||
|
* ``file`` : nom du fichier contenant un nom d' application par ligne pour un
|
||||||
|
traitement par lots. Voir la section [#fichiers-externes](fichiers)
|
||||||
|
|
||||||
|
### DisableService
|
||||||
|
|
||||||
|
Désactive un service, les paramètres sont :
|
||||||
|
|
||||||
|
* ``name`` : nom du service à désactiver
|
||||||
|
* ``userService`` [Booléen] : service est lancé en mode utilisateur. Pour
|
||||||
|
désactiver la création du service par utilisateur, la clé de registre
|
||||||
|
``userServiceFlag`` sera modifiée.
|
||||||
|
* ``file`` : nom du fichier contenant un nom de service par ligne pour un
|
||||||
|
traitement par lots. Voir la section [#fichiers-externes](fichiers)
|
||||||
|
|
||||||
|
### RemoveSchedukedTask
|
||||||
|
|
||||||
|
Désactive une tâche planifiés, les paramètres sont :
|
||||||
|
|
||||||
|
* ``name`` : nom de la tache planifiée
|
||||||
|
* ``path`` : chemin de la tache planifiée - facultatif
|
||||||
|
* ``file`` : nom du fichier contenant un nom de tâche par ligne pour un
|
||||||
|
traitement par lots. Voir la section [#fichiers-externes](fichiers)
|
||||||
|
|
||||||
|
## DisableFeature
|
||||||
|
|
||||||
|
Désactive une fonctionnalité de Windows (accessible via dism.exe) les paramètres
|
||||||
|
sont :
|
||||||
|
|
||||||
|
* ``name`` : nom de la fonctionnalité
|
||||||
|
* ``file`` : nom du fichier contenant un nom de fonctionnalité par ligne pour
|
||||||
|
un traitement par lot. Voir la section [#fichiers-externes](fichiers)
|
||||||
|
|
||||||
|
### KillProcess
|
||||||
|
|
||||||
|
Tue un processus, le paramètre est :
|
||||||
|
|
||||||
|
* ``name`` : nom du processus à tuer
|
||||||
|
|
||||||
|
### DelFile
|
||||||
|
|
||||||
|
Supprime un fichier / dossier, les parametres sont :
|
||||||
|
|
||||||
|
* ``path`` : chemin du fichier / dossier à supprimer
|
||||||
|
* ``recurse``[Booléen] : supprimmer de manière récursive. - facultatif
|
||||||
|
|
||||||
|
### ExecCommand
|
||||||
|
|
||||||
|
Executer un commande, les parametres sont :
|
||||||
|
|
||||||
|
* ``path`` : chemin vers l'exécutable. Celui-ci peut contenur des variables
|
||||||
|
d'environnement powershell comme par exemple ``"$env:systemroot\``, Si la
|
||||||
|
* ``arguments`` : liste des arguments
|
||||||
|
|
||||||
|
## Fichiers externes
|
||||||
|
|
||||||
|
Pour certaines actions il est possible de charger un fichier externe pour du
|
||||||
|
traitement par lots. Ce peut être le cas pour ``BlockHost`` par exemple. Il
|
||||||
|
faut alors renseigner le paramètre ``file`` dans l'action correspondante avec
|
||||||
|
le nom du fichier à charger, Celui-ci decra se trouver **obligatoirement** dans
|
||||||
|
un sous-dossier portant le même nom que le fichier module.
|
||||||
|
|
||||||
|
Prenom l'exemple du module FW_Hosts.conf, il contient l'action ``BlockHost``
|
||||||
|
avec commr paramètre ``file`` hosts.txt, voici donc l'arborescence obtenue :
|
||||||
|
|
||||||
|
```
|
||||||
|
modules.d\FW_Hosts\hosts.txt
|
||||||
|
modules.d\FW_Hosts.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
# Licence
|
||||||
|
|
||||||
|
Ce script est disponible sous licence Beeware : utilisez, copiez, modifiez,
|
||||||
|
redistribuez comme ça vous chante. Et offrez-moi une bière si l'on se recontre
|
||||||
|
un de ces 4 (et si ça vous chante).
|
||||||
|
|
Reference in a new issue