[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Forzar permisos con SFTP



Tue, 13 Sep 2011, Marc Olive:

On Monday 12 September 2011 18:29:58 AngelD wrote:
Mon, 12 Sep 2011, Marc Olive:
Conseguir mantener el grupo está resuelto, para esto basta con establecer
los permisos del directorio raiz a +s. El problema lo tengo para
establecer los
permisos en rw-rw---- (archivos) o rwxrwx--- (directorios):

 	A ver si he entendido bien. Con utilizar un 'chmod g+ws' y un
umask tipo '0002' a los usuarios del grupo, ¿no es suficiente?.

No es suficiente si el (programa) cliente modifica luego los permisos para que
se correspondan con el archivo original.

 	Si el problema sólo es con los umask y el sftp, [1]parece que hay
procedimientos sencillos para forzar ésto, si utilizas el
[1]"sftp-server" sin chroot.

 	Si utilizas el "internal sftpd", encuentro referencias al fichero
[2]'/etc/login.conf', algo que desconozco si tiene equivalente el Linux,
por lo que puedes parchear el [3]ssh, o puedes generar un chroot a la
antigua usanza, para seguir utilizando el comando externo para sftp.

 	Si no utilizas chroot, el parámetro '-u' del sftp-server

Estamos en las mismas: si el cliente cambia los permisos, de nada sirve lo que
configure en el servidor.

	Entonces, las opciones que utilicen umask no son factibles.

 	Se me ocurre alguna otra idea, un poco más aceptable, utilizar las
[4]"inotify-tools" para cambiar los permisos cada vez que se deje un
fichero en el directorio descrito.

Pero hay muchos directorios que monitorizar (11.000), no se si seria mucha
carga para el sistema.
El otro problema es que habria que poner otra incron por cada nuevo directorio
que se cree.

¿Estan todos los directorios colgando del mismo árbol?. Porque puedes monitorizar el /home, por ejemplo, y cuando se genere o modifique un archivo aplicar un if con más condiciones?. Siempre que esten en el mismo filesystem sería factible.

	Nunca he utilizado "incron", sólo [5]inotifywait.

 	Ya nos contarás tus progresos.

Me parece que tengo que decantarme con el parche de "sftpfilecontrol". En su
doc dicen "to control whether the client may issue chown and chmod commands in
an sftp session."
¿Problemas? Que solo existe para versiones antiguas de OpenSSH (5.4p1) y que
pierdo los parches aplicados por Debian.
Acabo de aplicar el parche, compilar e instalar, pero tengo otros problemas
para autentificarme, "sshd[31189]: Failed password for marc.olive from
10.81.55.4 port 51497 ssh2", seguramente por la conexión con LDAP (en la doc
ya avisan).
Seguiré peleando con esto, creo que "sftpfilecontrol" es la única opción.

¿No puedes desarmar el paquete deb, y aplicar el parche?. Así sólo perderias parches futuros y no pasados.

[1]http://serverfault.com/questions/70876/how-to-put-desired-umask-with-sf
tp [2]https://calomel.org/sftp_chroot.html
  [3]http://sftpfilecontrol.sourceforge.net/
  [4]http://inotify-tools.sourceforge.net/

 [5]http://zerutek.com/wiki/Sincronizar_directorios_con_inotify

--
	Saludos --- Angel

Reply to: