[opensuse-es] ¿Solucion tipo SCM ... ?
Hola a tod@s: En vista que no ha sido posible en mis dos hilos anteriores (Bloqueo de archivos en GNU/Linux y samba) hallar una solución satisfactoria a lo que demandan de mis conocimientos, ingenio y experiencia, transcribo el objetivo a conseguir, con la esperanza que sus aportaciones puedan dar feliz término a este desafío que se me ha planteado: En la red local, existe un servidor con una carpeta compartida que es visible para todos los usuarios de la red, allí se almacenan los archivos que consultan y modifican dichos usuarios. Se requiere que se pueda bloquear un archivo para un único usuario en modo escritura y que cuando termine de editarlo, pueda ser editado por otro usuario. En resumidas cuentas: se requiere evitar la escritura concurrente de archivos, es decir, se busca que cualquier usuario pueda reservar un archivo para editarlo, siempre y cuando ningún otro usuario lo esté accediendo en modo escritura, pero igualmente, se requiere que no se pueda realizar copias locales de la información contenida en la carpeta compartida. Quedo atento a sus comentarios, indicaciones, sugerencias. Cordialmente, Cuervo Linuxero -- No recibo/envío información elaborados en/para M$-Word, M$-Excel, M$-PowerPoint, M$-Outlook o formatos privativos similares. Le invito a leer mis razones: http://www.gnu.org/philosophy/no-word-attachments.es.html -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El vie, 03-10-2008 a las 18:44 -0500, RŌNIN escribió:
En resumidas cuentas: se requiere evitar la escritura concurrente de archivos, es decir, se busca que cualquier usuario pueda reservar un archivo para editarlo, siempre y cuando ningún otro usuario lo esté accediendo en modo escritura, pero igualmente, se requiere que no se pueda realizar copias locales de la información contenida en la carpeta compartida.
Todo lo que es visible es copiable. -- Saludos Lluis
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2008-10-04 a las 01:49 +0200, lluis escribió:
El vie, 03-10-2008 a las 18:44 -0500, RŌNIN escribió:
En resumidas cuentas: se requiere evitar la escritura concurrente de archivos, es decir, se busca que cualquier usuario pueda reservar un archivo para editarlo, siempre y cuando ningún otro usuario lo esté accediendo en modo escritura, pero igualmente, se requiere que no se pueda realizar copias locales de la información contenida en la carpeta compartida.
Todo lo que es visible es copiable.
Claro. Sólo se me ocurre que haya una solución de comercial de alta seguridad que haga eso. En software abierto, como lo desarrollan gente que cree en la filosofía del código abierto, donde nada es secreto y todo se puede copiar, pues es muy dificil que lo encuentres. Podrías, quizás, poner un servidor SVN o equivalente, y luego otras máquinas que ofrezcan servicios de programación, pero sin teclado ni pantalla, o en un recinto cerrado con llave, y que peuden acceder al SVN. Se trabajaría desde una tercera capa de ordenadores sin almacenamiento local que accederían a trabajar sobre la segunda capa via putty o xwing o similar. Y todo ello en una red controlada donde no puedan conectarse más ordenadores, porque si enchufan uno que no esté restringido, te lo leen. Y con seguratas. Tu jefe tiene que rascarse el bolsillo pero bien rascado. Ten en cuenta que con simplemente acceder en terminal al fichero de código puedes copiarlo, simplemente haciendo un volcado de pantalla. Teniendo en cuenta que tus usuarios son programadores, y por tanto inteligentes, inquisitivos, curiosos, con habilidad demostrada en resolver problemas, y con conocimientos, te va a ser muy, pero que muy dificil impedirles el paso. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) iEYEARECAAYFAkjmuj4ACgkQtTMYHG2NR9WG3gCdHP+49W74q65QEMwtB6XxhbL5 uMIAn2lXEUp9Ro/t+oiup/ILGn+xZjEj =QyOF -----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Carlos E. R. escribió:
El 2008-10-04 a las 01:49 +0200, lluis escribió:
El vie, 03-10-2008 a las 18:44 -0500, RLNIN escribió:
En resumidas cuentas: se requiere evitar la escritura concurrente de archivos, es decir, se busca que cualquier usuario pueda reservar un archivo para editarlo, siempre y cuando ningún otro usuario lo esté accediendo en modo escritura, pero igualmente, se requiere que no se pueda realizar copias locales de la información contenida en la carpeta compartida.
Todo lo que es visible es copiable.
Tu jefe tiene que rascarse el bolsillo pero bien rascado.
Ten en cuenta que con simplemente acceder en terminal al fichero de código puedes copiarlo, simplemente haciendo un volcado de pantalla.
Teniendo en cuenta que tus usuarios son programadores, y por tanto inteligentes, inquisitivos, curiosos, con habilidad demostrada en resolver problemas, y con conocimientos, te va a ser muy, pero que muy dificil impedirles el paso.
Digo no, y si ponen la máquina en una habitación cerrada, sin conexión de red ni puertos usb habilitados y cada programador va a esa máquina cada vez que tiene que hacer algo? Yo creía que los PM que conozco son unos ignorantes pero veo que tu jefe les ha ganado :-P - -- Kind regards. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) iEYEAREIAAYFAkjmvnoACgkQNHr4BkRe3pICAgCfVtVPHjfUkccMvaFdUaBLV2is BCIAnjJcPJB4VUenjwlIkUM2b6Iu92b6 =KMTc -----END PGP SIGNATURE----- -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
Hola a tod@s:
El día 3 de octubre de 2008 19:35, Carlos E. R.
Sólo se me ocurre que haya una solución de comercial de alta seguridad que haga eso. En software abierto, como lo desarrollan gente que cree en la filosofía del código abierto, donde nada es secreto y todo se puede copiar, pues es muy dificil que lo encuentres.
Teniendo en cuenta que tus usuarios son programadores, y por tanto inteligentes, inquisitivos, curiosos, con habilidad demostrada en resolver problemas, y con conocimientos, te va a ser muy, pero que muy dificil impedirles el paso.
A juzgar por los comentarios recibidos, creo que me he explicado mal o se han malinterpretado las intenciones de mi jefe ... así que accidentalmente he encontrado la descripción que más claramente se ajusta a lo que se busca (tomado del manual de visudo): "Mediante visudo podremos editar el archivo /etc/sudoers de una manera segura, evitando ediciones simultaneas por parte de varios usuarios: si /etc/sudoers está siendo editado recibiremos un mensaje diciendonos que lo intentemos mas tarde. De hecho, visudo bloquea el archivo /etc/sudoers mientras se esté editando." Lo que no sé es cómo hace el tal visudo para impedir que otros usuarios editen simultáneamente el archivo /etc/sudoers ... si alguien me pudiera orientar con algo que me descifre esa inquietud, esto estará para entregar :) Quedo atento a sus comentarios, sugerencias, indicaciones. Cordialmente, Cuervo Linuxero -- No recibo/envío información elaborados en/para M$-Word, M$-Excel, M$-PowerPoint, M$-Outlook o formatos privativos similares. Le invito a leer mis razones: http://www.gnu.org/philosophy/no-word-attachments.es.html -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El vie, 03-10-2008 a las 20:15 -0500, RŌNIN escribió:
Hola a tod@s:
"Mediante visudo podremos editar el archivo /etc/sudoers de una manera segura, evitando ediciones simultaneas por parte de varios usuarios: si /etc/sudoers está siendo editado recibiremos un mensaje diciendonos que lo intentemos mas tarde. De hecho, visudo bloquea el archivo /etc/sudoers mientras se esté editando."
Lo que no sé es cómo hace el tal visudo para impedir que otros usuarios editen simultáneamente el archivo /etc/sudoers ... si alguien me pudiera orientar con algo que me descifre esa inquietud, esto estará para entregar :)
Quedo atento a sus comentarios, sugerencias, indicaciones.
En mi opinión, te mueves en terreno resbaladizo, eso no esta pensado para el uso que quieres darle. -- Saludos Lluis
Hola Lluis El día 3 de octubre de 2008 20:18, lluis escribió:
En mi opinión, te mueves en terreno resbaladizo, eso no esta pensado para el uso que quieres darle. --
Espero no haber malinterpretado tu respuesta, si es así corrígeme ... pero no quiero usar el visudo para manipular otros archivos que no sea el tal /etc/sudoers; solo me gustaría saber el "cómo funciona" para que impida a otros usuarios editar simultáneamente el archivo /etc/sudoers. ¿ Cambiará flags, atributos, propietarios ?... lo que sea, es eso lo que quiero saber. Gracias por tu tiempo e interés. Cordialmente, Cuervo Linuxero -- No recibo/envío información elaborados en/para M$-Word, M$-Excel, M$-PowerPoint, M$-Outlook o formatos privativos similares. Le invito a leer mis razones: http://www.gnu.org/philosophy/no-word-attachments.es.html -- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2008-10-03 a las 20:30 -0500, RŌNIN escribió:
En mi opinión, te mueves en terreno resbaladizo, eso no esta pensado para el uso que quieres darle.
Espero no haber malinterpretado tu respuesta, si es así corrígeme ... pero no quiero usar el visudo para manipular otros archivos que no sea el tal /etc/sudoers; solo me gustaría saber el "cómo funciona" para que impida a otros usuarios editar simultáneamente el archivo /etc/sudoers.
¿ Cambiará flags, atributos, propietarios ?... lo que sea, es eso lo que quiero saber.
Pues mira el código fuente >:-) No es nada de lo que dices, porque visudo trabaja como root, y ese se salta eso. Supongo que usa el mecanismo de bloqueo del kernel. Para hacer eso los servidores de ficheros tendrían que exportar por NFS, no samba, y tendrías que reprogramar los editores que usen tus programadores. Como teneis programadores, pídeles que te programen esa modificación >>:-) Y ten en cuenta lo siguiente: Si un programador suelta momentaneamente un archivo, para compilarlo por ejemplo, otro programador puede pillarlo en ese instante y quitarselo. Es decir, tendrías un interbloqueo en los editores, pero nada más. No en la combinación completa de programas que useis. Y tendrías que retirar todos los editores que no cumplieran con el interbloqueo de todas las máquinas a las que puedan acceder los usuarios, y cortar el acceso desde el resto de la red. Otra posibilidad es tener todos los archivos a nombre de alguien que no tenga acceso a ninguno. Cuando alguien solicita un archivo, un programa de control tendría que ponerlo a nombre exclusivo de quien lo vaya a usar, hasta que lo desactive. Ese programa de control tendríais que hacerlo, con un control estricto. Y tampoco sobre samba, sino NFS. Y tendríais problemas cuando alguno quiera compilar, si algún fichero está en manos de alguien, que es el que está probando una modificación. A lo mejor un grupo necesitaría tener acceso de lectura. Tendrías que tener control sobre los permisos que tengan los ficheros, y ten en cuenta que eso depende de quien cree los ficheros, no hay soporte para forzar uid, gid, y permisos por alguien que no sea quien esté creando el fichero. Y en el momento en que alguien tiene acceso, como es el propietario temporal, le puede cambiar los permisos, como por ejemplo, lectura para todos. Tendrías que limitar el conjunto de programas y ordenes que puede ejecutar cada usuario, de manera que no puedan hacer cosas como cambiar esos permisos. Para eso tendrías que definirlo mediante un "rbash", y no te va a ser sencillo. Otra posibilidad es que te estudies lo que se pueda conseguir mediante ACLs, que son más versátiles que los permisos clásicos de unix. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) iEYEARECAAYFAkjmz94ACgkQtTMYHG2NR9XunACfahPa35vTs7Fjse34BfUbt2FY AOkAn2vlN5lvdmmeVLhk/7XBi/pUSqPl =GnkQ -----END PGP SIGNATURE-----
El Sábado, 4 de Octubre de 2008, RŌNIN escribió:
En la red local, existe un servidor con una carpeta compartida que es visible para todos los usuarios de la red, allí se almacenan los archivos que consultan y modifican dichos usuarios.
Se requiere que se pueda bloquear un archivo para un único usuario en modo escritura y que cuando termine de editarlo, pueda ser editado por otro usuario.
En resumidas cuentas: se requiere evitar la escritura concurrente de archivos, es decir, se busca que cualquier usuario pueda reservar un archivo para editarlo, siempre y cuando ningún otro usuario lo esté accediendo en modo escritura, pero igualmente, se requiere que no se pueda realizar copias locales de la información contenida en la carpeta compartida.
* Seccion 5.5 del manual "usando samba" por ejemplo aqui. http://www.guadalinex.org/mas-programas/descargas/ayuda-sobre-linux/usando_s...
El Sábado, 4 de Octubre de 2008, jose maria escribió:
El Sábado, 4 de Octubre de 2008, RŌNIN escribió:
En la red local, existe un servidor con una carpeta compartida que es visible para todos los usuarios de la red, allí se almacenan los archivos que consultan y modifican dichos usuarios.
Se requiere que se pueda bloquear un archivo para un único usuario en modo escritura y que cuando termine de editarlo, pueda ser editado por otro usuario.
En resumidas cuentas: se requiere evitar la escritura concurrente de archivos, es decir, se busca que cualquier usuario pueda reservar un archivo para editarlo, siempre y cuando ningún otro usuario lo esté accediendo en modo escritura, pero igualmente, se requiere que no se pueda realizar copias locales de la información contenida en la carpeta compartida.
* Seccion 5.5 del manual "usando samba" por ejemplo aqui. <http://www.guadalinex.org/mas-programas/descargas/ayuda-sobre-linux/usando _samba.pdf>
* Me doy cuenta ahora que no pone el mismo asunto en el mensaje, asi que no se como va la cosa, en samba para que linux aplique los bloqueos a los usuarios unix segun los bloqueos a la windows hay que utilizar la opcion kernel oplocks o algo por el estilo, en cuanto a aplicar el atributo inmutable a un fichero a discreccion, no le veo el sentido pero en fin, has de utilizar un demonio auditor de eventos en ficheros, que ante un evento ejecute una accion y/o varias, aplique acl's , etc....., yo utilizaria inotify, pero ten en cuenta por ejemplo que el atributo inmutable, por ejemplo, se aplica logicamente tambien al usuario que lo aplica, es decir este usuario no podria modicar el fichero hasta que no quite ese atributo, por eso se llama inmutable y las acls salvo que se aplique el flag default, no son preferentes, prevalecen los permisos standard, para que sean prioritarias las acl han de aplicarse -d.
participants (5)
-
Carlos E. R.
-
Gabriel
-
jose maria
-
lluis
-
RŌNIN