¿Puedo transferir archivos usando SSH?

¿Puedo transferir archivos usando SSH?

estoy usandoMasillaen Windows 7 a SSH al laboratorio de computación de mi escuela. ¿Puedo transferir archivos desde mi máquina Windows a mi usuario en las máquinas de la escuela usando SSH?

Respuesta1

Utilice la herramienta PSCP desde la página de descarga de PuTTY:

http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

PSCP es la versión PuTTY de scp, que es un comando cp (copia) sobre ssh.

PSCP debe estar instalado en su computadora con Windows (recién descargado, en realidad, no hay ningún proceso de instalación. En la sección Archivos empaquetados, pscp.exe ya está incluido). No es necesario instalar nada en los servidores de la escuela. Tanto PSCP como scp usan ssh para conectarse.

Para responder a la pregunta de uso de los comentarios:

Para cargar desde su computadora a un servidor remoto:

c:\pscp c:\some\path\to\a\file.txt user@remote:\home\user\some\path

Esto cargará el archivo file.txt en el directorio especificado en el servidor. Si la parte final de la ruta de destino NO es un directorio, será el nuevo nombre del archivo. También puedes hacer esto para cargar el archivo con un nombre diferente:

c:\pscp c:\some\path\to\a\file.txt user@remote:\home\user\some\path\newname.txt

Para descargar un archivo desde un servidor remoto a su computadora:

c:\pscp user@remote:\home\user\some\file.txt c:\some\path\to\a\

o

c:\pscp user@remote:\home\user\some\file.txt c:\some\path\to\a\newfile.txt

o

c:\pscp user@remote:\home\user\some\file.txt .

Con un punto solitario al final. Esto descargará el archivo especificado al directorio actual.

Dado que el comentario está demasiado abajo, también debo señalar aquí que WinSCP existe y proporciona una GUI para todo esto, si es de interés:http://winscp.net/eng/download.php

Respuesta2

puedes usar Windows PowerShell (en realidad, es el comando OpenSSH, también se puede usar en cualquier sistema operativo UNIX):

scp -P <non-default target ssh port> "<source file>" <username>@<hostname/address>:<destination path>

-PEl indicador se puede omitir si ssh se abrió en el puerto predeterminado (22)

cambiar lugares de rutas locales y remotas para copiar archivos desde un host remoto

p.ej:

  • copiando el archivo "ps.key" vía ssh
  • El sistema operativo local es Windows 10.
  • la dirección remota es 192.168.88.242, ssh (demonio) funciona en el puerto 1688
  • el nombre de usuario remoto es "nick"

dominio:

local(ganar)->remoto(unix):

scp -P 1688 "D:\MEGA\ps.key" [email protected]:/home/nick/ps.key

remoto->local (copiar desde el host remoto):

scp -P 1688 [email protected]:/home/nick/ps.key "D:\MEGA\ps.key"

Después de esto, debe confirmar la huella digital de la clave de destino (si no se ha conectado a este host a través de PowerShell antes) y autenticarse en el host remoto (ingrese la contraseña de usuario o la contraseña de la clave ssh si no utiliza el agente ssh).

debería funcionar en win10 sin ninguna instalación, ya que OpenSSH está integrado allí

Respuesta3

Es posible que tengas que utilizar barras diagonales (/) para hablar con servidores LINUX/UNIX.

c:\pscp c:\some\path\to\a\file.txt user@remote:/home/user/some/path

Respuesta4

Puedes agrupar muchos archivos con tar:

tar -cz . | ssh me@school -- 'tar -C/path/to/target/dir -xz'

...lo que comprimiría y transmitiría recursivamente todos los archivos en el directorio actual de la máquina local a la ruta de destino y al mismo tiempo descomprimiría y expandiría la transmisión en la máquina remota.

Puedes hacer cosas similares para cualquier cosa que escriba en la salida estándar. cates una elección obvia:

cat ./localfile | ssh user@remote 'cat >./remotefile'

información relacionada