[gelöst] Squid - Logging auf Loghost
-
Hallo,
ich habe squid als Proxy installiert und will, dass die Squid-Logs auf einen externen Loghost geschrieben werden.
Ich habe dazu im WWW gefunden, dass bei der Squid-Konfiguration bei den Custom Options "access_log syslog:local:4" eingetragen werden muss.
Das allein hat bei mir nichts bewirkt. Erst als ich in der /etc/syslog.conf die Zeile. @loghost
angefügt habe hat es - nach einem Neustart von syslogd - funktioniert.
Leider überlebt die Zeile verschiedene andere Änderungen an der squid-Konfiguration (und vermutlich auch einen Neustart der pfSense) nicht.
Gibt es eine Möglichkeit, den Eintrag zu "fixieren"?
(einen Cronjob, der das immer wieder in die Config schreibt finde ich nicht besonders elegant!)Gruss
Edgar -
Ich verstehe nicht ganz.
Erst als ich in der /etc/syslog.conf die Zeile
. @loghost
angefügt habe hat es - nach einem Neustart von syslogd - funktioniert.
Leider überlebt die Zeile verschiedene andere Änderungen an der squid-Konfiguration (und vermutlich auch einen Neustart der pfSense) nicht.Wenn du was in der squid Konfig änderst wird die Syslog-Konfig neugeschrieben?
-
Hallo,
nein - wenn ich ". @loghost" in die Config schreibe und danach den Daemon neu starte funtktioniert's mit dem externen Logging.
Wenn danach irgendwas in der Config vom squid über die Weboberfläche geändert wird, verschwindet mein Eintrag aus der Config-Datei (und das externe Logging funktioniert dann naturgemäss auch nicht mehr).
Gruss
Edgar -
Hej Edgar,
also wenn du was in der WebGUI an der squid Konfiguration veränderst wird die syslog Konfig neugeschrieben? Oder hast du dich dort nur verschrieben?
LG
-
ja - so scheint's zu sein …
Edgar
-
nach dem Update auf die 2.1.5 von pfSense habe ich festgestellt, dass es definitiv so ist, dass die /etc/syslog.conf nach einem Reboot des Systems "neu geschrieben wird" und dabei die manuell in der Datei vorgenommenen Änderungen nicht übernommen werden.
Vielleich weiss ja jemand, an welcher Schraube man da drehen muss?Gruss
Edgar -
soweit ich weiß wird die syslog.conf über die Datei /etc/inc/system.inc generiert.
VG
-
Danke.
Jetzt kann ich mich mal damit beschäftigen …
Gruss
Edgar -
Hallo Zusammen,
sorry dass ich das nochmals frage.
Kann jemand mir dann sagen wie ich die Logfiles auf einem external Server sende ?
Ich habe mir heute 2.1.5-RELEASE (NanoBSD) installiert.
Danke ! -
Menüpunkt: Status - System Logs
Tabreiter: Settings - Remote Logging OptionsDa kann der Loghost eingetragen werden.
(ich nehme 'mal an, dass die GUI auf NanoBSD die gleiche ist, wie bei einer "normalen" pfSense-Installation).
Gruss
Edgar -
Hallo,
Danke für die Antwort.
Ja die GUI auf NanoBSD genau die Gleiche ist.
Diesen Menüpunkt kenne ich. Allerdings wird da nicht den Access-Log von Squid aufgelistet.
Ich möchte aber die Logfiles von Squid (//var/squid/logs/access.log) auf einem externen Server senden, denn ich nutzte gerade ein Alix Board und die SD Karte sehr schnell voll wird… Also ich möchte einen externen Server aufsetzen, und dorthin den Access Log schreiben.
Ist das möglich ?
Danke -
Du musst bei den "Custom Options" auf dem Proxy-Server-TAB
"access_log syslog:local:4"
eintragen. (Das steht übrigens genauso im ersten Beitrag dieses Threads).Über die GUI geht das scheinbar nicht.
Gruss
Edgar -
Ich nutzte Rsyslog. Muss ich noch was in meiner Konfigurationsdatei eintragen damit das funktioniert ?
-
Das kommt wohl ein bisschen auf Deine Distribution an.
Auf Debian musst Du 2 Zeilen in der /etc/rsyslog.conf einkommentieren (sind defaultmässig auskommentiert):
provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514Danach muss der rsyslog-Daemon neu gestartet werden.
Wenn Du eine andere Distribution nutzt, schau' z.B. mal hier:
http://lab4.org/wiki/Rsyslog_mit_MySQL_als_zentraler_Logserver
oder hier:
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux_OpenStack_Platform/3/html/Installation_and_Configuration_Guide/Configuring_the_rsyslog_Server.htmloder benutze eine Suchmaschine Deiner Wahl mit "rsyslog loghost" als Suchbegriff.
Die squid-Logs landen übrigens (bei mir) in /var/log/messages auf dem Loghost.
Gruss
Edgar -
Ich habe dazu im WWW gefunden, dass bei der Squid-Konfiguration bei den Custom Options "access_log syslog:local:4" eingetragen werden muss.
Das allein hat bei mir nichts bewirkt. Erst als ich in der /etc/syslog.conf die Zeile. @loghost
angefügt habe hat es - nach einem Neustart von syslogd - funktioniert.
Gruss
EdgarHallo,
Also ich habe auf einem Debian Server Rsyslog installiert.
Pfsense nutze ich mit einem NanoBSD Image auf Alix Board.
Squid ist auf Pfsense installiert als Package und ich möchte die Access.log Datei auf dem externen Server (Debian) schreiben lassen.Hier wird von einer Syslog.conf datei gesprochen. Ist damit hier die Datei auf dem Debian Server gemeint ODER auf Pfsense ? Denn auf Pfsense finde ich diese Datei nicht.
Auch woher weiss Squid dass local4 die IP 192.168.2.10 entspricht ? @eanneser:
Menüpunkt: Status - System Logs
Tabreiter: Settings - Remote Logging OptionsDa kann der Loghost eingetragen werden.
(ich nehme 'mal an, dass die GUI auf NanoBSD die gleiche ist, wie bei einer "normalen" pfSense-Installation).
Gruss
EdgarDieser Loghost gilt auch für Squid ? oder nur für die aufgelisten Optionen ?
![2014-08-31 15_06_41-Status_ System logs_ Settings.jpg](/public/imported_attachments/1/2014-08-31 15_06_41-Status_ System logs_ Settings.jpg)
![2014-08-31 15_06_41-Status_ System logs_ Settings.jpg_thumb](/public/imported_attachments/1/2014-08-31 15_06_41-Status_ System logs_ Settings.jpg_thumb) -
Hallo Zusammen,
inzwischen habe ich mich mit dem Thema "Logfiles" intensiver beschäftigt.
Ich habe auch inzwischen die syslog.conf in /etc gefunden (Symbolischer Link).Damit die Logfiles auf einem remote Server gespeichert werden, sollte man hier "access_log syslog:local:4" in den Custom options in Proxy Server eintragen.
Das tut auch, bei einem Reboot bleibt sie auch in Squid.conf enthalten. Hier kein Problem.Nur wenn ich das sich genauer anschaue, auf dem remote Server wird hier nicht gespeichert was man haben will, sondern es wird hier den Content von der Datei /var/log/portalauth.log/portalauth.log gespeichert und nicht /var/squid/logs/access.log.
Und die Erklärung ist relativ einfach. In syslog.conf steht hier :
local4.* %/var/log/portalauth.logAber auch wenn ich in dieser Datei dies eingebe :
"local5.* %/var/squid/logs/access.log"
Funktioniert es nicht.
Wie bekomme ich dann die Access.log datei auf dem Loghost ? Vielen Dank im Voraus. -
Ist das Thema wirklich gelöst?
Da anscheinend noch offene Punkte da sind, sollte man das Topic von "gelöst" auf "offen" (o. ä.) wechseln.
Ist doch etwas verwirrend… ;-)just my two cents...
-
… es hat jemand - nachdem er im gelösten Thread noch 'was hinzugefügt hat - einen neuen Thread zum Thema aufgemacht:
https://forum.pfsense.org/index.php?topic=81171.0
Insofern ist das hier gelöst ...
Gruss
Edgar -
nach dem Update auf die 2.1.5 von pfSense habe ich festgestellt, dass es definitiv so ist, dass die /etc/syslog.conf nach einem Reboot des Systems "neu geschrieben wird" und dabei die manuell in der Datei vorgenommenen Änderungen nicht übernommen werden.
Hallo Edgar,
dieses Problem stört mich auch. Hast Du an der /etc/inc/system.inc etwas machen können oder eine andere Lösung gefunden?
Ich habe bisher den access.log noch in eine andere Datei schreiben lassen und diesen dann gesichert. Damit war ich die Rotation und den evtl. Verlust von Informationen los und konnte zudem auf der lokalen Platte sichern, ohne einen Logserver aufsetzen zu müssen. Für meine Bedürfnisse war das ideal - bis die syslog.conf nicht mehr verändert werden konnte in 2.1.5.
Grüße
Michael -
Hi,
ich hab' mir die Datei angeschaut und bin zu dem Schluss gekommen, dass mir das zu riskant ist, da auf die Schnelle 'was zu verändern.
Wenn ich dazu komme, werde ich mich eingehender mit der Datei beschäftigen, bis dahin lebe ich damit, dass ich nach einem Reboot (kommt ja eh' nicht oft vor) den Eintrag für den Loghost neu mache …
Wenn jemand vorher eine Lösung findet - bitte posten.
Gruss
Edgar