Thursday, September 10, 2009

Modsecurity-console como servicio

Estuve teniendo algunos probleas con la consola de modsecurity: el application server que trae se inicia desde un script de shell y suele finalizarse el proceso que se inicia con un nohup.
Por eso, lo que hice fue modificar el archivo modsecurity-console que sería el ejecutable del mismo y en la linea 239 donde está lo siguiente:
nohup "$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dinstall4j.appDir="$app_home" -Dexe4j.moduleName="$prg_dir/$prg" "-Djava.awt.headless=t rue" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" com.install4j.runtime.Launcher start com.thinkingstone.juggler.Main false false "$prg_dir/var/logs/ stderr.log" "$prg_dir/var/logs/stdout.log" true true false "" true true 0 0 "" 20 20 "Arial" "0,0,0" 8 500 "version 1.0.5" 20 40 "Arial" "0,0,0" 8 500 -1 --co nf $prg_dir//etc/console.conf --default $prg_dir//etc/console.conf.default start "$@" &

Eliminé el comando nohup, quedando la linea de la siguiente manera:
"$app_java_home/bin/java" -server -Dinstall4j.jvmDir="$app_java_home" -Dinstall4j.appDir="$app_home" -Dexe4j.moduleName="$prg_dir/$prg" "-Djava.awt.headless=t rue" $INSTALL4J_ADD_VM_PARAMS -classpath "$local_classpath" com.install4j.runtime.Launcher start com.thinkingstone.juggler.Main false false "$prg_dir/var/logs/ stderr.log" "$prg_dir/var/logs/stdout.log" true true false "" true true 0 0 "" 20 20 "Arial" "0,0,0" 8 500 "version 1.0.5" 20 40 "Arial" "0,0,0" 8 500 -1 --co nf $prg_dir//etc/console.conf --default $prg_dir//etc/console.conf.default start "$@" &

Luengo para poner el script como daemon hice lo siguiente:
Suponiendo que tenemos la consola instalada en /opt/modsecurity-console, debemos hacer un enlace simbólico al /etc/init.d/:
ln -s /opt/modsecurity-console/modsecurity-console /etc/init.d/modsecurity-console
Y para finalizar lo agregamos en los runlevels:
update-rc.d modsecurity-console defaults



Listo eso es todo, como siempre espero que les sea útil, saludos.

No comments: