Crontab squiguard : Error db_open: Permission denied



  • Bonjour à tous,

    J'ai un petit problème avec une cron et squidGuard.
    Version 2.1.4-REALEASE (amd64)
    squid 2.7.9
    squidGuard 1.4_4

    Je sais déjà que certains vont me dire que ce n'est pas PFSENSE, voir que c'est déconseillé de l'installer dessus mais peut être avez vous déjà rencontré ce problème et que vous pourrez m'aider.

    Afin de faire une maj automatique des blacklist de squidguard, j'ai mis en place cette crontab lancée via root:
    /usr/bin/nice -n20 /etc/squidGuard_blacklist_update.sh

    Le script du fichier squidGuard_blacklist_update.sh :

    #!/usr/local/bin/php -f
        $incl = "/usr/local/pkg/squidguard_configurator.inc";
        if (file_exists($incl)) {
            require_once($incl);
            sg_reconfigure_blacklist( "http://www.shallalist.de/Downloads/shallalist.tar.gz", "" );
        }
        exit;
    ?>

    Le problème est qu'après l'exécution de cette cron mon filtrage n'est plus actif.

    En regardant dans les logs de squidGuard je tombe sur ceci :
    2015-10-09 02:01:22 [32085] New setting: logdir: /var/squidGuard/log
    2015-10-09 02:01:22 [32085] New setting: dbhome: /var/db/squidGuard
    2015-10-09 02:01:22 [32085] init domainlist /var/db/squidGuard/blk_BL_adv/domains
    2015-10-09 02:01:22 [32085] loading dbfile /var/db/squidGuard/blk_BL_adv/domains.db
    2015-10-09 02:01:22 [32263] New setting: logdir: /var/squidGuard/log
    2015-10-09 02:01:22 [32263] New setting: dbhome: /var/db/squidGuard
    2015-10-09 02:01:22 [32085] Error db_open: Permission denied
    2015-10-09 02:01:22 [32085] Going into emergency mode

    En cherchant sur internet j'ai trouvé des vérifications à faire pour les problèmes d'Emergency mode.
    Mes droits sur /var/db/squidGuard sont en 755 root:proxy

    Si je me connecte à PFSENSE en terminal avec l'utilisateur root; que je lance la commande : /usr/local/bin/php /etc/squidGuard_blacklist_update.sh
    Aucun problème, la mise à jour se passe bien, et mon filtrage est bien actif derrière.

    Notez que j'ai ce problème depuis 2 semaines environ et qu'il est survenu sans modification au niveau de la configuration.

    Je ne suis pas contre une autre solution pour faire la mise à jour des listes si celle que j'ai employé n'est pas la meilleure.

    Merci d'avance à ceux qui prendront le temps de lire mon problème et pourquoi pas y trouver une solution ;)
    Je reste disponible pour tout complément d'informations que j'aurai oublié de soumettre.



  • qui est le propriétaire des data Squidguard et plus particulièrement de /var/lib/squidguard/db
    et sous quel compte exécutes tu ce script ?

    EDIT: Alzheimer  :-[  tu dis dans ton message que tu lances le script en tant que root  :-X



  • Je l'exécute avec root.

    Je n'ai rien sous /var/lib/squidguard/db

    En revanche dans mon log j'ai /var/db/squidGuard
    drwxr-xr-x  83 root      proxy      2560 Oct  9 14:17 squidGuard



  • alors qu'en standard, c'est:
    drwxr-xr-x  83 proxy    proxy      2560 Oct  9 14:17 squidGuard



  • En effet.

    Après si je fais une cron sur : /tmp/squidGuard_blacklist_update.sh qui est généré automatiquement quand on fait 'Apply' depuis l'interface
    j'ai bien les droits : drwxr-xr-x  83 proxy    proxy      2560 Oct  9 14:17 squidGuard

    Mais le problème depuis la CRON est le même que ce soit exécuté avec root ou proxy



  • Bonjour wallack,

    Si ca pourrait aider, le měme script fait la maj correctement aprės l'avoir copié de "/tmp" å "/root" et on l'exécutant "en cron sous root" comme suit  :
    /usr/bin/nice -n20 /root/squidGuard_blacklist_update.sh

    Cordialement



  • Bonjour bastion,

    Je viens d'essayer cela ne fonctionne pas pour moi.
    Même problème.


Log in to reply