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

Servidor FTP (vsftpd) y enlaces simbólicos



Hola, listeros:

Antes de nada, quiero aclarar que este no es el típico problema de tener
enjaulado el servidor FTP y un directorio que apunta fuera de la jaula.

Mi problema es el siguiente:

Tengo un servidor FTP enjaulado al que se suben de vez en cuando
archivos. Estos archivos semanalmente son movidos por un script a un
almacen y en su lugar se deja un enlace simbólico con ruta absoluta.
Como el servidor FTP está enjaulado, la raíz del sistema no coincide
con la suya, por lo que a ojos del servidor FTP el enlace simbólico
no enlaza con un archivo existente. Como los ficheros se descargan por
web, no hay ningún problema en las descargas.

El problema surge cuando se quiere actualizar un fichero existente. He
comprobado que el servidor FTP no se comporta como los comandos cp o mv
de linux. Con estos comandos, si se sobreescribe un enlace simbólico con
un fichero regular, desaparece el enlace simbólico y su lugar lo ocupa
el nuevo fichero. En cambio, cuando se sobreescribe un fichero, el FTP
no hace esto, lo que hace es seguir la ruta del enlace simbólico y
sustituir el fichero apuntado. Y ese es el problema: como el fichero
apuntado "no existe", se produce un error y la subida del fichero falla.
Si primero se borra el fichero del servidor (enlace simbólico) y luego
se sube la nueva versión del fichero, no hay problema.

He brujuleado por internet pero sin éxito y sospecho que el problema es
irresoluble[1], pero por si acaso lo pregunto: ¿hay algún modo de hacer que
al subir un fichero, vsftpd sustitutuya el enlace simbólico, en vez de
seguir la ruta y cambiar el fichero enlazado?

[1] Alguno podrá argumentar que puedo usar rutas relativas en los
enlaces. El problema de eso es que entonces si un usuario decide
reorganizar un poco los ficheros del servidor, creando subdirectorios y
metiendo dentro de él ficheros, los enlaces simbólicos se romperán.

Gracias de antemano.

-- 
   Parezco en mi fortuna al Manzanares,
que con agua o sin ella siempre es río.
                  --- Tomé de Burguillos ---


Reply to: