Cómo configurar un servidor SFTP en Linux

Wuando se trata de "transferencias de archivos", hay innumerables formas de hacerlo. Ya cubrimos una cantidad decente de métodos, incluida la transferencia de archivos entre los sistemas Windows y Linux, FTP o Protocolo de transferencia de archivos para mover archivos entre varias máquinas a través de la red. Si está buscando una forma más segura de transferir datos a través de la web, debe buscar SFTP.

SFTP vs. FTP

SFTP, que es la abreviatura de Secure File Ttransferir PAGrotocol, es un gran protocolo que se utiliza para establecer una conexión segura y encriptada para transferir archivos de forma segura. Esto es posible porque SFTP utiliza un tipo encriptado de tecnología de huellas dactilares para verificar las claves del host antes de que comience la transferencia de datos. Por otro lado, FTP no ofrece cifrado de ningún tipo y no se recomienda su uso en una red insegura como la nube.

Otra área donde sobresale SFTP es debido a un firewall del lado del cliente más simple. Solo el puerto 22 deberá estar abierto para enviar y recibir datos, lo que implica que las configuraciones del cortafuegos pueden ser más sencillas y mejorar la seguridad para compartir archivos. El protocolo FTP necesita abrir varios canales para que se lleve a cabo la transferencia de datos.

Capa adicional de seguridad

Además, y para mayor seguridad, recomendamos habilitar la función chroot en cuentas de usuario específicas. La idea detrás del chroot es que depende de aislar algunas aplicaciones, archivos y ponerlos en algo así como una cárcel para separarlos del resto de los directorios de su máquina. Por lo tanto, si una cuenta de usuario tiene habilitada la función chroot, entonces él o ella es el único que tiene acceso al contenido de sus directorios, aplicaciones y archivos.

Índice
  • Configuración del servidor SFTP en Linux
  • Configuración del servidor SFTP en Linux

    En este tutorial, lo guiaremos a través de la configuración del SFTP en su máquina Ubuntu. Esta guía se divide en las siguientes secciones:

    1. Cree un grupo y un usuario SFTP.
    2. Instale SSH Daemon.
    3. Configure SSH Daemon.
    4. Inicie sesión en SFTP mediante la línea de comandos o la interfaz gráfica de usuario.

    Sin embargo, antes de comenzar, debe asegurarse de que su máquina esté actualizada usando los siguientes comandos. Los siguientes comandos son para actualizar Ubuntu y sus derivados. Si tiene otra distribución de Linux, actualice su sistema antes de continuar.

    sudo apt update
    sudo apt upgrade

    1. Creación de un grupo y un usuario SFTP

    Primero, creemos un nuevo grupo y usuario que puede usar para iniciar sesión con SFTP.

    Paso 1. Cree un nuevo grupo llamado sftp_fosslinux de la siguiente manera:

    sudo addgroup sftp_fosslinux

    Agregar nuevo grupo SFTP
    Agregar nuevo grupo SFTP

    Paso 2. Cree un nuevo usuario llamado "sftpfossuser" y agréguelo al grupo creado anteriormente.

    sudo useradd -m sftpfossuser -g sftp_fosslinux

    Agregar nuevo usuario SFTP
    Agregar nuevo usuario SFTP

    Paso 3. Agregue una contraseña al nuevo usuario de SFTP.

    sudo passwd sftpfossuser

    Establecer contraseña para nuevo usuario SFTP
    Establecer contraseña para nuevo usuario SFTP

    Paso 4. Ahora, conceda al nuevo usuario de SFTP acceso completo a su nuevo directorio de inicio de la siguiente manera:

    sudo chmod 700 /home/sftpfossuser/

    Otorgue acceso completo a un nuevo usuario de SFTP en su directorio de inicio
    Otorgue acceso completo a un nuevo usuario de SFTP en su directorio de inicio

    Ahora está listo para instalar SSH y configurarlo.

    2. Instalación de SSH Daemon

    Para que SFTP funcione correctamente, puede instalar el servidor SSH o OpenSSH. Si ninguno de ellos ya está instalado en su máquina, utilice el siguiente comando para instalar el servidor SSH:

    sudo apt install ssh

    Instalar paquete SSH
    Instalar paquete SSH

    3. Configuración de SSH Daemon

    Una vez completada la instalación de SSH, abra el archivo de configuración de SSHD para editar algunas configuraciones.

    Paso 1. Abra el archivo SSHD con su editor favorito.

    sudo vi /etc/ssh/sshd_config

    Abrir archivo de configuración SSHD
    Abrir archivo de configuración SSHD

    Paso 2. Ahora desplácese hacia abajo hasta el final del archivo de configuración y agregue las siguientes líneas:

    Match group sftp_fosslinux 
    ChrootDirectory /home 
    X11Forwarding no 
    AllowTcpForwarding no 
    ForceCommand internal-sftp

    Guarde y cierre el archivo de configuración SSHD.

    Editar archivo de configuración SSHD
    Editar archivo de configuración SSHD

    Las configuraciones anteriores significan permitir a los usuarios en el sftp_fosslinux group para acceder y utilizar sus directorios personales a través del SFTP. Aún más, evitará cualquier otro acceso SSH normal a esos archivos.

    Paso 3. Ahora reiniciemos el servicio SSH para aplicar los cambios anteriores.

    sudo systemctl restart ssh

    Reiniciar el servicio SSH
    Reiniciar el servicio SSH

    4. Inicie sesión en SFTP

    Usando el método de línea de comandos

    Puede utilizar la terminal de línea de comandos para probar su inicio de sesión en SFTP localmente.

    Paso 1. Desde la terminal, inicie sesión con el comando:

    sftp sftpfossuser@127.0.0.1

    Iniciar sesión mediante SFTP
    Iniciar sesión mediante SFTP

    Paso 2. A continuación, necesitará su nombre de usuario y contraseña SFTP.

    SFTP conectado correctamente
    SFTP conectado correctamente

    Paso 3. Vaya al directorio de inicio del usuario de SFTP e intente crear un nuevo directorio de la siguiente manera:

    cd sftpfossuser
    ls

    Mover al directorio de inicio de usuario de SFTP
    Mover al directorio de inicio de usuario de SFTP

    mkdir sftpdir
    ls

    Crear nuevo Directroy Usign SFTP
    Crear nuevo directorio usando SFTP

    Para salir de la conexión SFTP simplemente escriba:

     exit

    Salir de la conexión SFTP
    Salir de la conexión SFTP

    Uso del método de interfaz gráfica de usuario

    En caso de que necesite iniciar sesión con SFTP usando una aplicación gráfica, puede usar el administrador de archivos predeterminado de Nautilus Ubuntu.

    Paso 1. Desde el "Ocupaciones" menú, busque y seleccione el administrador de archivos Nautilus.

    Abrir el Administrador de archivos predeterminado de Nautilus
    Abrir el Administrador de archivos predeterminado de Nautilus

    Paso 2. En el administrador de archivos de Nautilus, en el panel izquierdo, elija "Otras ubicaciones ".

    Seleccionar ubicaciones abiertas
    Seleccionar ubicaciones abiertas

    Paso 3. En la barra inferior, conéctese al SFTP local usando el siguiente comando:

    sftp://127.0.0.1

    Conectar al servidor
    Conectar al servidor

    Paso 4. Ingrese el nombre de usuario y la contraseña de SFTP.

    Iniciar sesión con un usuario creado por SFTP
    Iniciar sesión con un usuario creado por SFTP

    Paso 5. Después de iniciar sesión correctamente, podrá ver el directorio de inicio de su usuario SFTP.

    Seleccione su directorio de inicio de usuario SFTP
    Seleccione su directorio de inicio de usuario SFTP

    Paso 6. Como puede notar, verá el directorio creado anteriormente.

    Bienvenido al directorio de inicio de usuario de SFTP
    Bienvenido al directorio de inicio de usuario de SFTP

    Conclusión

    Si has llegado hasta aquí, ¡enhorabuena! ¡Ha instalado SFTP y ha iniciado sesión correctamente! Espero que disfrutes este tutorial. SFTP es excelente cuando necesita una transferencia de archivos segura porque los archivos se cifran durante la transferencia.

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    Subir