Configuración e Instalación

Configurar acceso SFTP con ProFTPd

sudo nano /etc/proftpd/conf.d/sftp.conf

Agregar lo siguiente linea

<
IfModule mod_sftp.c
>


        SFTPEngine on
        Port 2222
        SFTPLog /var/log/proftpd/sftp.log

        # Configure both the RSA and DSA host keys, using the same host key
        # files that OpenSSH uses.
        SFTPHostKey /etc/ssh/ssh_host_rsa_key
        SFTPHostKey /etc/ssh/ssh_host_dsa_key

        SFTPAuthMethods publickey

        SFTPAuthorizedUserKeys file:/etc/proftpd/authorized_keys/%u

        # Enable compression
        SFTPCompression delayed


<
/IfModule
>

SFTP Sobre SSH

Configurar el servicio SSH para permitir conexiones SFTP

  1. Editamos el archivo /etc/ssh/sshd_config, donde reemplazamos la línea
#Subsystem sftp /usr/lib/openssh/sftp-server

Por:

Subsystem sftp internal-sftp

En el mismo archivo, agregamos al final:

Match Group sftpusers
ChrootDirectory /home/sftp/usuarioX
ForceCommand internal-sftp

Creando directorios para servicio y home de usuarios

Crear el directorio que será el chroot de los usuarios.

mkdir /home/sftp/

chmod 755 /home/sftp/

Crear el directorio que será el home del usuario que utilizará el servicio.

mkdir /home/sftp/usuarioX/
chmod 755 /home/sftp/usuarioX/

Creamos el grupo (sftp) y usuario (redorbita)

groupadd sftp
useradd -g sftp -s /bin/false -d /home/sftp/usuarioX usuarioX
passwd usuarioX
Introduzca la nueva contraseña de UNIX:
Vuelva a escribir la nueva contraseña de UNIX:
passwd: contraseña actualizada correctamente

Configurando el enjaulado de usuarios

nano /etc/ssh/sshd_config

Si queremos enjaular al grupo el cual pertenece nuestros usuarios (En mi opinión la mejor forma) enjaulariamos el raíz que creamos anteriormente.
Quedaría de la siguiente forma:

Match group sftp
ChrootDirectory /home/usuarioX
ForceCommand internal-sftp

En cambio si queremos enjaular a un usuario en concreto añadiríamos lo siguiente:

UsePAM yes
Match user redorbita
ChrootDirectory /home/sftp/usuarioX
ForceCommand internal-sftp

Restringir el acceso a Usuarios

Finalmente se reinicia el servicio FTP

/etc/init.d/ssh restart

Pruebas de conexión

Miguel:~$ sftp [email protected]
[email protected]'s password: 
Connected to 192.168.0.2.
sftp> pwd
Remote working directory: /incoming
sftp> cd /etc
Couldn't canonicalise: No such file or directory

sftp>

La idea es que como el usuario esta sobre chroot no salga del directorio que le hemos creado (como figura arriba) de lo contrario va a poder ingresar al raiz del S.O.

Descargar

Para poder conectarte con un cliente FTP como FileZilla, ir al siguiente link:

http://filezilla-project.org/

results matching ""

    No results matching ""