Archive

Archives pour la catégorie ‘Windows’

Récupérer la date sur un système distant

En deux lignes, voici comment contrôler l’heure et la date sur un serveur distant avec PowerShell.

$rtime = Get-WmiObject -Class Win32_OperatingSystem -ComputerName "ServerName"
Write-Host $rtime.ConvertToDateTime($rtime.LocalDateTime)

Categories: Windows Tags: ,

Remote Desktop Connection Manager

Remote Desktop Connection Manager est un des outils que je lance en premier sur mon PC. (Juste après Powershell)
Ce logiciel fournit par Microsoft va vous permettre d’organiser et de gérer vos connections TSE/RDP.
Vous pourrez organiser les connections par groupes, configurer des comptes par serveur.
Dans le cadre un parc de serveurs important, il devient indispensable.


RDCMan
Lien:Remote Desktop Connection Manager

Categories: Windows Tags: , , , ,

Exporter la langue des systèmes

Ce script permet d’exporter dans un fichier la liste des ordinateurs et serveurs d’une OU avec le login de l’utilisateur connecté et la langue du système d’exploitation.
Cela ne fonctionne que pour les ordinateurs et serveurs en ligne.

$fileres = ".\Export\FI00_Paris_Comp_Lang.csv"
$expfile = New-Item -ItemType file -Path $fileres -Force
Add-Content -Path $fileres -Value "Computer,LoggedUser,Language"
 
 
Get-QADComputer -SearchRoot "domain.local/FI00_Paris"| ForEach-Object {
 
if ( Test-Connection $_.name -count 1 -quiet)  {
$computer = $_.name
$lang = (Get-WmiObject Win32_OperatingSystem -ComputerName $computer -ErrorAction continue ).oslanguage
$switch = switch ($lang) `
{
1033 {"English"};
1036 {"French"};
default {"Unknown"}
}
$loginfo = Get-WmiObject -Computer $Computer -Class Win32_ComputerSystem
 
$present = Select-String -Path $fileres -Pattern $computer
 
Add-Content -Path $fileres -Value "$($computer),$($loginfo.UserName),$($switch)"
 
}
}

Récupérer à distance le numéro de série.

Cette commande permet de récupérer à distance le numéro de série d’un serveur ou ordinateur.

(Get-WmiObject -Class Win32_BIOS -NameSpace "root\CIMV2" -Computer "SRV001").SerialNumber

Lister les fichiers archivés.

Les travaux pratiques du jour:
Lister tous les fichiers qui sont archivés sur un serveur sans les désarchiver.
Les fichiers archivés on l’attribut « Offline ».
La commande suivant a eu pour effet de désarchiver tous les fichiers listés, donc il faut y aller avec des pincettes pour ne pas désarchiver tout le serveur d’un coup.

Get-ChildItem | fl

Voici les commande qui permet de lister les fichiers avec le chemin sans les agresser.

Get-ChildItem -Recurse | Where-Object { $_.Attributes -match "Offline" } | Select-Object  Name,Attributes,Fullname | Export-Csv -Path .\Exports\arhived_files.csv -Encoding unicode

Demain, nous verrons bien comment on va faire pour les désarchiver en douceur.

Categories: Windows Tags: , ,

Configurer la communauté SNMP.

Permet de configurer le service SNMP d’un serveur distant.
Ce script configure la communauté et les hosts autorisés.

$server = Read-Host "Please enter the server name"
		$MachineName = $server
		$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $MachineName)
		$regconf = $reg.OpenSubKey("SYSTEM\\CurrentControlSet\\Services\\SNMP\\Parameters",$true)
		$regconf.SetValue('EnableAuthenticationTraps','0','DWord')
		$regconf = $reg.OpenSubKey("SYSTEM\\CurrentControlSet\\Services\\SNMP\\Parameters\\PermittedManagers",$true)
		$regconf.SetValue('1','localhost','string')
		$regconf.SetValue('2','SV002859','string')
		Write-Host "Server: "$MachineName -ForegroundColor Green
		$regconf.GetValue('1')
		$regconf.GetValue('2')
 
		Write-Host "-------------------------------------" -ForegroundColor Green
		$regconft = $reg.OpenSubKey("SYSTEM\\CurrentControlSet\\Services\\SNMP\\Parameters\\ValidCommunities",$true)
		$regconft.SetValue('casimir','4','DWord')

Categories: Windows Tags: , , ,

Supprimer les anciens fichiers de logs.

Ce script supprime les fichiers de logs de plus de 30 jours.

$Now = Get-Date
$LastWrite = $Now.AddDays(-30)
$Files = get-childitem -Path ".\logs" -include *.log -recurse |Where {$_.LastWriteTime -le "$LastWrite"} 
foreach ($File in $Files){
if ($File) {
write-host "Deleting File '$File'"
Remove-Item $File | out-null
}
}

Categories: Windows Tags:

Gestion des ports TCP/UDP.

CurrPorts est un petit utilitaire très pratique pour visualiser les ports utilisés par votre ordinateur.
Il permet surtout de savoir qu’elle application utilise quels ports TCP ou UDP.
Et plein d’autres informations et actions.

Monitoring Ports TCP/UDP

Téléchargeable ici.

Categories: Windows Tags: , , , , ,

Modifier la base de registre à distance.

Voici comment modifier la base de registre d’un serveur à distance.

$servername = "SRV001"
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $servername)
$regconf = $reg.OpenSubKey("SYSTEM\\CurrentControlSet\\Services\\SNMP\\Parameters",$true)
#Ecriture de la valeur.
$regconf.SetValue('EnableAuthenticationTraps','0','DWord')
#Verification de la valeur.
$regconf.GetValue('EnableAuthenticationTraps')

Voici les différents types de valeurs.

Unknown
String
ExpandString
Binary
DWord
MultiString
QWord

Categories: Windows Tags: , ,

Récuperer à distance la version de Windows.

Permet de récupérer à distance la version de Windows.

Get-WmiObject Win32_OperatingSystem -ComputerName "server001" | Select-Object CSName,Caption,OtherTypeDescription,CSDVersion,Version

Categories: Windows Tags: