Vor circa anderthalb Monaten gab es von der Router und Firewall-Distribution pfSense ein größeres Update von Version 2.2.x auf 2.3. Dieses beinhaltet neben zahlreichen Verbesserungen auch eine von Grund auf völlig überarbeitete Web-Oberfläche. Allerdings reagiert das System mit den Standardeinstellungen gerade unter der neuen Web-Oberfläche auf meiner Alix 2D13 ziemlich träge. Um nicht zu sagen – es ist so ziemlich unbenutzbar, weil es permanent zu einer Zeitüberschreitung von Seiten des Web-Servers gibt. Auch der Zugang mittels SSH ist dann nicht mehr so angenehm schnell möglich. Um dennoch die ältere 386-Plattform nutzen zu können, hilft folgende Konfigurationsänderung in der pfSense-Weboberfläche aus.:
Unter Diagnostics -> NanoBSD muss unter dem Menüpunkt Permanent Read/Write Status das Häkchen gesetzt sein.
Für die Zukunft ist es wahrscheinlich besser das alte Alix-Board mit der 500MHz AMD Geode CPU und den 256 MB RAM gegen ein moderneres APU 2 Board zu ersetzen.
Kategoriearchiv: Software
Apache Logfiles anonymisieren oder abschalten
Soweit ich das richtig verstanden habe, dürfen nach dem deutschen Recht Webserver keine IP-Adressen abspeichern, solange sie aus technischen oder geschäftlichen Gründen nicht zwingend erforderlich sind. (siehe TMG §15)
Das gilt sowohl für den Webserver als auch für Kommentare in den Content-Managemand-Systemen. Ein Apache ist in der Standardeinstellung aber nicht nach der deutschen Rechtslage voreingestellt. Mit ein paar Zeilen in der Konfiguration lassen sich die Logfiles eines Webservers anonymisieren oder ganz abschalten.
Logfiles anonymisieren
Eine Möglichkeit ist das anonymisieren von Logfiles. Die Einträge werden dabei weiterhin in die Dateien geschrieben – doch mit entfernter IP-Adresse. Unter Ubuntu 14.04 wechselt man in das Konfiguraionsverzeichnis /etc/apache2/conf-available/ und öffnet die Datei other-vhosts-access-log.conf, um die Logeinstellungen für vHosts zu ändern. Eine neue Zeile wird hinzugefügt:
LogFormat "[IP] %l %u %t \"%r\" %>s %b" vhost_combined
Danach muss der Webserver neu gestartet werden:
service apache2 reload
Statt der echten IP eines Clients erscheint nun „[IP]“ in den Logfiles.
Auf ähnliche Weise wird die Einstellung für die Errorlogs geändert. Die Datei /etc/apache/apache2.conf öffnen und folgende Zeile hinzu fügen:
ErrorLogFormat "[%t] [%l] [pid %P] %F: %E: [client [IP]] %M"
Logfiles abschalten
Wer ganz auf den Accesslog verzichten kann, kann diesen auch ganz abschalten und so Ressourcen sparen. Dazu wird in /etc/apache2/conf-available/other-vhosts-access-log.conf einfach die Zeile „CustomLog …“ mit einem vorangestellten „#“-Zeichen auskommentiert. Dasselbe gilt für den Errorlog: Hier muss in /etc/apache2/apache2.conf die Einstellung „ErrorLog“ auskommentiert werden.
Nach jeder Konfigurationsänderung ist ein Neuladen der Konfiguartionsdateien nötig, damit die Einstellung aktiv werden.
service apache2 reload
Update: 12.10.2019 18:00 Uhr
Ich habe mich ja für das vollständige Abschalten der Logfiles entschieden, wenn ein HTTP-Client auf dieses Blog Anfragen schickt.
Um die Access-Logs zu deaktivieren, reicht es nach wie vor aus, die Zeile „CustomLog …“ in der Datei /etc/apache2/conf-available/other-vhosts-access-log.conf aus zu kommentieren.
Um die Fehler-Logs zu deaktivieren, reicht es hingegen beim meinem aktuell eingesetzten Apache nicht mehr, die Zeile „ErrorLog“ in der Datei /etc/apache2/apache2.conf einfach mit einem „#“-Zeichen aus zu kommentieren. Der Apache stört sich stattdessen daran, dass kein Wert für diese Konfiguartion in der Datei vorhanden ist und verweigert das neue Einlesen der Datei bei ihm als einen bereits laufenden, beziehungsweise er würde sich gar nicht erst als Dienst starten lassen. Alternativ lässt sich die Abschaltung des Loggings von gescheiterten Anfragen in der Datei wie folgt konfigurieren.:
…
# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a
# container, error messages relating to that virtual host will be
# logged here. If you *do* define an error logfile for a
# container, that host's errors will be logged there and not here.
#
#ErrorLog ${APACHE_LOG_DIR}/error.log
ErrorLog /dev/null
#
# LogLevel: Control the severity of messages logged to the error_log.
# Available values: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the log level for particular modules, e.g.
# "LogLevel info ssl:warn"
#
#LogLevel warn
…
wego-Wetterclient für das Terminal
wego ist ein ASCII-Wetterclient für das Terminal, welcher eine go-Bibliothek um einen python-Wrapper schnürt, um via curl Wetterinformationen auf das Unix-Terminal zu holen. Eine schöne nerdige Art, wie man die aktuelle Wettervorhersage auch ohne HTTP-Overhead und Webbrowser hübsch auf den Computer dargestellt bekommt. Ich habe mir diesen mal auf meinem Mac installiert.
Features:
- zeigt forecast-Wetterdaten für den Zeitraum von 1 bis 7 Tagen
- hübsche ASCII-Art Icons
- angezeigte Informationen (Metrische, imperiale und SI-Einheiten)
- Temperatur
- Windrichtung und Geschwindigkeit
- Vorhersage
- Niederschlagsmenge und Wahrscheinlichkeit
- SSL
- Unterstützung mehrerer Sprachen
- automatisches Konfigurationsmanagement mit ingo
Abhängigkeiten:
- eine laufende Go-Umgebung ab Version 1.5
- UTF-8 Terminal mit 256 Farben
- eine vernünftige proportionale Schrift
- einen API-Key für das BackEnd
Installation
Mit MacPorts oder jedem anderen beliebigen Paket-Manager Go installieren:
sudo port install go
Einen separaten Ordner für die Source-Files und Binaries von Go im Heimatverzeichnis anlegen:
mkdir Applications/Go
Umgebungsvariable setzen:
export GOPATH=/Users/franky/Applications/Go
Zum Installieren oder Updaten des wego-Binaries in der gesetzten $GOPATH-Variable ausführen:
go get -u github.com/schachmat/wego
Setup
- Einmal wego ausführen. Dies führt zu einem Programmabbruch und einer Fehlermeldung. So wird aber im Heimatverzeichnis die Datei .wegorc erzeugt.
- Mit forecast.io einen Account erzeugen
- Unter https://developer.forecast.io/register einen Account erzeugen
- Folgende Konfigurationsvariablen in der Datei .wegorc anpassen:
backend=forecast.io location=40.748,-73.985 forecast_api_key=YOUR_FORECAST.IO_API_KEY_HERE
- Danach weitere persönliche Einstellungen, wie Verwendete Einheit, Sprache usw. anpassen.
- wego erneut ausführen. Und schon wird das Wetter von forecast für die nächsten Tage vorhergesagt.
Mit dem Befehl Applications/Go/bin/wego wird dann die Wetterabfrage gestartet. Alternativ kann man sich aber noch einen passenden Alias in der .profile im Heimverzeichnis anlegen.
SIGINFO
Durch eine der letzten FreakShow-Podcastfolgen bin ich auf ein tolles Feature hingewiesen worden. Wenn sich im Terminal ein laufender Prozess befindet, so kann man durch Drücken der Tastaturkombination <Ctrl> + <T> eine Abfrage an diesen sich seinen aktuellen Status anzeigen lassen.
Ursprünglich unter DEC’s VMS implementiert, wurde diese Funktion später in den Terminaltreiber von 4.3BSD übernommen.
Wie in dem folgendem Screenshot zu sehen, besitzt das Unix-Programm dd für SIGINFO sogar einen eigenen Handler.
Leider gibt es die Funktion nur auf allen BSD-Systemen, bzw. deren Derivaten wie OpenBSD und Mac OS X, aber nicht unter Linux.
Meine Spieleliste
Was macht man so, wenn man Langeweile hat.? Man kommt auf die komischsten Ideen. Dabei ist mir mal in den Sinn gekommen, zu erfassen mit welchen Computerspielen – vornehmlich auf PC und Mac – ich in meinem bisherigen Leben so meine Zeit verdaddelt habe. Wobei ich sagen muss, dass ich längst nicht alle wirklich durchgespielt habe. Ich hoffe dennoch, dass ich in Zukunft weiterhin Zeit und Muse haben werde, damit diese länger wird. Zum gegenwärtigen Zeitpunkt freue ich schon sehr auf die Veröffentlichung von Thimbleweed Park von Ron Gilbert, welches ich 2014 auf Kickstarter mit gefundet habe.

