GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo configurar el servidor SFTP en Ubuntu 20.04 Focal Fossa Linux

En esta guía, le mostraremos cómo configurar un servidor SFTP usando VSFTPD en Ubuntu 20.04 Focal Fossa. Si aún no lo ha hecho, consulte nuestro tutorial sobre Cómo configurar un servidor FTP en Ubuntu 20.04 Focal Fossa con VSFTPD, ya que este artículo sobre SFTP asume que ha aplicado la configuración cubierta en la guía de FTP.

FTP es un gran protocolo para acceder y transferir archivos, pero tiene la desventaja de ser un protocolo de texto claro. En otras palabras, no es seguro usarlo a través de una conexión a Internet, ya que sus credenciales y datos se transmiten sin encriptación. La 'S' en SFTP significa 'Seguro' y canaliza el protocolo FTP a través de SSH, proporcionando el cifrado necesario para establecer una conexión segura.

En este tutorial aprenderás:

  • Cómo instalar y configurar el demonio SSH
  • Cómo configurar una cuenta de usuario y un grupo SFTP
  • Cómo conectarse al servidor SFTP a través de la línea de comandos
  • Cómo conectarse al servidor SFTP a través de la línea de comandos

Cómo configurar el servidor SFTP en Ubuntu 20.04 Focal Fossa Linux

Configurar demonio SSH

  1. SFTP requiere SSH, por lo que si el servidor SSH aún no está instalado en su sistema, instálelo con el siguiente comando:
    $ sudo apt install ssh
    
  2. Una vez que se instala SSH, debemos realizar algunos cambios en el archivo de configuración de SSHD. Use nano o su editor de texto favorito para abrirlo:
    $ sudo nano /etc/ssh/sshd_config
    
  3. Desplácese hasta la parte inferior del archivo y agregue las siguientes 5 líneas al final:
    Match group sftp
    ChrootDirectory /home
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand internal-sftp

    archivo de configuración SSH

    Las líneas anteriores permitirán a los usuarios en el sftp group para acceder a sus directorios de inicio a través de SFTP, pero les niega el acceso SSH normal, por lo que nunca pueden acceder a un shell. Después de pegar esas líneas, guarde y cierre el archivo de configuración.

  4. Reinicie el servicio SSH para que estos nuevos cambios surtan efecto:
    $ sudo systemctl restart ssh
    

Crear cuenta de usuario SFTP

Ahora necesitamos crear cuentas de usuario para cualquier persona a la que deseemos otorgar acceso SFTP.

  1. Cree un nuevo grupo de usuarios llamado sftp . Todos nuestros usuarios de SFTP deberán pertenecer a este grupo.
    $ sudo addgroup sftp
    Adding group `sftp' (GID 1002) ...
    Done.
    
  2. Luego, cree un nuevo usuario. Simplemente llamaremos al nuestro sftpuser en este ejemplo. También asegúrese de agregar este usuario al sftp grupo.
    $ sudo useradd -m sftpuser -g sftp
    
  3. Establecer una contraseña para el sftpuser recién creado :
    $ sudo passwd sftpuser
    New password: 
    Retype new password: 
    passwd: password updated successfully
    
  4. Por último, concedamos acceso completo al usuario en su propio directorio de inicio, pero negemos el acceso al directorio a todos los demás usuarios del sistema:
    $ sudo chmod 700 /home/sftpuser/
    

Nuestra configuración de SFTP está completa; ahora podemos iniciar sesión para asegurarnos de que todo funciona correctamente.

Inicie sesión en SFTP mediante la línea de comandos

Puede iniciar sesión a través de SFTP con el nombre de host o la dirección IP de su sistema. Para probar desde el mismo sistema en el que acaba de configurar SFTP, conectándose a la dirección de loopback 127.0.0.1 funcionará bien.

  1. Abra una terminal e inicie sesión usando el sftp comando:
    $ sftp [email protected]
    The authenticity of host '127.0.0.1 (127.0.0.1)' can't be established.
    ECDSA key fingerprint is SHA256:9HZflwSB64J+SELGLczOuv3f06gT/3ZaZAOezVZn2XQ.
    Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
    Warning: Permanently added '127.0.0.1' (ECDSA) to the list of known hosts.
    [email protected]'s password: 
    Connected to 127.0.0.1.
    sftp>
  2. Vaya al directorio de inicio del usuario, ya que es el único lugar donde tiene permisos. Aquí, intente crear un nuevo directorio para confirmar que todo funciona según lo previsto:
    sftp> cd sftpuser
    sftp> mkdir sftp-test
    sftp> ls
    sftp-test          
    sftp>

Iniciar sesión en SFTP usando GUI

Si prefiere usar una aplicación GUI para conectarse a su servidor SFTP, hay muchas opciones disponibles. Puede utilizar su cliente SFTP preferido o el integrado en Ubuntu de forma predeterminada:el administrador de archivos Nautilus.

  1. Abra el administrador de archivos Nautilus desde el menú Aplicaciones.
  2. Haga clic en "Otras ubicaciones" e ingrese sftp://127.0.0.1 en el cuadro "Conectar al servidor" en la parte inferior de la ventana y haga clic en conectar.
  3. Conéctese al servidor SFTP con Nautilus
  4. Ingrese las credenciales de la cuenta SFTP que configuramos anteriormente y haga clic en conectar.
  5. Ingrese las credenciales de la cuenta SFTP para conectarse
  6. Después de una conexión exitosa, podrá abrir su directorio de inicio y ver el directorio de prueba que creó anteriormente.
  7. Conexión exitosa al servidor SFTP

Conclusión

En el artículo Servidor FTP, vimos cómo usar VSFTPD para crear un servidor FTP en Ubuntu 20.04 Focal Fossa. También cubrimos cómo usar la línea de comando y la GUI de Ubuntu para conectarse al servidor FTP.

En este artículo, vimos cómo proteger el protocolo FTP configurando SFTP en nuestro sistema. Siguiendo las instrucciones de esta guía, las computadoras en su red local o a través de Internet pueden acceder de forma segura a su sistema para almacenar y recuperar archivos, ya sea a través de la línea de comandos o su cliente SFTP preferido.


Ubuntu
  1. Cómo configurar el servidor FTP en Ubuntu 20.04 Focal Fossa Linux

  2. Cómo instalar LaTex en Ubuntu 20.04 Focal Fossa Linux

  3. Servidor VNC en Ubuntu 20.04 Focal Fossa Linux

  4. Cómo configurar el recurso compartido del servidor Samba en Ubuntu 20.04 Focal Fossa Linux

  5. Configuración inicial del servidor con Ubuntu 20.04 LTS (Focal Fossa)

Cómo instalar Skype en Ubuntu 20.04 Focal Fossa Linux

Cómo instalar Go en Ubuntu 20.04 Focal Fossa Linux

Cómo instalar Spotify en Ubuntu 20.04 Focal Fossa Linux

Cómo iniciar aplicaciones automáticamente en Ubuntu 20.04 Focal Fossa Linux

Cómo suspender Ubuntu 20.04 Focal Fossa Linux Desktop

Cómo configurar el servidor SFTP en Ubuntu 22.04 Jammy Jellyfish Linux

    Requisitos de software y convenciones de línea de comandos de Linux
    Categoría Requisitos, convenciones o versión de software utilizada
    Sistema Ubuntu 20.04 Focal Fossa instalado o actualizado
    Software VSFTPD, demonio SSH
    Otro
    • Tenga VSFTPD instalado y configurado como se explica en Cómo configurar un servidor FTP en Ubuntu 20.04 Bionic Beaver con VSFTPD
    • Acceso privilegiado a su sistema Linux como root o a través de sudo comando.
    Convenciones # – requiere que los comandos de Linux dados se ejecuten con privilegios de root, ya sea directamente como usuario root o mediante el uso de sudo comando
    $ – requiere que los comandos de Linux dados se ejecuten como un usuario normal sin privilegios