Nach einem Update auf Version 2.2.2 von pfSense startete der Proxy squid nicht mehr, welches das systemlog per Eintrag unrecognized: ‚url rewrite bypass‘ meldet. Die Lösung liegt aber leider nicht in der Meldung.
Dieser Fehler tritt normalerweise auf, wenn eine falsche Version von Squid in der Konfiguration angesprochen wird. Squid unterscheidet sich hier anhand der Parameter von Version 2.x zu Version 3.x, dies bildet auch der Code der für die automatische Konfiguration von squidGuard für squid unter pfSense ab.
/usr/local/pkg/squidguard_configurator.inc:
$pf_version=substr(trim(file_get_contents("/etc/version")),0,3); define('REDIRECTOR_OPTIONS_REM', '# squidGuard options'); define('REDIRECT_CHILDREN_OPT', 'url_rewrite_children'); if ($pf_version >= 2.2) { define('REDIRECTOR_PROGRAM_OPT', 'url_rewrite_program'); define('REDIRECT_BYPASS_OPT', 'url_rewrite_bypass'); define('REDIRECTOR_PROCESS_COUNT', '16 startup=8 idle=4 concurrency=0'); } else { define('REDIRECTOR_PROGRAM_OPT', 'redirect_program'); define('REDIRECT_BYPASS_OPT', 'redirector_bypass'); define('REDIRECTOR_PROCESS_COUNT', '5'); }
Der Code ist meiner Meinung nach absolut richtig. Auch eine Änderung der Verzweigung brachte leider keinen Erfolg.
Eine Reinstallation der beiden Pakete half auch nicht.
Erst die Lösung mit dem Anlegen einer neuen Target Categorie brachte den gewünschten Erfolg:
Es wird eine Targetcategorie angelegt und diese in den Common ACLs aktiviert.
Nach einem Neustart von squidGuard laufen beide Dienste wieder
Der Fehler trat bis jetzt nicht nur bei mir auf und ich hoffe, dass es bald einen Bugfix hierzu geben wird,