PowerShell

Ouvrir l’interpréteur PowerShell

Dans Cortana, taper powershell puis cliquer sur Windows Powsershell ISE.

_images/powershell-ISE.png

Fig. 71 Powershell Integrated Scripting Environment (ISE)

Créer un script

Dans le PowerShell ISE, cliquer sur le bouton Nouveau puis sur Enregistrer pour nommer le script. Un script PowerShell porte l’extension PS1.

Exécuter un script

Ouvrir le script dans le PowerShell ISE puis cliquer sur le bouton Exécuter le script ou appuyer sur F5.

Autoriser l’exécution des scripts

Set-ExecutionPolicy -ExecutionPolicy Bypass

L’autorisation est définitive et valable pour l’exécution de tous les scripts à partir de maintenant.

Liste des Cmdlets courantes

Table 7 Cmdlet courantes

Cmdlet

Rôle

Get-NetAdapter

Get-NetIPconfiguration

Get-NetIPAddress

Get-NetRoute

Get-DnsClientServerAddress

Get-Help

Restart-Computer

Configurer l’adresse IP 203.0.113.42/24 sur la carte réseau Ethernet 42

New-NetIPAddress –InterfaceAlias "Ethernet 42" –IPAddress 203.0.113.42 –PrefixLength 24

Déterminer l’identifiant (index) de la carte réseau Ethernet 42

Get-NetAdapter -Name "Ethernet 42"

Affiche :

Name          InterfaceDescription    ifIndex Status    MacAddress
----          --------------------    ------- ------    ----------
Ethernet 42   Intel(R) PRO/1000            12 Up        08-00-27-52-9B-E4

Dans cet exemple, l’index de la carte réseau est 12.

Configurer l’adresse du serveur DNS

Il faut d’abord déterminer l’identifiant (index) de la carte réseau utilisée.

Set-DNSClientServerAddress –interfaceIndex 12 –ServerAddresses ("203.0.113.42")

Créer l’utilisateur Malotru

$Password = Read-Host -AsSecureString
New-LocalUser "Malotru" -Password $Password

Ajouter l’utilisateur Malotru au groupe Officiers

Add-LocalGroupMember -Group "Officiers" -Member "Malotru"

Créer le dossier C:\Chevalier

New-Item "C:\Chevalier" -ItemType directory

Créer le fichier deepblue.txt dans le dossier C:\Chevalier

New-Item "C:\Chevalier\deepblue.txt" -ItemType file

Partager le dossier C:\Chevalier

New-SmbShare -name "Chevalier" -Path "C:\Chevalier"

Télécharger le fichier à l’URL http://dl.free.fr/oysxphiPd

$url = "http://dl.free.fr/oysxphiPd"
Invoke-WebRequest -Uri $url -UseBasicParsing -OutFile master.zip

Se déplacer dans le répertoire personnel d’un utilisateur

cd ~

Dézipper l’archive master.zip

Expand-Archive master.zip

Demander un nouveau bail DHCP

ipconfig /renew

Désactiver le proxy

netsh winhttp reset proxy

Activer la gestion à distance via PowerShell (WinRM)

Dans une CLI PowerShell avec les droits Administrateur :

Enable-PSRemoting -Force
Si l'activation s'est bien passée, le message suivant s'affiche :
WinRM a été mis à jour pour recevoir des demandes.
Le type du service WinRM a été correctement modifié.
Le service WinRM a démarré.

WinRM a été mis à jour pour la gestion à distance.
Exception de pare-feu WinRM activée.

Démarrer une session PowerShell sur PC-DE-MALOTRU, à partir de SRV-5

Enter-PSSession -ComputerName PC-DE-MALOTRU

La connexion tente de passer par le proxy, si ce dernier est configuré. Penser à le désactiver.

Avant la connexion, le prompt PowerShell ressemblait à :

PS C:\Users\[...]>

A présent il devient :

[PC-DE-MALOTRU]: PS C:\Users\[...]>

Toutes les commandes tapées seront exécutées sur PC-DE-MALOTRU et non pas sur l’ordinateur local.

Renommer un PC en PC-DE-MALOTRU

Rename-Computer -NewName "PC-DE-MALOTRU"

Installer le rôle AD-Domain-Services

Install-WindowsFeature -Name AD-Domain-Services –IncludeManagementTools

Créer le domaine heisenberg.org

Install-ADDSForest –DomainName "heisenberg.org"

Ajouter PC-MALOTRU dans le domaine heisenberg.org

Sur PC-MALOTRU :

Add-Computer -DomainName heisenberg.org -Credential Administrateur@heisenberg.org

Créer une OU Tijuana dans l’OU Mexico

# Créer l'OU Mexico dans le domaine heisenberg.org
New-ADOrganizationalUnit -Name "Mexico" -Path "DC=HEISENBERG,DC=org"

# Créer l'OU Tijuana dans l'OU Mexico
New-ADOrganizationalUnit -Name "Tijuana" -Path "OU=Mexico,DC=HEISENBERG,DC=org"

Créer l’utilisateur Tuco dans l’OU Tijuana

$pass = ConvertTo-SecureString -AsPlainText "VitryGTR2018" -Force

New-ADUser -Name "Tuco" -Path "OU=Tijuana,OU=Mexico,DC=HEISENBERG,DC=org" -AccountPassword $pass -PassThru | Enable-ADAccount