Hi:
Como comentaron que a partir de de la versión 2.4 el kernel no lleva soporte para ipchains, opte por desinstalar ipchains. Tras desinstalar, los mensajes de error desaparecieron tanto los del kernel como los del frontend. Pero ahora guarddog (frontend) me lanza otro error cuando cierro la aplicación.
ERROR Can't determine the firewall command! (Is ipchains or iptables installed?)
He estado investigando y parece ser que el script que se ejecuta tras cerrar el frontend puede que sea este /etc/rc.firewall dentro del script hay un trozo código que intenta determinar que comando a utilizar si iptabes o ipchains. Mis nociones de programación las tengo en los talones de los pies, pero creo que tengo localizado es problema es una condición
if [ -e /proc/sys/kernel/osrelease ]
Esta ruta en mi debían sarge no existe, por eso se sale de la condición y no puede determinar que kernel tengo instalado, ni averiguar si tengo iptables. ¿que significa esa condición? ¿que hay en esa ruta? ¿por que no la tengo?
Código:
#!/bin/bash
.
.
.
# If you change the line below then also change the # DISABLED line above.
DISABLE_GUARDDOG=0
if test -z $GUARDDOG_VERBOSE; then
GUARDDOG_VERBOSE=0
fi;
if [ $DISABLE_GUARDDOG -eq 0 ]; then
# Set the path
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/sbin
# Detect which filter command we should use.
FILTERSYS=0
# 0 = unknown, 1 = ipchains, 2 = iptables
# Check for ipchains.
if [ -e /sbin/ipchains ]; then
FILTERSYS=1
fi;
if [ -e /usr/sbin/ipchains ]; then
FILTERSYS=1
fi;
if [ -e /usr/local/sbin/ipchains ]; then
FILTERSYS=1
fi;
# Check for iptables support.
if [ -e /proc/sys/kernel/osrelease ]; then
KERNEL_VERSION=`sed "s/^\([0-9][0-9]*\.[0-9][0-9]*\).*\$/\1/" < /proc/sys/kernel/osrelease`
if [ $KERNEL_VERSION == "2.6" ]; then
KERNEL_VERSION="2.4"
fi;
if [ $KERNEL_VERSION == "2.5" ]; then
KERNEL_VERSION="2.4"
fi;
if [ $KERNEL_VERSION == "2.4" ]; then
if [ -e /sbin/iptables ]; then
FILTERSYS=2
fi;
if [ -e /usr/sbin/iptables ]; then
FILTERSYS=2
fi;
if [ -e /usr/local/sbin/iptables ]; then
FILTERSYS=2
fi;
fi;
fi;
if [ $FILTERSYS -eq 0 ]; then
logger -p auth.info -t guarddog "ERROR Can't determine the firewall command! (Is ipchains or iptables installed?)"
[ $GUARDDOG_VERBOSE -eq 1 ] && echo "ERROR Can't determine the firewall command! (Is ipchains or iptables installed?)"
false
.
.
.
.