2012-04-20 16:02:59 +0000 2012-04-20 16:02:59 +0000
24
24

Come fare SCP dal server linux al client Windows

Sto SSHing in una macchina Linux usando PuTTY e cercando di copiare un file da qualche parte (ovunque) sulla mia macchina locale. Io figuro SCP è il miglior candidato per il lavoro, ma non me ne frega niente, basta che la soluzione funzioni!

I cd alla directory contenente il file che voglio (app.war) e digitare quanto segue:

scp app.war ./

Ho provato entrambi senza successo:

scp app.war ./C:/Users/myUser/
scp app.war ./Users/myUser/
``` &001 


Mi ha fatto pensare che forse SCP è uno strumento client/server e richiede un client sulla mia macchina Windows, che non c'è. 


Sto solo usando la sintassi sbagliata? O sono decisamente fuori strada? Se sì, quali opzioni ho a disposizione? Grazie in anticipo!

Risposte (6)

25
25
25
2012-04-20 16:12:55 +0000

per poter copiare i file sul vostro Windows è necessario che il demone/servizio SSH sia in esecuzione sul vostro Windows, è molto più facile usare questo strumento invece, ha la possibilità di importare sessioni da Putty, client molto semplice in avanti lo adorerete! WinSCP :: Free SFTP e FTP client gratuito per Windows

12
12
12
2012-04-20 16:10:01 +0000

Hai ragione. SSHD è il servizio server SSH che gira sull'host. Accetta connessioni da client SSH (come PuTTy), client SCP e client SFTP.

È possibile scaricare pscp dallo stesso sito web dove è ospitato PuTTY .

Dalla macchina windows, si esegue un comando simile a

pscp.exe someuser@somehost.com:/path/to/app.war c:\tmp

2
2
2
2015-07-27 11:19:07 +0000

Per SCP un file su una macchina Windows, è necessario un server SSH/SCP su Windows.

Non c'è il supporto SSH/SCP in Windows per impostazione predefinita. È possibile installare la build Microsoft di OpenSSH per Windows Releases and Downloads ). E’ disponibile come funzione opzionale su Windows 10 versione 1803 e successive. Può anche essere installato manualmente su versioni precedenti di Windows.

Ho preparato una guida per impostare SSH/SFTP server su Windows usando questa build Microsoft di OpenSSH .

Vedi anche IIS SFTP è supportato nativamente da Windows? (https://winscp.net/)


Anche se come SSH nel server Linux dalla macchina Windows, si può effettivamente scaricare un file dal server Linux al server Windows, invece di provare a caricare il file dal server Linux al server Windows.

Se si dispone di un accesso SSH da Windows a Linux, si ha anche un accesso SCP (o meglio ancora un accesso SFTP).

Utilizzare qualsiasi client SCP/SFTP disponibile.

Si può usare WinSCP SFTP/SCP client , che ha sia GUI che interfaccia a riga di comando .

Un'altra alternativa è PuTTY toolset, che include lo strumento a riga di comando [ pscp ]&003 con una sintassi simile al comando OpenSSH scp. Anche le ultime versioni di Windows 10 sono dotate di OpenSSH scp integrato e possono essere installate anche sulle versioni più vecchie.

(sono l'autore di WinSCP)

1
1
1
2019-05-17 03:57:39 +0000

Windows 10 ha ora OpenSSH integrato https://docs.microsoft. com/it-it-us/windows- server/amministrazione/openssh/openssh_install_firstuse

Richiedi un prompt dei comandi di amministrazione

Open PowerShell as an Administrator.

Controlla le versioni disponibili

Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'

Installa il client

Add-WindowsCapability -Online -Name OpenSSH.Client ~~~~ 0.0.1.0

Installa il server

Add-WindowsCapability -Online -Name OpenSSH.Server ~~~~ 0.0.1.0
``` ```
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'

Avvia il server e abilita all'avvio

ipconfig
``` ```
ifconfig

Trova il tuo indirizzo IP Windows

ssh-keygen.exe

Sulla tua macchina remota (Linux), trova il tuo indirizzo IP.

cat C:\Users\YOU/.ssh/id_rsa.pub | ssh USER@REMOTE_IP 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'

Creare una chiave pubblica SSH

ssh-keygen # if needed
cat ~/.ssh/id_rsa.pub | ssh USER@WINDOWS_IP 'mkdir -p ~/.ssh && type con >> C:/Users/YOU/.ssh/authorized_keys'
``` ```
Match User YOU
             AuthorizedKeysFile C:/Users/YOU/.ssh/authorized_keys

Copiare la chiave pubblica da una macchina locale (Windows) a una macchina remota (Linux) in modo da non dover digitare sempre una password.

Si noti che ssh-copy-id non è attualmente disponibile su Windows.

System Settings...Sign-in options
``` ```
scp FILE WINDOWS_IP:C:/Users/YOU/Desktop

Fai lo stesso sulla tua macchina Linux (Nota, ssh-copy-id non funziona)

&001 &001

  • Il metodo di cui sopra non ha funzionato per me, così ho finito per SCPare manualmente la chiave pubblica e incollarla nel file C:/Users/YOU/.ssh/authorized_keys.

  • Questo ancora non funzionava, così ho dovuto modificare il file sshd_config.

&001 &001

  • Riavviare

Creare una password su Windows se non ne avete già una

&001 &001

– Nota, è ancora possibile disattivare la schermata di login di Windows a) Impostando l'opzione ‘Richiedi accesso’ su mai e b) Utilizzando il comando ‘netplwiz’ e sbloccando la ‘Gli utenti devono inserire la password. …“.

Ora si dovrebbe essere in grado di SSH o SCP dalla propria macchina Linux

&001

1
1
1
2019-12-05 02:57:19 +0000

È possibile farlo utilizzando il sottosistema Linux Ubuntu per Windows (è necessario abilitarlo come funzionalità di Windows). Poi si può usare un client terminale Linux che gira su Windows, ottenendolo dal Microsoft Store (ad esempio Ubuntu 16.04 LTS). Poi, se avete impostato la sicurezza ssh su remote nella vostra macchina Linux, potete scp dal vostro terminale Ubuntu locale di Windows (quando avete effettuato il login come username che avete impostato per la vostra istanza Linux) qualcosa come questo:

scp -i ~/.ssh/my_rsa username@11.11.11.11:~/myfile ~/… inserite la passphrase RSA

Il file remoto sarà copiato nel vostro filesystem Ubuntu locale usato da Windows per esempio

C:\Users\my.username\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu16.04onWindows_79rhkp1fndgsc\LocalState\rootfs\home\my_linux_username

-1
-1
-1
2017-05-30 13:43:58 +0000

Passo 1: Scaricare pscp https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html (In base alla vostra macchina scaricate la rispettiva versione)

Passo 2: Familiarizzare con i comandi pscp Per farlo, aprite il prompt dei comandi nella vostra macchina Windows, andate nella directory dove avete scaricato pscp. exe e digitare “pscp”

Passo 3: Trasferire il file dalla macchina Linux alla macchina Windows aprire il prompt dei comandi, ed eseguire il seguente comando fornendo i propri dettagli:

pscp usernameofyourlinuxmachine@10.40.000.000:/path/of/your/File/nameofyourfile.txt ./

e questo comando trasferirà il file dalla macchina Linux alla directory corrente della macchina windows

Passo 4: Trasferisci il file dalla tua macchina Windows alla macchina Linux apri il tuo prompt dei comandi, ed esegui sotto il comando fornendo i tuoi dettagli:

pscp nameofyourfile.txt usernameofyourlinuxmachine@10.40.000.000:/path/where/youwantyourfile

Spero che questo sia chiaro e funzioni per tutti voi!