chroot jail per a usuaris SFTP

Configuració d’una chroot jail per a usuaris SFTP.

Explico en aquest post com configurar un servidor SFTP per tal que els usuaris puguin accedir en solament una carpeta a través del protocol SFTP i no tinguin permisos per tal d’explorar la resta del sistema. Sistema operatiu: OpenSuse 11.4. Les comandes a executar, marcades en negreta.

Primer pas. Modificació del fitxer de configuració del servidor de SSH (vi /etc/ssh/sshd_config)

# override default of no subsystems
 #Subsystem      sftp    /usr/lib/ssh/sftp-server
 Subsystem       sftp    internal-sftp
# Això va al final de tot. Als usuaris del grup nomessftp 
# se'ls aplica les instruccions següents:

 Match group nomessftp
 ForceCommand internal-sftp
 ChrootDirectory /gabies/%u
 X11Forwarding no
 AllowTcpForwarding no

Reiniciem el servei amb la nova configuració.

# /etc/init.d/sshd restart
 Shutting down SSH daemon                                         done
 Starting SSH daemon                                              done

Segon pas. Creació del grup i dels usuaris

groupadd nomessftp
mkdir /gabies
useradd -m -d /gabies/engabiat1 -s /bin/false engabiat1
passwd engabiat1
usermod -A nomessftp engabiat1

Tercer pas. Establiment de permisos (aquest punt és molt important! Si els permisos no son els adequats, la connexió no funciona! Si teniu problemes, fer un tail -10 /var/log/messages us pot donar alguna pista).

chown root:nomessftp /gabies
chmod 750 /gabies
chown root:nomessftp /gabies/engabiat1
chmod 750 engabiat1

Provem-ho!

sftp engabiat1@localhost
Password:
Connected to localhost.
sftp> ls -l
drwxr-xr-x    2 1006     100          4096 Jan 11 20:13 bin
drwxr-xr-x    2 1006     100          4096 Jan 11 20:13 public_html
sftp> pwd
Remote working directory: /
sftp> quit

Gerard

Gerard Farràs i Ballabriga.