Mappare un'unità di rete su SSH (SSHFS) in Windows

Per montare il file system di un server remoto come unità di rete in Windows, è possibile utilizzare il protocollo sicuro SSH invece della tradizionale connessione SMB (Samba). Ciò è utile quando è necessario proteggere localmente l'accesso ai file su un server SSH remoto senza creare una connessione FTP (SFTP) separata. ILSSHFS-Winil client può essere utilizzato per montare file system remoti in Windows tramite SSH. Questo client consente di mappare in modo trasparente le directory remote utilizzando il protocollo SSHFS (basato su SSH File Transfer Protocol, SFTP).

Scarica manualmente il programma di installazione SSHFS-Win MSI o installalo utilizzando il gestore pacchetti WinGet integrato:

winget install SSHFS-Win.SSHFS-Win

Ora puoi montare una cartella remota come unità di rete direttamente dalla GUI di Esplora file di Windows. Fare clic con il tasto destro suQuesto PCe selezionaMappa unità di rete. Selezionare la lettera dell'unità da assegnare e il percorso UNC alla directory remota nel seguente formato:

\prefix\user@host[!PORT][\PATH]

Leggi anche:Come mappare l'unità di rete | WindowsServer2025

user– l'account utente utilizzato per l'autenticazione sull'host SSH remoto

host– nome host/indirizzo IP

Utilizzare uno dei seguenti valori come aprefisso:

  • sshfs– mappare la directory home dell'utente (la directory del profilo dell'utente su Windows). Inoltre, specificare il percorso relativo a qualsiasi directory nel profilo utente (dir di lavoro).
  • sshfs.r– montare la directory principale del computer remoto (per Windows si riferisce alla radice dell'unità di sistema).
  • sshfs.k– mappare la directory home dell'utente. La chiave SSH in %USERPROFILE%/.ssh/id_rsa viene utilizzata per l'autenticazione.
  • sshfs.kr– connettersi alla directory root con la chiave SSH

Ad esempio, per mappare il fileC:PSdirectory da un host Windows remoto con il server SSH abilitato, immettere il seguente percorso UNC

\sshfs.r[email protected]ps

Durante la connessione, ti verrà richiesto di inserire la password dell'utente remoto per l'autenticazione (puoi scegliere di salvare la password in Credential Manager)

Successivamente, in Esplora risorse verrà visualizzata un'unità di rete separata mappata tramite SSHFS.

È inoltre possibile mappare un'unità di rete dal prompt dei comandi utilizzando il fileutilizzo netto:

Il seguente comando monta il file/var/wwwdirectory da un host Linux come unità di rete Windows:

net use W: \sshfs.r[email protected]varwww /user:sysops

Mappare una directory da un host Windows remoto:

net use m: \sshfs.r[email protected]ps /user:administrator

Ti verrà richiesta la password dell'utente durante la connessione.

Un'unità di rete mappata in questo modo persiste solo fino al riavvio del computer. Aggiungi il/persistent:yesopzione al comando per riconnettere automaticamente l'unità quando l'utente accede.

Per mappare una condivisione remota senza dover inserire ogni volta la password dell'utente, puoi salvare le credenziali in Gestione credenziali di Windows

cmdkey /add:192.168.123.123 /user:admin /pass:Passw0rdd1

È possibile connettere più unità di rete contemporaneamente utilizzando il provider WinFsp.Np. Elenca le unità connesse:

net use

Elimina un'unità di rete mappata:

net use M: /delete

Nel comando net use è possibile specificare la password dell'utente in testo normale, ma è più sicuro montare la cartella remota utilizzando l'autenticazione con chiave SSH. Genera chiavi SSH su Windows utilizzando il filessh-keygen.exestrumento secondo il manuale al link (non specificare una passphrase per proteggere la chiave privata). Aggiungi la chiave pubblica dal file .pub al fileauthorized_keys(Oadministrators_authorized_keys) file sul server SSH remoto.

Per mappare automaticamente un'unità di rete su SSH utilizzando l'autenticazione con chiave all'accesso di Windows, puoi creare un'attività pianificata che esegue uno script PowerShell:

$remoteUser = "admin"
$remoteHost = "fs01.woshub.com"
$remoteDir = "Install"
$Drive = "M:"
$privSSHKey = "C:secretfs01-id_rsa"
cd 'C:Program FilesSSHFS-Winbin'
$mountcmd = ".sshfs-win.exe svc sshfs.k$remoteUser@$remoteHost$remoteDir $Drive -IdentityFile=$privSSHKey"
Invoke-Expression $mountcmd

È possibile utilizzare un client grafico per mappare una directory di rete tramite SSH. Il client più semplice e conveniente èSSHFS-Win-Manager. È possibile creare più connessioni SSHFS a file system remoti utilizzando il client SSHFS-Win-Manager. Supporta sia l'autenticazione basata su password che su chiave.

Related Posts