Cómo crear un usuario SFTP en Ubuntu 22.04

21 giu 2022 3 min di lettura
Cómo crear un usuario SFTP en Ubuntu 22.04
Tabla de contenidos

Introducción

SFTP es un protocolo que permite la transferencia segura de archivos a través de una red. A menudo, las empresas y los individuos lo utilizan para transferir datos confidenciales. SFTP es similar a FTP pero utiliza un protocolo diferente para la comunicación. SFTP es más seguro que FTP y, a menudo, se usa junto con SSH (Secure Shell) para proporcionar un nivel de seguridad aún mayor.

En este tutorial, lo ayudaremos a configurar un servidor SFTP y crear un usuario solo de SFTP en sistemas Ubuntu 22.04. Esa cuenta puede conectarse a través de SFTP pero no puede conectarse a través de SSH. Además, esto hará chroot al usuario SFTP solo en un directorio específico.

requisitos previos

  • Un sistema Ubuntu 22.04 LTS que se ejecuta con acceso de shell
  • Requiere una cuenta con privilegios sudo

Crear un usuario SFTP

En primer lugar, cree una nueva cuenta en su sistema para usarla como usuario de sftp.

El siguiente comando creará una nueva cuenta llamada sftpuser sin acceso de shell. Puede cambiar el nombre de usuario de su elección:

sudo adduser --shell /bin/false sftpuser 

Configurar el directorio SFTP

Ahora, cree la estructura de directorios para que el usuario de sftp pueda acceder a ella:

sudo mkdir -p /var/sftp/files 

Aquí permitiremos que los usuarios accedan solo al directorio " archivo ".

Ahora, cambie la propiedad del directorio de archivos a sftpuser. Para que sftpuser solo pueda leer y escribir en este directorio:

sudo chown sftpuser:sftpuser /var/sftp/files 

Y configure el propietario y el propietario del grupo de / var / sftp como root. El usuario root tiene acceso de lectura/escritura en este acceso. Los miembros del grupo y otras cuentas solo tienen permisos de lectura y ejecución:

sudo chown root:root /var/sftp 
sudo chmod 755 /var/sftp 

Actualizar el archivo de configuración de SSH

Ahora edite el archivo de configuración de SSH en un editor de texto:

sudo vim /etc/ssh/sshd_config 

Agregue la siguiente configuración al final del archivo:

Match User sftpuser
	ForceCommand internal-sftp
	PasswordAuthentication yes
	ChrootDirectory /var/sftp
	PermitTunnel no
	AllowAgentForwarding no
	AllowTcpForwarding no
	X11Forwarding no

Asegúrese de agregar la configuración después de la línea Subsystem .

Guarde el archivo de configuración y ciérrelo.

Ahora valide el archivo de configuración:

sudo sshd -t 

Si la validación es exitosa, no se mostrará ningún resultado. En caso de que obtenga un error en la salida, asegúrese de corregirlo antes de ejecutar los siguientes comandos.

Reinicie el servicio SSH para aplicar los cambios.

sudo systemctl restart ssh 

Todo listo. El usuario exclusivo de SFTP se creó con éxito en su sistema Ubuntu. Ahora intente iniciar sesión en el sistema remoto con las credenciales del nuevo usuario y verifique si todo funciona bien.

Conéctese al usuario SFTP

Puede conectarse a un servidor SFTP remoto mediante una línea de comandos o aplicaciones gráficas como Filezilla o WinSCP. En este tutorial, le mostraré las dos formas de conectar sftp a una sola cuenta en el sistema Ubuntu.

Los usuarios de Linux pueden usar la utilidad de línea de comandos sftp para conectarse a una instancia remota de sftp:

sftp [email protected] 

También puede conectarse a un servidor SFTP remoto utilizando aplicaciones GUI como FileZilla. Está disponible para usuarios de Linux y Windows. Abra la aplicación Filezilla e ingrese los detalles de sftp:

  • Servidor: sftp: // sistema-ip-host
  • Nombre de usuario : use el usuario SFTP creado en el paso 1.
  • Contraseña: utilice la contraseña de usuario de SFTP creada en el paso 1.
  • Puerto : use el puerto del servidor SSH o manténgalo en blanco para el puerto predeterminado.

Haga clic en el botón Conexión rápida.

Verifique que no haya acceso al shell.

Como esta cuenta está configurada solo para conexión SFTP. Por lo tanto, si un usuario intentó conectarse a través de SSH, se cerrará la sesión inmediatamente después de la autenticación exitosa. El usuario recibirá el siguiente mensaje:

ssh [email protected]  
[email protected]'s password:
This service allows sftp connections only.
Connection to sftp.noviello.it closed.

Conclusión

En pocas palabras, configurar un servidor SFTP es una excelente manera de transferir archivos de forma segura entre computadoras. Siguiendo los pasos de este artículo, puede configurar su servidor SFTP en poco tiempo en los sistemas Ubuntu. Si tiene alguna pregunta, no dude en dejar un comentario a continuación y estaremos encantados de ayudarle.

Únase a la conversación

Buy me a coffeeBuy me a coffee

Apóyenos si le gusta nuestro contenido. Gracias.

Genial! A continuación, complete el pago para obtener acceso completo a Noviello.it.
Bienvenido de nuevo! Has iniciado sesión correctamente.
Te has suscrito correctamente a Noviello.it.
Éxito! Su cuenta está completamente activada, ahora tiene acceso a todo el contenido.
Éxito! Su información de facturación ha sido actualizada.
Su facturación no se actualizó.