Markdown and syntax corrections
This commit is contained in:
parent
6b55544443
commit
d4e384be68
1 changed files with 82 additions and 80 deletions
162
README.md
162
README.md
|
@ -2,13 +2,13 @@ Clean Win10
|
|||
===========
|
||||
|
||||
CleanW10 est un script powershell pour rendre Windows plus respectueux de la
|
||||
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
|
||||
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.
|
||||
|
||||
Ce script est avant tout destiné aux utilisateurs avancés, il réalise beaucoup
|
||||
d'actions normalement réservées aux GPO (version pro et entreprise de Windows
|
||||
mais accessible) via la base de registre, ou autre (désactivation de
|
||||
Ce script est avant tout destiné aux utilisateurs avancés, il réalise beaucoup
|
||||
d'actions normalement réservées aux GPO (version pro et entreprise de Windows
|
||||
mais accessible) via la base de registre, ou autre (désactivation de
|
||||
services par exemple)
|
||||
|
||||
# Actions réalisées
|
||||
|
@ -17,42 +17,42 @@ CleanW10 réalise beaucoup d'actions, en voici une liste non exhaustive :
|
|||
|
||||
* 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,
|
||||
* 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
|
||||
* 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
|
||||
* 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
|
||||
* 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,
|
||||
* 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
|
||||
* 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
|
||||
* 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
|
||||
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
|
||||
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 :
|
||||
voici les options du script en ligne de commande :
|
||||
|
||||
```
|
||||
CleanW10.ps1 -module <path> -dir <path> -debug
|
||||
|
@ -60,30 +60,30 @@ CleanW10.ps1 -module <path> -dir <path> -debug
|
|||
|
||||
### -module
|
||||
|
||||
Avec cette option vous pouvez executer un seul module. Le parametre est suivi
|
||||
Avec cette option vous pouvez executer un seul module. Le paramètre est suivi
|
||||
par le chemin complet du fichier module.
|
||||
|
||||
### -dir
|
||||
|
||||
Cette option donne le chemin complet vers le répertoire contenant les modules à
|
||||
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
|
||||
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 :
|
||||
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" :
|
||||
"actions" :
|
||||
[
|
||||
{
|
||||
"_comment" : "Block telemetry IPS",
|
||||
|
@ -99,91 +99,93 @@ Voici un exemple de fichier module :
|
|||
}
|
||||
```
|
||||
|
||||
Chaque module contient un nom (``name``), une description (``description``) et
|
||||
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)
|
||||
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 :
|
||||
Bloque un ou plusieurs noms d'hôtes via le fichier hosts, les paramètres de
|
||||
cette action 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
|
||||
* ``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.
|
||||
|
||||
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
|
||||
Bloque une ou plusieurs adresse(s) IP, les paramètres relatifs à cette action
|
||||
sont :
|
||||
|
||||
|
||||
* ``ip`` : adresse IP à bloquer
|
||||
* ``file`` : nom du fichier contenant une adresse IP par ligne pour un
|
||||
* ``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
|
||||
### FwBlockProgram
|
||||
|
||||
Bloque un ou plusieurs programmes dans le pare-feu, les paramètres relatifs à
|
||||
cette action 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
|
||||
* ``file`` : nom du fichier contenant un chemin par ligne pour un traitement
|
||||
par lot. Voir la section [#fichiers-externes](fichiers)
|
||||
|
||||
|
||||
### AddRegKey
|
||||
|
||||
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
|
||||
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,
|
||||
* ``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
|
||||
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 :
|
||||
Désintalle une ou plusieurs applications universelles, les paramètres sont :
|
||||
|
||||
* ``name`` : nom de l'application à désintaller
|
||||
* ``removeProvisionned`` [Booléen] : supprimer aussi des application
|
||||
* ``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)
|
||||
* ``file`` : nom du fichier contenant un nom d' application par ligne pour un
|
||||
traitement par lots. Voir la section [fichiers externes](#fichiers-externes)
|
||||
|
||||
### DisableService
|
||||
|
||||
Désactive un service, les paramètres sont :
|
||||
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
|
||||
* ``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)
|
||||
* ``file`` : nom du fichier contenant un nom de service par ligne pour un
|
||||
traitement par lots. Voir la section [fichiers externes](#fichiers-externes)
|
||||
|
||||
|
||||
### RemoveSchedukedTask
|
||||
|
||||
|
@ -191,17 +193,17 @@ 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)
|
||||
* ``file`` : nom du fichier contenant un nom de tâche par ligne pour un
|
||||
traitement par lots. Voir la section [fichiers externes](#fichiers-externes)
|
||||
|
||||
## DisableFeature
|
||||
### DisableFeature
|
||||
|
||||
Désactive une fonctionnalité de Windows (accessible via dism.exe) les paramètres
|
||||
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)
|
||||
* ``file`` : nom du fichier contenant un nom de fonctionnalité par ligne pour
|
||||
un traitement par lot. Voir la section [fichiers externes](#fichiers-externes)
|
||||
|
||||
### KillProcess
|
||||
|
||||
|
@ -211,28 +213,28 @@ Tue un processus, le paramètre est :
|
|||
|
||||
### DelFile
|
||||
|
||||
Supprime un fichier / dossier, les parametres sont :
|
||||
Supprime un fichier / dossier, les paramètres sont :
|
||||
|
||||
* ``path`` : chemin du fichier / dossier à supprimer
|
||||
* ``recurse``[Booléen] : supprimmer de manière récursive. - facultatif
|
||||
|
||||
### ExecCommand
|
||||
|
||||
Executer un commande, les parametres sont :
|
||||
Executer un commande, les paramètres sont :
|
||||
|
||||
* ``path`` : chemin vers l'exécutable. Celui-ci peut contenur des variables
|
||||
d'environnement powershell comme par exemple ``"$env:systemroot\``, Si la
|
||||
* ``path`` : chemin vers l'exécutable. Celui-ci peut contenir 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
|
||||
Pour certaines actions il est possible de charger un fichier externe pour du
|
||||
traitement par lot. 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``
|
||||
Prenons l'exemple du module FW_Hosts.conf, il contient l'action ``BlockHost``
|
||||
avec commr paramètre ``file`` hosts.txt, voici donc l'arborescence obtenue :
|
||||
|
||||
```
|
||||
|
@ -242,6 +244,6 @@ 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
|
||||
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