2014/02/19

SFTP

Introduccion:

Configurar el servicio SFTP para transferencias y que el usuario este enjaulado.

Requerimientos:

* FreeBSD instalado
* Conexion a Internet
* Leer este tutorial

Manuales utilizados:

Chroot sftp users using ssh

El proceso:

# edit /etc/ssh/sshd_config

Agragar al final las lineas:

Match group        chroot
ChrootDirectory    %u
X11Forwarding      no
AllowTcpForwarding no
ForceCommand       internal-sftp

Reiniciar (restart o reload) sshd

# /etc/rc.d/sshd reload

Agragar el nuevo grupo llamado chroot

# pw addgroup chroot

Nota:
Para eliminar un grupo creado, usar: # pw groupdel nombregrupo

Agregar el nuevo usuario con el que se conectaran

# adduser
Username: sftpuser
Full name: SFTP User
Uid (Leave empty for default):
Login group [sftpuser]: chroot         <- Atencion a este parametro!
Login group is chroot. Invite sftpuser into other groups? []:
Login class [default]:
Shell (sh csh tcsh nologin) [sh]:
Home directory [/home/sftpuser]: /home/sftpuser
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]:
Use an empty password? (yes/no) [no]:
Use a random password? (yes/no) [no]:
Enter password:
Enter password again:
Lock out the account after creation? [no]:
Username   : sftpuser
Password   : *****
Full Name  : SFTP User
Uid        : 1170
Class      :
Groups     : chroot
Home       : /home/sftpuser
Home Mode  :
Shell      : /bin/sh
Locked     : no
OK? (yes/no): yes
adduser: INFO: Successfully added (sftpuser) to the user database.
Add another user? (yes/no): no
Goodbye!

Ahora le ajustamos los permisos al home del usuario

# chown -R root:chroot /home/sftpuser

Crear un directorio llamado pub dentro para que puedan crear archivos

# mkdir /home/sftpuser/pub

Ajustarle los permisos al directorio pub

# chmod -R 0777 /home/sftpuser/pub

Los archivos se deben transferir al directorio pub