Docker atmoz/SFTP
users.conf
Crear als usuaris en aquest fitxer, seguint aquesta nomenclatura:
- Per contrasenyes en text clar:
usuari:contrasenya:UID:GID:carpetes
- Per contrasenyes amb hash (
`openssl passwd -6 "password"`):usuari:hash:e:UID:GID:carpetes
- les carpetes separades per comes:
# usuari:contrasenya:UID:GID:carpetes clienteA:ClaveA123:1001:1001:projecte1,projecte2 # usuari:hash:e:UID:GID:carpetes clienteB:$6$pAwhKYx2ifn9gUh.$t5cvgQJVjXvGVcpb7OGZ0h0E8fDJp6r30F5g0UcsWObr3qrTTezGJN2t5an.pImyOUAxMkjPTbU1Nda4DLEn6.:e:1003:1003:projecte3,projecte4
directori home
s'ha de crear un directori home o un enllaç simbòlic amb permisos de root
sudo chwon root:root ./data/home sudo chmod -R 755 ./data/home
permisos
Es poden modificar els permisos dels directoris d'usuaris per permetre (o no) només lectura o evitar la creació de directoris, seguint les normes dels permisos Linux.
chown root:grupoClienteA /ruta/facturas chmod 755 /ruta/facturas # lectura y listado, sin escritura para el grupo
carpetes compartides entre usuaris
1.compartir directori en el $HOME dels usuaris, a docker-compose:
volumes: - ./data/users.conf:/etc/sftp/users.conf:ro - ./data/home:/home - ./data/shared:/home/clienteA/compartida - ./data/shared:/home/clienteB/compartida - ./data/ssh_keys/ssh_host_ed25519_key:/etc/ssh/ssh_host_ed25519_key - ./data/ssh_keys/ssh_host_rsa_key:/etc/ssh/ssh_host_rsa_key
2.assignar persmisos:
sudo mkdir -p ./data/shared sudo chown root:1100 ./data/shared sudo chmod 2770 ./data/shared # setgid: los archivos nuevos heredan el grupo 1100 sudo setfacl -d -m u::rwx,g::rwx,o::--- ./data/shared
generació claus
ubicar-les a ./data/ssh_keys:
ssh-keygen -t ed25519 -f ./ssh_keys/ssh_host_ed25519_key -N "" ssh-keygen -t rsa -b 4096 -f ./ssh_keys/ssh_host_rsa_key -N ""
canviar els permisos i propietat:
chown root *_key sudo chmod go-rx