PROJET AUTOBLOG


IT-Connect

Site original : IT-Connect

⇐ retour index

Linux : comment modifier la crontab d’un autre utilisateur ?

vendredi 3 décembre 2021 à 10:00

I. Présentation

Dans ce tutoriel, nous allons voir comment modifier la crontab d'un autre utilisateur sous Linux. En effet, il n'est pas rare d'utiliser un compte spécifique pour exécuter certaines tâches, et pas forcément le compte avec lequel on est connecté.

Cet article sera très court, car il s'agit plutôt d'un pense-bête quant à l'utilisation de cette commande très simple, mais qui parfois peut nous sortir de la tête (comme d'autres).

Pour ma part, je me trouve sous Debian 11, mais cela fonctionne pareil sur les autres versions et systèmes.

II. Procédure

Cette opération nécessite les droits de super-utilisateur ou d'utiliser "sudo". Pour ma part, je vais préfixer la commande par sudo car je ne suis pas connecté en tant que root. Dans l'idée, nous devons utiliser la commande crontab avec deux options : "-e" pour indiquer notre souhait d'éditer la crontab, puis "-u" pour spécifier l'utilisateur à qui supprimer la crontab.

Pour modifier la crontab de l'utilisateur "it-connect", on doit exécuter la commande suivante :

sudo crontab -e -u it-connect

Si vous oubliez de préciser "sudo" ou que vous n'êtes pas connecté en tant que root, la commande va renvoyer le message suivant :

must be privileged to use -u

Une fois que la crontab est ouverte, vous n'avez plus qu'à l'éditer et à sauvegarder vos modifications. Si vous avez besoin de la rouvrir par la suite, la commande reste la même.

Sachez qu'en regardant les logs du fichier "/var/log/syslog", vous pouvez voir quand a été modifiée la crontab :

sudo tail -f /var/log/syslog

Pour ma part, j'obtiens :

Nov 28 11:17:12 debian-11 crontab[210284]: (root) BEGIN EDIT (it-connect)
Nov 28 11:17:17 debian-11 crontab[210284]: (root) END EDIT (it-connect)

C'est tout pour cette fois-ci.

The post Linux : comment modifier la crontab d’un autre utilisateur ? first appeared on IT-Connect.

Nouvelle campagne de phishing Omicron : obtenez un test PCR gratuit !

vendredi 3 décembre 2021 à 08:21

Le nouvel ennemi public numéro 1, alias Omicron, a visiblement donné des idées aux pirates puisqu'une nouvelle campagne de phishing essaie de tromper les utilisateurs en offrant la possibilité d'avoir un test PCR gratuit.

Le variant Omicron de la Covid-19 fait beaucoup parler de lui depuis la semaine dernière, et les pirates informatiques n'ont pas mis longtemps à réagir et à actualiser le contenu de leurs campagnes de phishing pour prendre en considération ce nouveau sujet tendance. Puisque même les personnes vaccinées pourraient être vulnérables à ce nouveau variant, utiliser l'Omicron comme sujet pour les campagnes de phishing devrait être une bonne idée.

La nouvelle campagne de phishing relayée par le magazine britannique Which montre deux modèles d'e-mails utilisés par les pirates. L'idée est de faire croire que cet e-mail provient des services de santé publics britanniques, à savoir le National Health Service (NHS). L'objectif est clair : en cliquant sur le lien contenu dans cet e-mail, vous pouvez obtenir un test PCR gratuit et ainsi contourner les restrictions. Pour essayer de gagner la confiance de l'utilisateur, l'adresse e-mail utilisée pour envoyer l'e-mail est "contact-nhs@nhscontact.com".

En cliquant sur le lien contenu dans l'e-mail, l'utilisateur est redirigé vers un faux site du NHS. Ensuite, il doit saisir son nom et prénom, sa date de naissance, son adresse e-mail, son numéro de téléphone et son adresse postale ! Une fois que c'est fait, il est tout de même demandé de payer 1.24£, soit 1.46€, pour couvrir les frais d'envoi des résultats du test PCR. En plus de récupérer de nombreuses informations personnelles, l'objectif est de récupérer les numéros de carte bancaire de la victime.

Pour les personnes qui habitent en France, cet e-mail n'a pas trop de sens, car il émane du NHS et en plus il est rédigé en anglais. Mais, il ne faut pas se voiler la face : ce type d'e-mail de phishing devrait finir par arriver en France, si ce n'est pas déjà fait.

Si vous avez connaissance d'une campagne de phishing dans le même esprit que celle-ci, n'hésitez pas à partager l'information avec un commentaire.

Source

The post Nouvelle campagne de phishing Omicron : obtenez un test PCR gratuit ! first appeared on IT-Connect.

Les serveurs proxy et reverse proxy pour les débutants

jeudi 2 décembre 2021 à 17:00

I. Présentation

Dans ce tutoriel, nous allons aborder les notions de proxy et reverse proxy de manière théorique, car ce sont deux notions très importantes en informatique.

Les notions de proxy et reverse proxy sont très proches, c'est pour cette raison que les deux seront présentés dans le même article, mais aussi parce qu'il est indispensable de connaître ces deux approches.

II. C'est quoi un proxy ?

Un serveur proxy, appelé également serveur mandataire, est un serveur qui jouera le rôle d'intermédiaire entre un client et un serveur distant. Par exemple, entre les ordinateurs connectés au réseau local d'une entreprise et Internet (et ses milliards de sites).

Jouer le rôle d'intermédiaire entre deux hôtes, c'est-à-dire ? Dans quel but ? En se positionnant entre le client source et le serveur cible, le serveur proxy va pouvoir réaliser plusieurs actions :

Prenons un exemple pratique : un poste de travail est configuré pour utiliser un proxy et l'utilisateur souhaite accéder au site "www.it-connect.fr". Le poste de travail va demander au serveur proxy de récupérer la page du site "www.it-connect.fr", alors le proxy va se connecter au site "www.it-connect.fr" et retourner la page Web au poste client. D'un point de vue du serveur qui héberge le site "www.it-connect.fr", on verra seulement le serveur proxy et on ignore la présence du poste de travail.

En quelques mots, on peut dire que le poste client demande au proxy d'aller récupérer le contenu de la page web à sa place et de lui retourner le résultat. Les serveurs proxy sont très souvent utilisés pour la navigation Internet, il agit donc sur les protocoles HTTP et HTTPS, mais on peut rencontre d'autres types de proxy (exemple : Proxy SOCKS pour faire du SSH).

A. Proxy et proxy transparent

En entreprise, il est très fréquent d'utiliser un serveur proxy et bien souvent il est là pour réaliser du filtrage Web afin de sécuriser la navigation Internet des utilisateurs, notamment dans les établissements scolaires. Par exemple, on va empêcher les utilisateurs d'accéder aux sites pornographiques.

Il y a deux manières d'intégrer un proxy :

Le proxy doit être déclaré sur le poste client afin que ce dernier soit configuré de manière à passer par le proxy lorsqu'une requête est envoyée, plutôt que de contacter directement l'hôte distant. Si le serveur proxy n'est pas configuré sur le poste client, alors la requête sera envoyée directement au serveur distant, comme si le serveur proxy n'existait pas.

Il y a plusieurs façons d'intégrer un serveur proxy dans une infrastructure. Cela peut être en DMZ, comme ça les postes clients contactent le serveur proxy isolé, et c'est ce serveur qui se connecte à Internet, et non les postes clients directement. Dans certains cas, la fonction de proxy est assurée directement par le pare-feu et donc dans ce cas, il n'y a pas la notion de DMZ (voir second schéma).

Schéma Proxy

Lors de l'utilisation d'un proxy transparent, appelé aussi proxy implicite, le proxy ne doit pas être configuré sur le poste et ce dernier l'utilisera sans s'en rendre compte, car le proxy sera utilisé comme passerelle au niveau de la configuration du poste client. C'est la configuration idéale pour filtrer le trafic émis par les postes clients.

Dans ce cas, la fonction de pare-feu et de serveur proxy transparent sont généralement regroupée sur un même serveur/équipement. Même si l'on pourrait mettre le serveur proxy transparent sous le pare-feu, et que les trames soient relayées entre le proxy et le pare-feu.

Schéma Proxy Transparent

B. Comment configurer un proxy sur un poste de travail ?

Sur un poste client, il y a plusieurs manières de configurer un proxy. Tout d'abord, il faut savoir qu'un proxy peut se configurer au niveau de chaque logiciel, sous réserve que le logiciel prenne en charge l'utilisation d'un proxy.

Sous Windows, le fait de configurer un proxy dans les "Options Internet" de la machine va permettre d'utiliser ce proxy dans d'autres logiciels qui vont venir se référer à cette configuration. Néanmoins, certains logiciels comme Firefox intègrent leur propre gestion du proxy (même si par défaut il va utiliser la configuration du système), ce qui peut permettre d'outrepasser la configuration du système.

Sur Windows 11, pour configurer un proxy, il faut cliquer sur "Paramètres", "Réseau et Internet" puis "Proxy". Ensuite, il faudra cliquer sur "Configurer" au niveau de l'option "Utiliser un serveur proxy" et il ne restera plus qu'à renseigner l'adresse du proxy.

Configurer proxy Windows 11
Configuration d'un proxy sur Windows 11

Dans Firefox, au sein des options, il faut cliquer sur l'onglet "Général" à gauche et tout en bas, au niveau de "Paramètres réseau", cliquer sur "Paramètres". La fenêtre "Paramètres de connexion" s'affiche et là on peut définir plusieurs proxy.

Configuration d'un proxy dans Firefox
Configuration d'un proxy dans Firefox

Vous allez me dire, comment configurer le proxy sur un parc informatique complet sans effectuer la configuration à la main... Dans ce cas, vous avez plusieurs solutions :

C. Quels logiciels pour mettre en place un proxy ?

Pour mettre en place un serveur Proxy, il existe de nombreuses solutions. Certaines sont gratuites, d'autres sont payantes. Lorsque l'on parle de serveur proxy, j'ai un nom qui me vient en tête directement : Squid.

Squid est un logiciel qui permet de monter un proxy (et même un reverse proxy) sous Linux, il est performant et très célèbre. Il est toujours maintenu aujourd'hui et sa première version date de juillet 1996 ! Si vous montez un pare-feu avec PfSense, il est possible d'installer le paquet "Squid" pour ajouter la fonctionnalité de proxy à son pare-feu. En complément, l'installation du paquet "Squid-Guard" permettra d'effectuer du filtrage Web.

Au niveau des solutions payantes, il y a deux solutions assez connues : Olfeo et UCOPIA.

D. Le proxy est la notion d'anonymat

Je souhaitais revenir un peu plus en détail sur la notion d'anonymat lorsque l'on utilise un serveur proxy. Certes, en utilisant un serveur proxy il est possible d'être anonyme vis-à-vis du site que l'on visite, mais il faut savoir que le proxy va garder une trace de toutes les requêtes que vous lui envoyez. Autrement dit, il connaîtra tout votre historique de navigation. Pour être réellement anonyme sur Internet, la meilleure méthode consiste à utiliser un VPN.

E. Proxy de mise en cache

Un proxy de mise en cache, appelé "proxy-cache", effectue la mise en cache des données sur son disque local. Dans certains cas, on peut utiliser un proxy de mise en cache pour distribuer des mises à jour de logiciels : le proxy va télécharger une fois la mise à jour sur Internet et la mettre en cache, et ensuite il n'aura plus qu'à la distribuer aux postes clients directement, plutôt que chaque poste client se connecte sur Internet pour télécharger la mise à jour. Par exemple, l'éditeur ESET propose une fonctionnalité de mise en cache pour distribuer les mises à jour des signatures antivirus.

Il est à noter que cette mise en cache peut également être bénéfique dans le cadre de la navigation Internet.

F. Port utilisé par un serveur proxy

Il n'y a pas de port associé obligatoirement aux serveurs proxy, car ce n'est pas un protocole en soi. Malgré tout, il y a deux ports que l'on voit très souvent : 3128 et 8080. Pourquoi ? Tout simplement parce que le port 3128 est utilisé par défaut par Squid, et la popularité de ce logiciel fait que l'on associe souvent le port 3128 à la notion de proxy. Un autre numéro de port que l'on rencontre souvent est le 8080.

Néanmoins, rien ne vous empêche de monter un proxy et d'utiliser le port 80 comme port d'écoute.

G. Contourner les restrictions avec un proxy

Grâce à un proxy, on va pouvoir contourner les restrictions, que ce soit les restrictions géographiques ou les restrictions appliquées au sein d'un réseau local de votre entreprise (par un pare-feu, par exemple).

Prenons un exemple, vous avez besoin d'accéder au site "domaine.xyz" mais vous ne pouvez pas, car le pare-feu en sortie de votre réseau bloque l'accès à ce site. Comme le montre le schéma ci-dessous, la requête est bloquée par le pare-feu.

Pour contourner cette restriction, vous pouvez vous appuyer sur un proxy externe situé sur Internet. De cette façon, votre PC va demander au proxy d'accéder au site "domaine.xyz" et le proxy va vous retourner le résultat. La requête n'est pas bloquée, car vous contactez le proxy et non pas le site en direct. On obtient le schéma suivant :

Attention, je dis que la requête n'est pas bloquée par le pare-feu si l'on passe par un proxy, mais cela dépend de la configuration du pare-feu, et éventuellement du proxy :

Si vous êtes motivé, vous pouvez toujours monter votre propre proxy sur le port 80 (http) ou 443 (https) afin de l'utiliser comme rebond.

III. C'est quoi un reverse proxy ?

À l'inverse du proxy, le reverse proxy comme son nom l'indique fonctionne à l'inverse, c'est-à-dire qu'il permet aux utilisateurs externes d'accéder à une ressource du réseau interne. Lorsque vous accédez à une ressource protégée par un reverse proxy, vous contactez le reverse proxy et c'est lui qui gère la requête, c'est-à-dire qu'il va contacter le serveur cible à votre place et vous retourner la réponse. Le client n'a pas de visibilité sur le ou les serveurs cachés derrière le reverse proxy. Le reverse proxy agit comme une barrière de protection vis-à-vis des serveurs du réseau interne, et il va permettre de publier la ressource de façon sécurisée.

Un cas d'usage courant, c'est d'avoir plusieurs serveurs Web derrière un reverse proxy. Ce dernier va pouvoir répartir la charge entre les différents serveurs Web et en cas de panne d'un serveur Web, vous ne verrez pas la différence, car le reverse proxy orientera les requêtes en conséquence. Si l'on schématise une infrastructure Web qui s'appuie sur un reverse proxy intégré au pare-feu, on obtient :

Schéma Reverse Proxy

Si le serveur reverse proxy est un serveur à part entière, on va venir le positionner en DMZ, et dans ce cas, les serveurs Web peuvent être connectés au réseau local. Les flux provenant de l'extérieur, c'est-à-dire des postes clients qui veulent se connecter au site Web, continuent d'arriver sur le reverse proxy qui sert d'intermédiaire.

Comme dans le cas d'un proxy, le reverse proxy va pouvoir mettre en cache certaines ressources afin de soulager les serveurs Web, mais aussi pour améliorer les performances du site grâce à la compression des données. Par exemple, le reverse proxy va pouvoir mettre en cache des ressources statiques comme les scripts JavaScript.

Si l'on fait un parallèle avec le casino et les jeux de table, on peut dire que le croupier (le reverse proxy) distribue les cartes (les connexions) aux joueurs (aux serveurs) autour de la table (du réseau local) qui participent à la partie. Merci Geoffrey pour cette idée d'analogie. 😉

A. L'en-tête HTTP et le champ "X-Forwarded-For"

Le proxy peut configurer l'en-tête "X-Forwarded-For" pour ajouter à l'en-tête des requêtes HTTP l'adresse IP du client d'origine. De cette façon, le serveur qui reçoit la requête du reverse proxy pourra tracer le client d'origine malgré tout puisque le reverse proxy lui communique l'information.

Cette notion est importante d'un point de vue de la sécurité, notamment si elle est gérée sur le serveur Web directement : on pourra bloquer uniquement ce client s'il effectue une attaque brute force sur notre serveur Web, plutôt que de bloquer le reverse proxy, ce qui serait forcément problématique.

B. Quels logiciels pour mettre en place un reverse proxy ?

Pour mettre en œuvre un reverse proxy, il existe plusieurs solutions open source très connues, comme Apache et son module mod_proxy, mais aussi Nginx. Pour rappel, Apache et Nginx sont également très utilisés en tant que serveur Web. Le serveur Web de chez Microsoft, inclus à Windows et nommé IIS dispose aussi d'un module lui permettant de jouer le rôle de reverse proxy. Il existe également le logiciel HAProxy qui est aussi gratuit et open source.

Sans oublier Squid, que l'on peut utiliser comme proxy puisque je l'ai déjà cité précédemment, mais aussi en tant que reverse proxy Squid. Si vous installez un pare-feu PfSense, vous pouvez lui ajouter la fonction de reverse proxy grâce au paquet Squid.

The post Les serveurs proxy et reverse proxy pour les débutants first appeared on IT-Connect.

Emotet se propage sous la forme d’un paquet d’installation Adobe PDF

jeudi 2 décembre 2021 à 07:46

Le malware Emote se propage actuellement sous la forme d'un package d'installation Windows permettant d'installer la liseuse de PDF Adobe.

Emotet est un botnet/malware très connu, car il est très répandu, et en début d'année 2021, on apprenait qu'Europol avait pris le contrôle de l'infrastructure d'Emotet et que la police avait pu démanteler le réseau. Sauf qu'il y a deux semaines environ, Emotet est de nouveau entré en activité, dans une nouvelle version !

Pour être distribué, il s'appuie principalement sur deux méthodes : les e-mails d'hameçonnage et les pièces jointes malveillantes. Dès lors qu'il est en place sur un ordinateur, il va récupérer des adresses e-mails dans la boite aux lettres de la victime pour diffuser des e-mails malveillants et chercher à se propager toujours un peu plus. Quant à l'ordinateur déjà compromis, il y a de fortes chances pour qu'un ransomware soit exécuté en guise de charge utile. Cela peut-être TrickBot ou Qbot.

L'e-mail envoyé par Emotet n'est pas le premier d'une conversation. Au contraire, le malware reprend l'une de vos conversations existantes avec l'un de vos contacts et essaie de la poursuivre, en incitant le destinataire à cliquer sur un lien. En cliquant sur le lien, on se retrouve sur une fausse page Google Drive avec un bouton pour prévisualiser le document.

En vérité, le lien qui se cache sur ce document est particulier puisqu'il s'agit d'un lien "ms-appinstaller" où l'objectif est de charger un package d'installation hébergé sur Microsoft Azure. Par exemple, le lien peut-être "ms-appinstaller:?source=https://xxx.z13.web.core.windows.net/abcdefghi.appinstaller".

Si l'on cherche à installer le paquet, Windows demande une confirmation. Lorsque l'on regarde les informations, tout porte à croire que le paquet est sain et officiel, notamment parce que l'éditeur est "Adobe Inc" et qu'il y a l'icône de l'application. Malheureusement, ce n'est pas Adobe PDF qui est en cours d'installation, mais Emotet. En cas de validation, le malware sera téléchargé sur votre poste et une DLL sera stockée dans le dossier "temp" de votre profil utilisateur. En complément, elle sera stockée avec un nom aléatoire dans le répertoire AppData/Local du profil.

Une clé de Registre est ajoutée (dans "HKCU\Software\Microsoft\Windows\CurrentVersion\Run") de manière à exécuter automatiquement la DLL lorsque l'utilisateur ouvre sa session.

Emotet pourra ensuite agir sur votre machine, avec de fortes chances pour que cela se termine par l'exécution d'un ransomware...

Source

The post Emotet se propage sous la forme d’un paquet d’installation Adobe PDF first appeared on IT-Connect.

PowerShell et les variables d’environnement

mercredi 1 décembre 2021 à 10:00

I. Présentation

Dans ce tutoriel, nous allons voir comment manipuler les variables d'environnement sous Windows à l'aide de PowerShell et quelques commandes utiles.

Contrairement aux variables déclarées dans un script ou le temps d'une session PowerShell, les variables d'environnement sont enregistrées au niveau du système. Avant de passer à la pratique, je vous propose un rappel sur la notion de variables d'environnement.

II. C'est quoi une variable d'environnement ?

Une variable d'environnement est une variable dynamique et globale au sein d'un système d'exploitation. Les différents processus de la machine peuvent accéder à ces variables pour obtenir des informations sur la configuration actuelle du système, en l'occurrence Windows dans notre exemple. Les autres systèmes comme Linux et macOS utilisent des variables d'environnement aussi.

Sur Windows, on retrouve plusieurs dizaines de variables d'environnement, dont :

Ces variables d'environnement sont très utilisées par le système d'exploitation, mais aussi par les logiciels installés sur votre machine, et elles sont aussi très utiles dans les scripts. Le nom de l'ordinateur récupérable via "ComputerName", c'est très pratique.

Quand je dis que ces variables sont dynamiques, c'est que la valeur peut évoluer dans le temps, en fonction de la configuration matérielle de l'ordinateur, mais aussi de sa configuration et même de l'utilisateur connecté sur l'ordinateur.

Par exemple, si je me connecte avec l'utilisateur "florian" sur mon PC, la variable d'environnement "Username" aura la valeur "florian". Ensuite, si je me connecte avec l'utilisateur "it-connect", la variable "Username" prendra pour valeur "it-connect", etc.

III. Lister les variables d'environnement avec PowerShell

Ouvrez une console PowerShell ou Windows PowerShell car nous allons commencer à manipuler. Pour lister l'ensemble des variables d'environnement, on interroger le lecteur de variables d'environnement : Env:. Comme on le ferait pour lister le contenu d'un dossier, on va utiliser la commande Get-ChildItem, ce qui donne :

Get-ChildItem Env:

Comme vous pouvez le voir sur l'image ci-dessous, toutes les variables d'environnement sont affichées. Nous avons le nom et la valeur de chaque variable.

Get-ChildItem Env:
Get-ChildItem Env:

Avec l'alias de Get-ChildItem, ça fonctionne aussi et c'est plus court :

gci env:

Si l'on veut afficher la valeur d'une variable spécifique, on peut préciser son nom à la suite de "env:", comme ceci :

gci env:computername

Par exemple, la variable d'environnement PSModulePath nous donne les chemins vers les différents répertoires où PowerShell regarde pour charger ses modules.

gci env:psmodulepath

Cela retourne :

C:\Users\florian\Documents\WindowsPowerShell\Modules;C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules

Cette sortie n'est pas très lisible parce que tous les chemins sont sur la même ligne, pour préciser un chemin par ligne, on peut découper la chaîne en ciblant le caractère ";", comme ceci :

($env:PSModulePath).split(";")

IV. Utiliser une variable d'environnement dans un script PowerShell

Historiquement, lorsque l'on utilisait l'Invite de commandes et les commandes MS-DOS, pour consulter une variable d'environnement, il suffisant d'encadrer son nom avec le symbole "%". Par exemple :

%COMPUTERNAME%

Sauf qu'en PowerShell cette syntaxe ne fonctionne pas ; l'écriture est différente. Pour utiliser une variable d'environnement afin de récupérer sa valeur, on va utiliser cette syntaxe :

$env:<nom de la variable>

Par exemple pour le nom de l'ordinateur :

$env:COMPUTERNAME

Lors de l'exécution de cette commande, PowerShell va lire le contenu de la variable d'environnement et l'afficher dans la console. Le nom de l'ordinateur sera retourné.

Variable d'environnement COMPUTERNAME en PowerShell
Variable d'environnement COMPUTERNAME en PowerShell

De cette façon, on peut utiliser n'importe quel variable d'environnement dans un script PowerShell. Par exemple, pour afficher le nom de votre ordinateur, exécutez :

Write-Host "Le nom de mon ordinateur est $env:computername"

Il y a une variable qui est très utilisée, notamment par les logiciels, c'est la variable "USERPROFILE" car elle permet d'obtenir le chemin du profil de l'utilisateur actuel. Pour l'afficher le principe est le même que la précédente variable :

$env:USERPROFILE

J'en profite aussi pour vous préciser que vous pouvez écrire les noms de variable en majuscules ou minuscules, cela n'a pas d'importance.

V. Modifier une variable d'environnement avec PowerShell

Il est possible de modifier une variable temporairement, le temps d'un script par exemple. Pour cela, on peut utiliser Set-Item pour modifier la variable. Par exemple, pour ajouter le répertoire "C:\PS_MODULES" à la variable PSModulePath, on va utiliser cette commande :

Set-Item -Path Env:PSModulePath -Value ($Env:PSModulePath + ";C:\PS_MODULES")

Le caractère ";" devant le nom du chemin est important pour agir comme séparateur entre la valeur que l'on ajoute et la valeur précédente. Le fait d'utiliser "($Env:PSModulePath + ";C:\PS_MODULES")" permets de reprendre les valeurs actuelles et d'ajouter notre valeur.

Voici une autre syntaxe pour ajouter notre chemin supplémentaire :

$env:psmodulepath += ";C:\PS_MODULES"

Si l'on veut que la variable PSModulePath contienne seulement le dossier "C:\PS_MODULES", on doit faire :

Set-Item -Path Env:PSModulePath -Value "C:\PS_MODULES"

Tout cela n'est que temporaire et s'applique à la session PowerShell en cours. Si vous fermez la console et que vous la rouvrez, votre modification sera perdue !

Note : pour créer une variable d'environnement temporaire, on va utiliser la commande : New-Item -Path Env:itconnect -Value "www.it-connect.fr". La commande précédente permet de créer une variable nommée "itconnect" avec la valeur "www.it-connect.fr".

Pour modifier de façon persistante une variable d'environnement, il faut utiliser la class .NET "[System.Environment]" d'après la documentation. Cependant, cette méthode ne fonctionne pas du tout à chaque fois... Dommage. La modification est effectuée temporairement aussi.

Voici une commande pour ajouter le chemin "C:\PS_MODULES" à la variable d'environnement PATH.

[System.Environment]::SetEnvironmentVariable("Path",$Env:Path + ";C:\PS_MODULES")

Si vous connaissez une méthode fiable pour modifier une variable d'environnement de façon persistante, je suis preneur. Sinon, la meilleure méthode reste la modification via l'interface graphique.

The post PowerShell et les variables d’environnement first appeared on IT-Connect.