[OT] Samba + ESET (LD_PRELOAD)
Saludos,
Tengo un servidor samba al cual le instale un antivirus para servidor de
archivos de modo que los clientes windows estén más protegidos.
La cuestión es que el fabricante del software a la hora de cargar un módulo
para analizar los archivos al ser abiertos/cerrados por samba dice que hay
que hacer lo siguiente:
(...)
In order to activate the On-access scanner immediately after file system
start-up, the ?LD_PRELOAD? environment
variable must be defined within the appropriate network file server
initialization script.
Example: Let's assume we want to have the On-access scanner to monitor all
file system access events immediately
after starting the Samba server. Within the Samba daemon initialization
script (/etc/init.d/smb), we would replace the
statement
daemon /usr/sbin/smbd $SMBDOPTIONS
with the following line:
LD_PRELOAD=/usr/lib/libesets_pac.so daemon /usr/sbin/smbd $SMBDOPTIONS
In this way, selected file system objects controlled by Samba will be
scanned at system start-up.
(...)
Estoy usando debian 6, con samba de los repositorios y el archivo
/etc/init.d/samba parece ser distinto de al que se refiere el fabricante.
Lo que yo intenté fue en el /etc/init.d/samba es esto:
(...)
if [ "$RUN_MODE" != "inetd" ]; then
log_progress_msg "smbd"
ESTA LINEA -> if ! start-stop-daemon --start --quiet --oknodo
--exec LD_PRELOAD=/opt/eset/esets/lib/libesets_pac.so /usr/sbin/smbd -- -D;
then
log_end_msg 1
exit 1
fi
fi
(...)
O sea, le agregué LD_PRELOAD=/opt/eset/esets/lib/libesets_pac.so luego de
--exec.
Al ejecutar samba obtengo:
[....] Starting Samba daemons: nmbd smbdstart-stop-daemon: unable to stat
//LD_PRELOAD=/opt/eset/esets/lib/libesets_pac.so (No such file or directory)
failed!
Y el modulo existe:
ls /opt/eset/esets/lib/
esets_dac esets_icap esets_pop3 esets_wwwi libesets_pac.so
libspamcatcher.so.0.0.0
esets_ftp esets_imap esets_sci libesetphp.so libspamcatcher.so
libspamcatcher.so.6.3.5
esets_gwia esets_mird esets_smfi libesets_asdk.so libspamcatcher.so.0
ssfi
esets_http esets_modules esets_smtp libesets_gcm.so
libspamcatcher.so.0.0 wwwi
Sin embargo, si en la consola ejecuto:
LD_PRELOAD=/opt/eset/esets/lib/libesets_pac.so /usr/sbin/smbd -D
Funciona bien.
Alguna idea? De que otra forma puedo hacer el LD_PRELOAD?
PD: El software no lo compré, de modo que no tengo soporte.
Gracias de antemano.
Reply to: