GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo utilizar los comandos y las opciones de SFTP

Introducción

SFTP (Protocolo de transferencia segura de archivos) es parte del protocolo SSH diseñado para transferir archivos de forma segura entre sistemas remotos. Permite a los usuarios ver, administrar y cambiar los permisos de archivos y directorios en sistemas remotos.

En este tutorial, repasaremos los comandos que puede usar con SFTP y brindaremos explicaciones, opciones y ejemplos para cada uno.

Requisitos previos

  • Acceso a un sistema local y a un servidor remoto, conectados mediante un par de claves públicas SSH.
  • Una conexión a Internet que funcione.
  • Acceso a la ventana de terminal.

Lista de opciones y comandos SFTP

SFTP permite a los usuarios transferir datos entre un servidor SFTP remoto y un sistema cliente local. SFTP usa el protocolo de red SSH para conectar dos sistemas que comparten una clave SSH pública.

Conectarse al servidor SFTP abre la interfaz de shell SFTP. La interfaz de shell SFTP admite los siguientes comandos:

Conexión a SFTP

La conexión a SFTP utiliza la misma sintaxis que la conexión a un sistema remoto con SSH:

sftp [username]@[remote hostname or IP address]

Por ejemplo, conectarse a un servidor con phoenixnap nombre de usuario en la dirección IP 192.168.100.7 :

sftp [email protected]

Si la conexión es exitosa, el shell se mueve a la interfaz SFTP, indicada por sftp> en lugar del nombre de usuario actual:

Cuando se conecte a un sistema remoto con SFTP, use las siguientes opciones con sftp comando para cambiar su comportamiento:

Comando Descripción
cd [path] Cambie el directorio en el servidor remoto a [path] .
lcd [path] Cambie el directorio en el sistema local a [path] .
chgrp [group ID] [path] Cambiar la propiedad del grupo a [group ID] para el archivo o carpeta ubicado en [path] .
chmod [mode] [path] Cambiar propiedad a [mode] para el archivo o carpeta ubicado en [path] .
chown [user ID] [path] Cambiar la propiedad del usuario a [user ID] para el archivo o carpeta ubicado en [path] .
help Muestra el texto de ayuda.
get [remote path] [local path] Transferir un archivo o directorio desde [remote path] en el servidor remoto a [local path] en el sistema local.
lls [options] [path] Muestra la lista del directorio ubicado en [path] sobre el sistema local. Utiliza el ls opciones de comando.
ln [old path] [new path] Crear un enlace simbólico desde [old path] a [new path] en el servidor remoto.
lmkdir [path] Cree un directorio en [path] en el sistema local.
lpwd Muestra el directorio local actual.
ls [options] [path] Muestra la lista del directorio ubicado en [path] en el servidor remoto. Utiliza el ls opciones de comando.
lumask [mask] Establezca la máscara de permisos locales en [mask] .
mkdir [path] Cree un directorio en [path] en el servidor remoto.
put [local path] [remote path] Transferir un archivo o directorio desde [local path] en el sistema local a [remote path] en el servidor remoto.
pwd Muestra el directorio remoto actual.
exit Salga de la interfaz SFTP.
exit Salga de la interfaz SFTP.
rename [old path] [new path] Cambiar el nombre de un archivo en el servidor remoto desde [old path] a [new path] .
rmdir [path] Eliminar un directorio ubicado en [path] en el servidor remoto.
rm [path] Eliminar un archivo ubicado en [path] en el servidor remoto.
symlink [old path] [new path] Crear un enlace simbólico desde [old path] a [new path] en el servidor remoto.
version Mostrar la versión actual de SFTP
![command] Ejecutar <strong>[command]</strong> en el shell local.
! Mover temporalmente al shell local.
? Muestra el texto de ayuda.

Usa el exit Comando para finalizar la conexión actual:

exit

Transferencia de archivos

Usa el get y put comandos para crear una solicitud de transferencia de archivos en SFTP. El get El comando transfiere los archivos desde un servidor remoto al sistema local, mientras que el comando put comando hace lo contrario.

El get El comando utiliza la siguiente sintaxis básica:

get [path to file]

Usando el get El comando transfiere un archivo desde el servidor remoto al Inicio del sistema local. directorio. Por ejemplo:

get example01.txt

Por otro lado, usando el put El comando transfiere un archivo del sistema local al Inicio del servidor remoto. directorio:

put example02.txt

Para transferir el archivo a un directorio diferente, agregue el nombre del directorio al final de get o put comando:

get [path to file] [path to directory]
put [path to file] [path to directory]

Para cambiar el nombre del archivo en el sistema local, agregue el nuevo nombre de archivo al final del comando:

get [path to file] [new file name]
put [path to file] [new file name]

El get y put los comandos utilizan las siguientes opciones:

Opción Descripción
-1 Utilice la versión 1 del protocolo SSH al conectarse.
-4 Usar solo direcciones IPv4.
-6 Usar solo direcciones IPv6.
-A Permite el reenvío del agente de autenticación SSH al servidor remoto.
-a Intente continuar las transferencias de archivos interrumpidas.
-B [buffer size] Establezca un tamaño de búfer personalizado (el valor predeterminado es 32 768 bytes).
-b [batch file] Especifique un archivo por lotes para iniciar el sftp Comando en modo por lotes.
-C Usar compresión de archivos.
-c [cipher] Seleccione un cifrado para usar al cifrar los datos para la transferencia.
-D [SFTP server path] Conéctese a un servidor SFTP local sin usar SSH.
-F [SSH configuration file] Especifique un archivo de configuración SSH para usar al conectarse.
-f Descargue los archivos en el disco inmediatamente después de la transferencia.
-i [private key file] Seleccione un archivo que contenga la clave privada para la autenticación de clave pública.
-J [destination] Configure el reenvío de TCP a través del destino proporcionado.
-l [kbit/s] Establezca un límite para el ancho de banda de la conexión en kbit/s.
-N Deshabilitar el modo silencioso.
-o [SSH option] Agregue una opción de comando ssh cuando se conecte a SFTP.
-P [port number] Establezca un puerto para conectarse.
-p Conserve los permisos de archivo y los tiempos de acceso al transferir.
-q Activar modo silencioso.
-R [number of requests] Establezca el número de solicitudes de transferencia de archivos simultáneas permitidas.
-r Transferir directorios recursivamente.
-S [client] Especifique un cliente SFTP que desee usar para conectarse.
-s [SSH subsystem or SFTP server path] Seleccione un subsistema SSH2 o una ruta de servidor SFTP.
-v Mantenga un registro detallado de la sesión.

Cambio de permisos de archivos

SFTP también le permite modificar los permisos de archivos y directorios en el servidor remoto. El chown el comando cambia la propiedad del archivo para usuarios individuales:

chown [user ID] [path to file]

A diferencia del chown comando, que requiere una ID de usuario, el comando chmod funciona igual que en el shell estándar:

chmod [permission] [path to file]

Otra opción es usar el chgrp comando para cambiar la propiedad del grupo de un archivo:

chgrp [group ID] [path to file]

SFTP también le permite configurar un umask local, cambiando el permiso predeterminado para todos los archivos futuros transferidos al sistema local. Usa la lumask comando para configurar un nuevo umask local:

lumask [permission mask]

Gestión de archivos y directorios

SFTP proporciona opciones que permiten a los usuarios revisar y administrar archivos tanto en el sistema local como en el servidor remoto. El ls El comando le permite enumerar los archivos y directorios en el servidor remoto. Por ejemplo:

ls -l

Del mismo modo, lls (local ls ) el comando enumera archivos y directorios en el sistema local:

lls -l

El cd y lcd Los comandos cambian el directorio de trabajo actual en el servidor remoto o el sistema local, respectivamente:

cd [path to directory on the remote server]
lcd [path to directory on the local system]

El uso del comando mkdir crea un directorio en el servidor remoto con la ruta que proporcione:

mkdir [path to the new directory on the remote server]

Por ejemplo, creando Example_Directory en el Inicio directorio:

mkdir Example_Directory

El mkdir El comando no tiene salida, por lo que debe usar ls comando para verificar el resultado:

Similar a esto, el lmkdir El comando crea un directorio en el sistema local:

lmkdir [path to the new directory on the local system]

Usando el mismo ejemplo:

lmkdir Example_Directory

El rename El comando cambia el nombre de un archivo o directorio en el servidor remoto:

rename [old path] [new path]

Por ejemplo, cambiar el nombre de example01.txt a muestradoc.txt :

rename example01.txt sampledoc.txt

Usando el rm comando elimina un archivo del servidor remoto:

rm [path to file]

Por ejemplo, eliminar el sampledoc.txt archivo:

rm sampledoc.txt

Del mismo modo, el rmdir El comando elimina un directorio del servidor remoto:

rmdir [path to directory]

Por ejemplo, eliminar Example_Directory :

rmdir Example_Directory

El ln y symlink Los comandos crean un enlace simbólico a un archivo o directorio en el servidor remoto:

ln [old path] [new path]
symlink [old path] [new path]

Por ejemplo, crear un enlace a example02.txt llamado example_link usando el ln comando:

ln example02.txt example_link

El pwd El comando muestra el directorio de trabajo actual en el servidor remoto como salida:

pwd

Por otro lado, el lpwd El comando crea una salida que muestra el directorio de trabajo actual en el sistema local:

lpwd

Ejecución de comandos de shell locales

SFTP le permite ejecutar un comando usando el shell local agregando un signo de exclamación (! ) antes del comando. Esto permite a los usuarios ejecutar comandos que no forman parte del shell SFTP estándar en el sistema local.

Por ejemplo, SFTP no admite el tree Comando en Linux. Al usar el shell local, puede ejecutar este comando en la interfaz SFTP:

!tree

Usando el signo de exclamación (! ) sin un comando mueve temporalmente al usuario al shell local. Para volver al shell de SFTP, utilice exit comando.

Otros Comandos

Usando la help o ? commands muestra el texto de ayuda para la interfaz SFTP. La ayuda proporciona una lista de comandos disponibles en el shell SFTP.

La version El comando muestra la versión actual del protocolo SFTP instalado:

PDF de hoja de trucos de SFTP

A continuación, puede encontrar una hoja de referencia de una página que contiene todos los comandos y opciones de SFTP mencionados anteriormente. Guárdelo como un archivo PDF haciendo clic en el enlace a continuación.

DESCARGAR Hoja de trucos de SFTP


Linux
  1. Cómo usar los comandos del historial de Bash

  2. Cómo usar los comandos 'cat' y 'tac' con ejemplos en Linux

  3. Cómo instalar y usar Flatpak en Linux

  4. Cómo guardar comandos de Linux y usarlos bajo demanda

  5. Usar SFTP y SCP

Cómo instalar y usar SFTP en servidores Linux

Cómo instalar y usar PuTTY en Linux

Cómo usar los comandos Pbcopy y Pbpaste en Linux

Cómo instalar y usar phpMyAdmin en Linux

Cómo instalar y usar el comando fd en Linux

Cómo instalar y usar Nu Shell en Linux

    Opción Descripción
    -a Intente reanudar una transferencia de archivos.
    -f Descargue el archivo en el disco inmediatamente después de la transferencia.
    -p Conserve los permisos de archivo y los tiempos de acceso durante la transferencia.
    -R Transfiere un directorio completo recursivamente. Al usar esta opción, defina una ruta a un directorio en lugar de una ruta a un archivo.