Gli utenti Windows normalmente utilizzano il protocollo Desktop remoto per accedere in remoto ad altri dispositivi Windows. Poiché RDP offre un’interfaccia utente grafica (GUI) remota, è un metodo conveniente per l’accesso remoto. Tuttavia, offre funzionalità limitate, soprattutto se sei un amministratore di sistema. A tale scopo, alcune persone preferiscono utilizzare il file Protocollo Secure Socket Shell (SSH)..
SSH fornisce un’interfaccia della riga di comando a computer e server remoti e, quindi, un controllo più granulare su di essi. In precedenza, utilizzavamo app di terze parti come “PuTTY” e “MobaXterm” per sviluppare una connessione SSH con i dispositivi remoti. Microsoft ha tuttavia messo a disposizione un client SSH nativo di Windows che può essere utilizzato in alternativa.
OpenSSH per Windows è un componente aggiuntivo Feature on Demand (FoD) per il sistema operativo Windows. Ciò significa che sebbene sia gratuito, non è installato per impostazione predefinita e deve essere installato manualmente. Se lo installi, puoi utilizzare il protocollo SSH tramite la riga di comando nativa per accedere e controllare i computer remoti, a condizione che il tuo account utente disponga dei privilegi richiesti.
Questa guida ti mostrerà come installare e utilizzare OpenSSH per Windows. Funzioneranno sia su Windows 11 che su Windows 10 (versione 1809 e successive). Utilizzando questa guida, puoi installare sia il client OpenSSH che il server OpenSSH in pochi semplici passaggi.
Cos’è OpenSSH
IL Shell per socket sicuroO Guscio sicuro è un protocollo di rete che consente una connessione remota con un altro dispositivo in modo sicuro. SSH utilizza un modello client-server per comunicare con computer remoti e garantisce l’integrità dei dati attraverso la crittografia. Utilizza più livelli del modello di riferimento OSI per garantire che i dati comunicati tra i dispositivi siano sicuri.
Originariamente OpenSSH era uno strumento utilizzato per la connessione remota con altri dispositivi preinstallato nei sistemi operativi basati su Linux. Poiché si tratta di un’utilità open source, è stata modificata per altre piattaforme, incluso Windows. Microsoft ha ora reso disponibile “OpenSSH per Windows” che è possibile installare con un piccolo pacchetto di aggiornamento.
Prima di installare OpenSSH, il tuo sistema deve soddisfare alcuni requisiti.
Requisiti per OpenSSH per Windows
Prima di procedere con l’installazione del client o del server OpenSSH, è necessario assicurarsi che il PC soddisfi i prerequisiti, ovvero:
Per verificare la versione del sistema operativo, eseguire il comando seguente nella casella Esegui comando:
WinVer
Per verificare la versione di PowerShell, esegui il comando seguente in PowerShell:
$PSVersionTable.PSVersion
Per verificare se l’utente è un membro del gruppo Administrators, esegui il comando seguente in PowerShell. Se ritorna”True“, significa che sei un membro del gruppo Amministratore.
(New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent())).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
Dopo esserti assicurato che il tuo PC soddisfi questi requisiti, puoi continuare a installare OpenSSH Client, OpenSSH Server o entrambi.
Installa OpenSSH su Windows
Implementa i seguenti passaggi per installare OpenSSH sul tuo computer Windows per accedervi da remoto. Facoltativamente, puoi anche installare “OpenSSH Server” per accedere a questo dispositivo da un altro PC utilizzando il protocollo SSH.
- premi il Tasto Windows + i per aprire l’app Impostazioni.
- Clic Sistema.
- Vai a “Funzionalità Facoltative“. Apri la pagina delle impostazioni delle funzionalità opzionali
- Fare clic su “Funzionalità Facoltative“. Visualizza le funzionalità opzionali
- Cercare “OpenSSH“.
- Selezionare “Cliente OpenSSH” e facoltativamente “Server OpenSSH“, quindi fare clic su Avanti. Seleziona Client e server OpenSSH
- Clic Installa.
Dopo aver eseguito questi passaggi, OpenSSH Client (e Server) verranno installati sul tuo computer.
Nota: L’installazione di queste funzionalità può richiedere del tempo.
In alternativa ai passaggi precedenti, puoi anche eseguire il comando seguente in un’istanza di PowerShell con privilegi elevati per installare OpenSSH per Windows:
Get-WindowsCapability -Online | Where-Object Name -like 'OpenSSH*'
Questo comando installerà sia il client OpenSSH che il server OpenSSH.
Utilizzo del client OpenSSH per Windows
Una volta installato OpenSSH Client per Windows, puoi iniziare a utilizzarlo per connetterti con PC remoti sulla rete. Naturalmente, OpenSSH deve essere prima configurato sul PC remoto, il cui metodo è stato spiegato di seguito in questo post.
Innanzitutto, conferma che è stato installato correttamente eseguendo il seguente comando nel prompt dei comandi:
ssh
Una volta confermato, puoi accedere a un PC remoto sulla rete su cui è configurato SSH utilizzando questo comando:
ssh [Username]@[ServerName]
Nota: Potrebbero essere richieste le credenziali utente se ci si connette per la prima volta.
Tieni presente che il comando sopra tenterà di connettersi al dispositivo remoto utilizzando la porta predefinita, che è 22. Se desideri utilizzare una porta diversa, dovrai invece utilizzare questo comando:
ssh [Username]@[ServerName] -p [PortNumber]
Configurazione del server OpenSSH per Windows
Se hai installato OpenSSH Server sul tuo PC Windows, dovrai configurarlo prima di poterti connettere a questo PC utilizzando il protocollo SSH.
La configurazione del server OpenSSH può essere un po’ più complessa. È necessario assicurarsi che sia consentito attraverso il firewall e le porte appropriate. Pertanto, si tratta di pochi passaggi. Ecco cosa devi fare:
Innanzitutto, esegui il comando seguente in una PowerShell con privilegi elevati per eseguire “sshd“
<code>Set-Service -Name sshd -StartupType 'Automatic'</code>
Ora avvia il servizio con questo comando: Start-Service sshd
Ora utilizza il seguente comando per assicurarti che il server SSH sia in esecuzione e in attesa delle connessioni sulla porta 22:
<code>netstat -na| find ":22"</code>
Ora assicurati che Windows Defender Firewall consenta connessioni in entrata a Windows tramite la porta TCP 22 con questo comando:
<code>Get-NetFirewallRule -Name *OpenSSH-Server* |select Name, DisplayName, Description, Enabled</code>
Conferma le regole per la connessione al server SSH
[Conditional] Se trovi che la regola è mancante o disabilitata, esegui il comando seguente per creare una nuova regola in entrata:
<code>New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22</code>
Per modificare le regole predefinite per la connessione SSH, esegui il seguente comando in PowerShell che aprirà il rispettivo file OpenSSH nel Blocco note:
<code>start-process notepad C:Programdatasshsshd_config</code>
Apportare le modifiche necessarie al file per gestire le autorizzazioni, quindi salvare il file utilizzando il file CTRL+S tasti di scelta rapida. Ecco alcuni esempi di regole:
- Nega utente di dominio:
DenyUsers ittadministrator@192.168.10.10
- Consenti un gruppo di dominio:
AllowGroups ittsshadmins
- Consenti gruppi locali:
AllowGroups Administrators
Gestisci le autorizzazioni SSH
Dopo aver apportato le modifiche, esegui il comando seguente in PowerShell:
<code>restart-service sshd</code>
Dopo aver eseguito i passaggi precedenti, dovresti essere in grado di connetterti a questo PC utilizzando il protocollo SSH. A tale scopo, utilizzare il comando ssh [Username]@[ServerName]
come discusso sopra.
Conclusione
Con SSH non è necessario eseguire una lunga serie di operazioni per eseguire un compito semplice. Puoi invece accedervi con OpenSSH nativo di Windows e continuare a gestire il PC remoto utilizzando i comandi. Ciò rende OpenSSH per Windows un’eccellente utility per gli amministratori di rete e di sistema.