Pagina 1 di 1

PowerShell Remoting

Inviato: 07/07/2024, 21:21
da FrancyDotNet
PowerShell Remoting è una funzionalità potente che consente di eseguire comandi su computer remoti all'interno di una rete. In questo articolo, vedremo alcuni esempi pratici di script PowerShell per utilizzare PowerShell Remoting e gestire computer remoti.

:arrowright: 1. Abilitare PowerShell Remoting

Prima di poter utilizzare PowerShell Remoting, è necessario abilitarlo sui computer remoti. Ecco come abilitare PowerShell Remoting.

Codice: Seleziona tutto

# Abilita PowerShell Remoting
Enable-PSRemoting -Force

# Configura il firewall per consentire il traffico PowerShell Remoting
Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any -Action Allow

Write-Output "PowerShell Remoting abilitato."
:arrowright: 2. Eseguire Comandi Remoti su un Singolo Computer

Questo script esegue un comando remoto su un singolo computer specificato.

Codice: Seleziona tutto

# Specifica il nome del computer remoto e le credenziali
$remoteComputer = "NomeComputerRemoto"
$cred = Get-Credential

# Esegui un comando remoto
Invoke-Command -ComputerName $remoteComputer -Credential $cred -ScriptBlock {
    # Comando da eseguire sul computer remoto
    Get-Process
}

Write-Output "Comando remoto eseguito su $remoteComputer."
:arrowright: 3. Eseguire Comandi Remoti su Più Computer

Questo script esegue un comando remoto su più computer specificati.

Codice: Seleziona tutto

# Specifica i nomi dei computer remoti e le credenziali
$remoteComputers = @("NomeComputerRemoto1", "NomeComputerRemoto2", "NomeComputerRemoto3")
$cred = Get-Credential

# Esegui un comando remoto su ciascun computer
Invoke-Command -ComputerName $remoteComputers -Credential $cred -ScriptBlock {
    # Comando da eseguire sui computer remoti
    Get-Service
}

Write-Output "Comando remoto eseguito su tutti i computer specificati."
:arrowright: 4. Copiare File su un Computer Remoto

Questo script copia un file dal computer locale a un computer remoto.

Codice: Seleziona tutto

# Specifica il nome del computer remoto, le credenziali, e i percorsi del file
$remoteComputer = "NomeComputerRemoto"
$cred = Get-Credential
$localFilePath = "C:\Percorso\Del\File.txt"
$remoteFilePath = "C:\Percorso\Remoto\File.txt"

# Copia il file sul computer remoto
Copy-Item -Path $localFilePath -Destination "\\$remoteComputer\C$\Percorso\Remoto\" -Credential $cred

Write-Output "File copiato su $remoteComputer."
:arrowright: 5. Ottenere Informazioni sul Sistema Remoto

Questo script raccoglie informazioni sul sistema di un computer remoto.

Codice: Seleziona tutto

# Specifica il nome del computer remoto e le credenziali
$remoteComputer = "NomeComputerRemoto"
$cred = Get-Credential

# Ottieni informazioni sul sistema remoto
Invoke-Command -ComputerName $remoteComputer -Credential $cred -ScriptBlock {
    Get-ComputerInfo
}

Write-Output "Informazioni sul sistema ottenute da $remoteComputer."
Assicurati di eseguire questi script con i permessi appropriati e di configurare correttamente i computer remoti per PowerShell Remoting. Puoi anche programmare l'esecuzione automatica di questi script utilizzando Task Scheduler su Windows.

Re: PowerShell Remoting

Inviato: 07/07/2024, 21:25
da FrancyDotNet
:geek: