Saltar al contenido

Qué es y cómo utilizar SFTP (Protocolo de transferencia de archivos SSH)

FTP es el método estándar para transferir archivos u otros datos entre computadoras, pero se está volviendo cada vez más obsoleto debido al entorno actual preocupado por la seguridad. Afortunadamente, ahí es donde entra en juego SFTP, que es particularmente útil para los usuarios de alojamiento VPS.

En esta guía, le mostraremos cómo usar SFTP para la transferencia segura de archivos, hablaremos sobre otros comandos útiles y le explicaremos más sobre cómo funciona.

eBook Speed Up your website ES

Es el único protocolo seguro de transferencia de archivos que protege contra ataques en cualquier punto del proceso de transferencia de datos, lo que lo convierte en el protocolo preferido.

Durante la transferencia de archivos, todos los datos se dividen en paquetes y se envían a través de una única conexión segura.

La información confidencial se cifrará y será ilegible cuando se transfiera entre el cliente y el servidor. En otras palabras, el contenido original (texto sin formato) será reemplazado por una secuencia incoherente de caracteres (texto cifrado).

Sólo el destinatario con la clave de descifrado requerida podrá ver el contenido original. Esto evita cualquier acceso no autorizado durante la transferencia de archivos.

El Protocolo de transferencia de archivos (FTP) tiene dos canales diferentes para intercambiar datos: el canal de comando y el canal de datos. Por el contrario, el protocolo SFTP tiene solo un canal cifrado donde se intercambian datos en paquetes formateados cifrados.

¿Cómo conectarse usando SFTP?

SFTP es un subsistema de SSH. Por lo tanto, admite todos los métodos de autenticación SSH. Si bien es más fácil configurar y utilizar la autenticación de contraseña, es mucho más conveniente y seguro crear claves SSH para un inicio de sesión SFTP sin contraseña.

Cuando esté listo para seguir adelante, siga los pasos a continuación para conectarse a SFTP:

  1. Verifique su acceso SSH usando uno de estos comandos:
    ssh user@server_ipaddress
    ssh user@remotehost_domainname
  1. Una vez hecho esto, salga de la sesión si no se produjo ningún error.
  2. Inicie una conexión SFTP con los siguientes comandos:
    sftp user@server_ipaddress
    sftp user@remotehost_domainname
  3. Si está utilizando un puerto SSH personalizado, utilice uno de estos comandos para cambiar el puerto SFTP:
    sftp -oPort=customport user@server_ipaddress
    sftp -oPort=customport user@remotehost_domainname
  4. Debe ser así:
    sftp -oPort=49166 user@31.220.57.32

Una vez conectado, verá un mensaje SFTP.

Leer  ¿Qué es un Pingback en WordPress?

Cómo transferir archivos usando SFTP

Aquí le mostraremos cómo transferir archivos remotos al sistema local usando SFTP y viceversa.

Consejo profesional

También puede transferir sus archivos utilizando clientes SFTP como WinSCP o FileZilla.

Transferir archivos remotos desde un servidor al sistema local

Para comenzar, verifique qué directorio de trabajo local y qué directorio remoto está utilizando. Para hacer esto, use estos comandos SFTP:

sftp> lpwd
Local directory: /LocalDirectory
sftp> pwd
Remote directory: /RemoteDirectory

Ahora veamos cómo transferir un archivo desde un servidor remoto a su máquina local usando el comando tomar. Aquí está la sintaxis básica del comando. tomar:

get /RemoteDirectory/filename.txt

Por ejemplo, para copiar el archivo /etc/xinetd.conf desde el servidor remoto a su máquina local usaría:

get /etc/xinetd.conf

Una vez que se complete la descarga, verá que el archivo xinetd.conf esta en el directorio /usuario/casa desde su máquina local.

Para descargar varios archivos con SFTP, use el comando para obtener. Para pasar todos los archivos que tengan la extensión .conf desde un directorio llamado /etc para su directorio de trabajo actual, utilizará el siguiente comando:

mget /etc/*.conf

Después de la descarga encontrará todos los archivos. *.conf en la libreta de direcciones /usuario/casa desde su máquina local.

Transferir archivos desde la máquina local al servidor remoto

Para copiar un archivo de la máquina local al servidor remoto, use el comando tomar de nuevo. En este caso, la sintaxis del comando tomar ser:

get file.txt /RemoteDirectory

Para mover el archivo ejemplo.txt Desde una máquina local a la máquina remota, ingrese el siguiente comando:

put /home/user-name/example.txt /root

Ahora encontraremos el archivo en el directorio raíz del servidor remoto. También puedes intentar transferir varios archivos con el comando mputar. Funciona casi de la misma manera que para obtener:

mput /home/user-name/*.txt /root

Este comando movería todos los archivos con la extensión .TXT en /inicio/nombre de usuario desde la máquina local al directorio remoto /fuente.

Consejo profesional

Tenga en cuenta que para descargar y cargar archivos con SFTP, deberá escribir el comando poner cualquier tomar y presione la tecla PESTAÑA.

Comandos para navegar con SFTP

Algunos comandos se pueden utilizar para explorar servidores locales y remotos de manera más eficiente con SFTP. Son similares a los que usaría en la barra de comandos de Linux.

Leer  ¿Qué es Angular y cuáles son sus ventajas?

Por ejemplo, el comando contraseña Siempre es útil saber en qué directorio de trabajo se encuentra actualmente.

sftp> pwd
Remote Directory: /RemoteDirectory

cualquier

sftp> lpwd
Local Directory: /LocalDirectory

También puede ver la lista de archivos y directorios que está utilizando para el directorio remoto:

ls

De manera similar, para el directorio de trabajo local:

lls

Por ejemplo, el resultado se verá así:

Pictures     Templates     Media     Text.txt     Documents

Para cambiar de un directorio de trabajo remoto a otro directorio de trabajo local, ingrese los siguientes comandos:

cd nombre_del_directorio
lcd nombre_del_directorio

Finalmente, use ! Es salida Para salir de los comandos, regrese al shell local y salga de SFTP.

Con SFTP, también puedes administrar directorios y archivos usando comandos específicos.

Para verificar el espacio en disco del servidor remoto en gigabytes, use la función df Entonces:

df -h

Aquí hay un ejemplo del resultado:

Filesystem         Size  Used Avail Use% Mounted on
/dev/ploop29212p1   59G  2.5G   56G   5% /
none               1.5G     0  1.5G   0% /sys/fs/cgroup
none               1.5G     0  1.5G   0% /dev
tmpfs              1.5G     0  1.5G   0% /dev/shm
tmpfs              1.5G  568K  1.5G   1% /run
tmpfs              308M     0  308M   0% /run/user/0

usa el comando mkdir para crear un nuevo directorio en el servidor local y remoto:

mkdir nombre_del_directorio
lmkdir nombre_del_directorio

Puede eliminar un directorio del servidor remoto usando el comando rmdir:

rmdir nombre_del_directorio

Asimismo, cambiar el nombre de un archivo remoto también es bastante sencillo:

rename viejo_nombredelarchivo nuevo_nombredelarchivo

Si desea eliminar un archivo remoto, use el comando habitación:

rm nombredearchivo

Aunque el comando chown se utiliza para reemplazar al propietario de un archivo:

chown userid nombredearchivo

ID de usuario Puede ser un nombre de usuario o una identificación de usuario numérica. Por ejemplo:

chown UsuarioUno NombredeArchivo
chown 1234 NombredeArchivo

chgrp utilizado para cambiar el propietario del grupo de un archivo:

chgrp groupid nombredearchivo

Por ejemplo:

chgrp NuevoGrupo ArchivoEjemplo

Finalmente, necesitarás usar el comando interactivo. chmod Para cambiar el permiso de un archivo:

chmod 764 NombredeArchivo

En este ejemplo, el valor de tres dígitos representa el usuarioEsel grupo Es otros usuarios de archivos.

Leer  ¿Qué es Localhost? Una Guía Completa sobre el Significado y su Importancia en el Desarrollo Web

En cuanto a los permisos para leer (r), Escribelo) Es correr (x)sus valores son 4, 2, 1, respectivamente. 0 También se puede utilizar para no otorgar permisos.

Para asignar permisos, simplemente calcule los valores totales para cada clase de usuario. A continuación se muestra un desglose del ejemplo:

chmod ugo NombredeArchivo
# u representa al Usuario que podrá leer, escribir y ejecutar el archivo.
# g es para Grupos, aquí le hemos dado permiso para escribir y ejecutar el archivo.
# o es que Otros solo podrán leer el archivo.

Lista de comandos SFTP útiles

Si necesita una hoja de comandos, aquí hay una lista de todos los comandos SFTP disponibles. Puede encontrar esta lista usted mismo simplemente escribiendo los comandos ayuda cualquier ?ambos dan el mismo resultado.

bye                            Salir de sftp
cd path                        Cambiar el directorio remoto a ‘path'
chgrp [-h] grp path            Cambiar el grupo del archivo 'path' a 'grp'
chmod [-h] mode path           Cambiar los permisos del archivo 'path' a 'mode'
chown [-h] own path            Cambiar el propietario del archivo 'path' a 'own' (propio)
df [-hi] [path]                Muestra las estadísticas del directorio actual o
                               sistema de archivos que contienen 'path'
exit                           Salir de sftp
get [-afpR] remote [local]     Descargar archivo
help                           Mostrar este texto de ayuda
lcd path                       Cambiar el directorio local a 'path'
lls [ls-options [path]]        Muestra la lista del directorio local
lmkdir path                    Crear directorio local
ln [-s] oldpath newpath        Link a archivo remoto (-s para symlink)
lpwd                           Mostrar directorio de trabajo local
ls [-1afhlnrSt] [path]         Muestra la lista de directorios remotos
lumask umask                   Establece la umask local en 'umask'
mkdir path                     Crear directorio remoto
progress                       Alternar la visualización del medidor de progreso
put [-afpR] local [remote]     Cargar archivo
pwd                            Mostrar directorio de trabajo remoto
quit                           Salir de sftp
reget [-fpR] remote [local]    Reanudar archivo de descarga
rename oldpath newpath         Renombrar archivo remoto
reput [-fpR] local [remote]    Reanudar archivo de carga
rm path                        Eliminar archivo remoto
rmdir path                     Eliminar directorio remoto
symlink oldpath newpath        Archivo remoto de symlink
version                        Muestra la versión SFTP
!command                       Ejecutar 'command' en el shell local
!                              Escapar al Shell local

Conclusión

Esto es básicamente qué es SFTP y cómo usarlo para la transferencia segura de archivos. Esperamos que este tutorial te haya resultado útil.

Si tiene más preguntas, no dude en dejar un comentario a continuación.

ES Web hosting in text banner

SFTP: preguntas frecuentes

A continuación se presentan algunas de las preguntas más comunes sobre el protocolo de transferencia de archivos SFTP.

¿Cuál es la relación entre FTPS y SSL?

FTPS es una extensión del protocolo FTP (File Transfer Protocol) que utiliza SSL (Secure Sockets Layer) para cifrar las transferencias de archivos, proporcionando así una capa adicional de seguridad en las comunicaciones entre el cliente y el servidor.

¿Qué es el puerto SFTP?

El puerto predeterminado utilizado por SFTP para establecer una conexión segura es 22. Este puerto es el mismo puerto utilizado por SSH porque SFTP depende de las funciones de seguridad de SSH para proteger las transferencias de archivos.

Compartir

Deja una respuesta