Awstats für Ubuntu 8.10 konfigurieren 0

Posted by fwoeck
on Monday, April 20

Nicht der letzte Schrei, aber funktioniert: Awstats für die Zugriffsstatistik. Ein paar Schritte sind schon nötig; der unten referenzierte Blog von Sami Dalouche hat mir sehr geholfen.

Beginnen wir mit den Paketen!

Paketinstallation aus dem Repo

# apt-get install awstats

die apache2-Konfiguration

Damit die Logfiles den rechten Ort und das rechte Format haben:

ErrorLog /var/log/apache2/mephisto-error.log
CustomLog /var/log/apache2/mephisto-access.log combined

...kommt in die VHost-Conf – hier für mein Blog.

Die Aktivierung des Perl-Cgi-Scripts kommt erstmal direkt in die root-Seite des default-Hosts – brrr. Schränken wir den Zugriff mal auf unsere IP-Adresse ein. In der /etc/apache2/sites-available/default:

VirtualHost *:80>
    ServerName sat.bm.net
    UseCanonicalName Off
    ServerAdmin  webmaster@localhost
    DocumentRoot /var/www/
    Alias /awstats-icon/ /usr/share/awstats/icon/
    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory /var/www/>
        Options None
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
    <Directory /usr/lib/cgi-bin/>
        Options +ExecCGI
        AllowOverride None
    </Directory>
    <Location /cgi-bin/>
        Order deny,allow
        Deny from all
        Allow from 217.128.34.18
        Allow from localhost
    </Location>
</VirtualHost>

das File /etc/awstats/awstats.conf

In diesem Fall verwende ich nur einen einzigen Host zur Analyse, ansonsten könnte man pro Quelle vermutlich noch separate Config-Files aufstellen. Also im /etc/awstats/awstats.conf:

LogFile="/var/log/apache2/mephisto-access.log" 
SiteDomain="bm.net" 
HostAliases="rnotes.bm.net" 
DirData="/srv/data/stats/mephisto"

die Pfade einrichten

Wir brauchen noch einen Ort, wo die Auswertungsdaten landen, und der muss vom Webserver zumindest lesbar sein:

# mkdir -p /srv/data/stats/mephisto
# chown -R www-data. /srv/data/stats

einen Cronjob bauen

Schließlich muss der awstats-Prozess angestoßen werden – ein mal pro Tag reicht mir. Im File /etc/cron.daily/awstats:

#!/bin/sh
/usr/share/doc/awstats/examples/awstats_updateall.pl 
    -awstatsprog=/usr/lib/cgi-bin/awstats.pl now > /dev/null

...und das Ganze ausführbar machen:

# chmod a+x /etc/cron.daily/awstats

Daten vor der Rotation schützen

Logrotate könnte unter Umständen die apache-Logs wegrotieren, bevor awstats zugeschlagen hat. Daher fügen wir ein prerotate-Skript in die /etc/logrotate.d/apache2 ein:

prerotate
  /etc/cron.daily/awstats
endscript

Test und Start

Damit wir gleich was Vernünftiges sehen, kann man einmal zu Beginn den cronjob manuell anschmeißen. Dann sollte der Aufruf der eingerichteten Website – hier http://sat.bm.net/cgi-bin/awstats.pl eine hübsche Übersicht geben. Hey, schon vier Besucher!

Weblinks

  1. awstats.sourceforge.net
  2. howto-apache2-awstats-setup-on-debianubuntu-edgy-eft
  3. setting-up-awstats-to-parse-nginx-log-files-served-from-apache

Hurra endlich! Deaktiviere den Dell-Systemlautsprecher unter Ubuntu 0

Posted by fwoeck
on Tuesday, April 14
# vim /etc/modprobe.d/blacklist
blacklist pcspkr

# rmmod pcspkr

Netzwerkkonfiguration in Ubuntu 8.10 0

Posted by fwoeck
on Saturday, February 28

In wechselnden Netzwerkumgebungen (Firmen-LAN, Firmen-WLAN, Heim-WLAN, externes WLAN, …) hat sich die konventionelle Methode der Netzkonfiguration über /etc/network/interfaces als zu unflexibel für mich erwiesen.

Obwohl der Netzwerk-Manager in Ubuntu 8.10 sicher noch einige Zeit zur Reife benötigt, kann man ihn hier mit ein paar Tricks sinnvoll einsetzen.

interfaces leeren

Die Datei /etc/network/interfaces sollte existieren, aber leer sein(!).

Inhalt der Datei 70-persistent-net.rules

In dieser Datei stehen die physikalisch vorhandenen Karten mit ihren Aliases. Falls dort aus historischen Gründen unerwünschte oder falsche Einträge enthalten sind, kann man die Datei gefahrlos löschen – sie wird beim nächsten Boot neu erzeugt.

~> cat /etc/udev/rules.d/70-persistent-net.rules 

# PCI device 0x14e4:0x170c (b44)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:1c:23:a9:22:ec", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x8086:0x4222 (iwl3945)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:1c:bf:32:97:1b", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0"

Das File nm-system-settings.conf

Der Netzwerk-Manager(NM) wohnt in /etc/NetworkManager/. Dort musste ich sicherstellen, dass managed=false gesetzt ist.

Hier: /usr/share/doc/network-manager/README.Debian ist nachzulesen, dass der NM alle Interfaces ignoriert, die in der /etc/newtwork/interfaces stehen, falls managed=false.

Es sollte also reichen, die interfaces im Ursprungszustand zu lassen und managed=true zu setzen – hier hatte ich allerdings Schwierigkeiten beim Neustart des “alten” Netzwerkdienstes. Also:

~ > cat /etc/NetworkManager/nm-system-settings.conf 
[main]
plugins=ifupdown,keyfile

[ifupdown]
managed=false

Der Connection-Editor

Der Connection-Editor(CE) lässt sich zwar grundsätzlich aus der grafischen Oberfläche heraus starten, allerdings gab er mir bei Fehleingaben keine Meldungen zurück, sondern legte einfach das gewünschte Profil nicht an.

Beim Start via Terminal sieht man diese Meldungen aber sehr wohl. Um die Einstellungen systemweit zu schreiben, rufen wir den Kollegen mit sudo auf:

sudo nm-connection-editor

Ich habe zunächst alle bereits bestehenden Einträge entfernt und neue angelegt. Bei der Eingabe der Ethernetverbindung musste ich die MAC-Adresse meiner Karte angeben, um das Speichern der Sets zu erwirken.

Mehrere unterschiedliche WLAN-Profile funktionieren klaglos.

Für alle der o.g. Einstellungen wählt man am besten die Optionen Systemeinstellungen und Automatisch verbinden, um die Verbindungen beim Boot zu aktivieren.

OpenVPN

Der CE sieht zwar einen Reiter für die Anlage von VPNs, z.B. unter openVPN vor, aber der Import aus meiner alten /etc/openvpn-Konfiguration ist mir nicht gelungen. So starte ich den openVPN-Daemon wie gehabt relativ spät im Bootprozess und dies funktioniert glücklicherweise auch sehr gut.

/etc/…/system-connections

Am Ende sehe ich im Verzeichnis /etc/NetworkManager/system-connections meine definierten WLAN-Verbindungen – die LAN-Verbindung nicht, obwohl sie funktioniert.

/etc/NetworkManager/system-connections > cat Funknetzwerkverbindung\ 1

[802-11-wireless-security]
key-mgmt=wpa-psk
wep-tx-keyidx=0
proto=wpa;rsn;
pairwise=tkip;ccmp;
group=wep40;wep104;tkip;ccmp;
psk=...

[connection]
id=Funknetzwerkverbindung 1
uuid=d9e74930-f2e0-49f3-a01c-04363eab3359
type=802-11-wireless
autoconnect=true
timestamp=0

[802-11-wireless]
ssid=35;114;204;97;133;105;145;
mode=infrastructure
channel=0
...

Fazit

In dieser Form funktioniert das Ganze sehr gut – es gibt keine Timeouts beim Boot mehr, die DNS-Konfiguration passt sich der wechselnden Umgebung an und die Auswahl der aktiven Schnittstellen passiert schmerzlos.

Ubuntu-Images klonen 0

Posted by fwoeck
on Monday, December 22

Beim Duplizieren von Ubuntu-Images müssen verschiedene Stellen in Hinsicht auf die Netzwerkverbindungen geändert werden. Hier stehen sie:

  • /etc/hostname
  • /etc/hosts
  • /etc/udev/rules.d/70-persistent-net.rules

In der zuletzt angegebenen steht die MAC-Adresse der alten eth0-Karte.

Außerdem: Nicht vergessen, einen neuen SSH-Hostkey für den ssh-Server zu generieren!

autotest-Meldungen in Ubuntu 0

Posted by fwoeck
on Saturday, December 20

autotest ist ein Bestandteil der ZenTest-Suite und läuft als Dienst, der beim Speichern von Programmteilen deren Testspezifikationen automatisch durchläuft und die Ergebnisse anzeigt,

Wenn man das Ergebnis grafisch im Desktop seiner Ubuntu-Umgebung sehen möchte, sind nur wenige Schritte nötig:

Installation

apt-get install libnotify-bin

gem install carlosbrando-autotest-notification

und als User:

an-install

Konfiguration

Dann benötigt man noch eine Konfiguration in ~/.autotest

require 'autotest_notification'
SPEAKING = false
DOOM_EDITION = false
BUUF = false
PENDING = false
STICKY = false

und schon läuft’s!

IPV6 in Ubuntu deaktivieren 0

Posted by fwoeck
on Thursday, December 04

Dies ist schnell getan:

vi /etc/modprobe.d/aliases

...
alias net-pf-10 off ipv6

Wer mag, kann den Support auch im Firefox abstellen: man ändert die Option network.dns.disableIPv6 auf true.