GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo puedo crear un usuario solo para sftp?

Solución 1:

El comando que debe usar para cambiar el shell es chsh . El shell de nologin puede ser /sbin/nologin o /usr/sbin/nologin (compruebe cuál tiene mirando en /etc/shells ) pero /bin/false probablemente sería una mejor opción.

chsh -s /bin/false user

Debería considerar configurar algo como scponly que hará exactamente lo que quieres.

Solución 2:

También debería poder hacerlo con OpenSSH 4.9 y versiones posteriores, con las que además puede chrootear al usuario para mayor seguridad.

En tu /etc/ssh/sshd_config :

Match User user
ChrootDirectory /home/user
ForceCommand internal-sftp
AllowTcpForwarding no

Luego ejecuta:

chsh -s /bin/false user
chown root:root /home/user
mkdir /home/user/uploads
chown user /home/user/uploads

El usuario solo podrá escribir en /home/user/uploads.

https://debian-administration.org/article/590/OpenSSH_SFTP_chroot_with_ChrootDirectory

Solución 3:

Creo que la mejor manera es con mysecureshell

http://mysecureshell.sourceforge.net/en/index.html

Puede hacer chroot a un usuario con esto fácilmente e incluso limitar el ancho de banda si es necesario.


Linux
  1. CentOS/RHEL:Cómo configurar SFTP para Chroot Jail solo para un grupo específico

  2. ¿Cómo crear un archivo solo si no existe?

  3. ¿Cómo puedo crear un usuario que no inicie sesión?

  4. ¿Cómo crear un usuario root adicional?

  5. ¿Cómo se crea una clave ssh para otro usuario?

Cómo crear un usuario de Postgres

Cómo usar el Administrador de usuarios en cPanel. ¿Puedo crear un usuario de cPanel separado?

Cómo crear solo un usuario SFTP en Debian 11

Cómo crear un usuario SFTP para una raíz de documentos del servidor web

¿Cómo agregar un nuevo dominio solo para correos electrónicos?

¿Cómo puedo crear una nueva base de datos MySQL en cPanel?