All posts tagged “server”

ASUS WL-500g premium und OpenWRT – Part II

Im ersten Teil dieses kleinen How-To – oder besser Erfahrungsberichtes – ging es um den grundsätzlichen Austausch der Firmware auf meinem ASUS-Router “Asus WL-500GP Broadcom RTL”
. Der 2. Teil beschäftigt sich nun mit NTP und dem Einbinden einer USB-Festplatte.

NTP-Client

Um die Zeit auf dem Router aktuell zu halten, sollte zunächst erst mal ein NTP-Client via Webfrontend “System->Settings” installiert werden. Wem noch der eine oder NTP-Server fehlt, sollte sich diese Liste einmal anschauen. Das ganze kann man natürlich auch via SSH auf der Console machen:

ipkg install ntpclient
CET-1CEST-2,M3.5.0/02:00:00,M10.5.0/03:00:00

USB-Laufwerk

Um ein USB-Laufwerk einzubinden, benötigt man zunächst die entsprechenden Kernel-Module für USB und das Dateisystem (hier EXT3):

ipkg install kmod-usb2
ipkg install kmod-usb-storage
ipkg install kmod-ext3

Alternativ kann aber auch VFAT (ipkg install kmod-vfat) bzw. EXT2 (ipkg install kmod-ext2) als Dateisystem installiert werden oder USB1.1 (ipkg install kmod-usb-uhci anstatt ipkg install kmod-usb2)

Sind alle Module installiert, muss noch die Datei “/etc/modules.d/60-usb-storage” verändert werden, in dem die scsi_mod-Zeile (falls vorhanden) durch “scsi_mod max_scsi_luns=8” ersetzt wird. Nun einfach den Router neu starten. Danach sollten alle Module automatisch geladen werden.

Um die Festplatte nun partitionieren zu können, benötigt man fdisk und e2fsprogs:

ipkg install fdisk
ipkg install e2fsprogs

Soll zudem noch eine SWAP-Partion angelegt werden, muss auch noch das Paket swap-utils auf dem Router installiert werden. Nun geht´s eigentlich wie von selbst, mit fdisk <device> legt man seine gewünschten Partitionen an, erzeugt mittels mke2fs -j <partition> das Dateisystem und bindet diese dann, ganz “Linux like” mit mount im System ein, also z.B.:

mount /dev/scsi/host0/bus0/target0/lun0/part1 /mnt

Die SWAP-Partition erzeugt man, falls benötigt mit mkswap und bindet diese dann mit swapon ins System ein. Damit die Partitionen bei jedem booten automatisch eingebunden werden, reicht es, diese zunächst in der Datei /etc/fstab einzutragen und dann mit dem kleinen Script /etc/init.d/S10mount

#!/bin/sh
#
# Mount script
#

if [ -f /etc/fstab ]; then
## switch on swap spaces
swapspaces=`grep swap /etc/fstab | awk{ print $1 }`
for i in $swapspaces; do
echo -n “adding swap space $i… ”
swapon $i
echo ” done.”
done

## just mount everything els
echo -n “mounting all filesystems… ”
mount -a
echo ” done.”
else
echo “fstab not found!
fi

automatisch bei jedem Neustart des Systems einzubinden. Werden die Partitionen nicht automatisch in das System eingebunden, reicht die kleine Zeile

/etc/init.d/S10mount &

in der Datei /etc/init.d/custom-user-startup und schon sollte auch diese Problem behoben sein.

Bye Bye Blogscout.de

BlogScout LogoBlogscout.de wird/ist geschlossen. Ja richtig gelesen, Blogscout macht dicht, Neuanmeldungen sind nicht mehr möglich, ab sofort wird nicht mehr gezählt und der Login funktioniert ebenfalls nicht mehr. Stattdessen bekommt man auf jeder Seite ein “Blogscout.de ist geschlossen” zu lesen.

Auf den ersten Blick verwundert es einen, auf den 2. Blick, und wenn man die Gründe im Blog ließt, kann man die Beweggründe, die Dirk zu diesem Schritt veranlaßt haben, durchaus nachvollziehen.

Schade ist es trotzdem, nicht zwingend wegen der Counter-Funktion, das erledigen gute Statistik-Programme für den Webserver heutzutage auch, vielmehr das viele kleine “drum herum” war meiner Meinung nach das, was BlogScout so interessant gemacht hat.

Tja … schade eigentlich … bleibt mir eigentlich nur Dirk eine dickes “Danke” für diesen Service zu sagen.

[via The Exit]

ASUS WL-500g premium und OpenWRT

Da sich mein “Router-Server” zu hause leider nun endlich das Zeitliche gesegnet hat, musste ein Ersatz her. Meine Wahl viel auf den “ASUS WL-500g Premium“, – eine entsprechende Firmware vorausgesetzt – eine eierlegende Wollmilchsau unter den Routern:

  • WAN: 1x 100Base-TX
  • LAN: 4x 100Base-TX
  • WLAN: 802.11b/802.11g
  • 2x USB 2.0 (z.B. für eine USB-HDD und Drucker oder WebCam)

Der einzige Kritikpunkt, den der Router hat war die Firmware, aber diese lässt sich dort glücklicherweise austauschen. Meine Wahl viel auf OpenWrt bzw. auf X-Wrt, da sich diese Distribution mittels des, an Debians apt-get angelehnten, Paket-Managers ipkg mit diversen Paketen leicht erweitern lässt.

Um die neue Firmware zu installieren benötigt man lediglich das ‘Firmware Restoration Tool’, welches sich auf der mitgelieferten CD befindet, sowie ein aktuelles Image der Firmware seiner Wahl.

Bei OpenWTR hat man die Möglichkeit zwischen dem WhiteRussian- und dem Kamikaze-Zweig zu wählen. Meine Wahl viel auf die aktuelle Version 7.0.7 aus dem Kamikaze-Zweig. Zwar befindet sich die Web-Oberfläche X-Wrt dort noch in einem Beta-Status – ein bischen sollte man sich daher mit Linux und der Console auskennen – allerdings hat Kamikaze ein paar Vorteile wie z.B. Config-Files im Ordners /etc.

Das Aufspielen der neuen Firmware ist allerdings relativ einfach. Zunächst müssen die “ASUS Wireless Utilities” installiert und dann das Tool “Firmware Restauration” gestartet werden.

Firmware Restauration

Hier nun das heruntergeladene Firmware-Image auswählen und auf “Hochladen” klicken, dann den Router kurz vom Strom trennen und beim Einstecken des Netzsteckers die kleinen Taste ‘Restore’ direkt neben dem Stromanschluss drücken. Alles weitere passiert dann automatisch und der Router sollte mit der Systemwiederherstellung beginnen.

Wenn nicht, einfach den letzten Schritt noch einmal durchführen.

Nach ein paar Minuten sollte sich dann der Router automatisch neustarten und man hat über die URL 192.168.1.1 Zugriff auf die Weboberfläche von openWRT. Alternativ kann man sich aber auch z.B. über Putty direkt per SSH an dem Router anmelden.

Nach dem ersten Login sollte man auf jeden Fall zuerst ein Passwort für den Root-Zugriff vergeben, ansonsten hat man ein Scheunentor bei sich im Arbeitszimmer stehen, was mit Sicherheit nicht im Sinne des Erfinders liegt.

Und nun? Antwort coming soon im Teil II dieses kleinen HowTo´s!

Go PHP5

Support GoPHP5orgNoch 213 Tag, dann ist die Zeit für PHP4 abgelaufen … zumindest wenn es nach einigen prominenten Open-Spource-Projekten geht.

Die Open-Spource-Projekte Symfony, Typo3, phpMyAdmin, Drupal, Propel und Doctrine haben sich zu dem Projekt Go PHP 5 zusammengeschlossen, um endlich das Ende für die doch schon arg in die Jahre gekommene PHP Version 4 einzuläuten. Auch einige Hoster sind bereits mit von der Partie.

Anwender haben nun noch knapp 200 Tage Zeit, Ihre Systeme auf PHP5 umzustellen. Nach dem 5. Februar 2008 werden die beteiligten Projekte keine neuen Fetaure-Releases mehr veröffentlichen die PHP 4 unterstützen. Zwar wird es weiterhin eine PHP4 Unterstützung der Projekte geben, neue Funktionen können aber nur genutzt werden, wenn auf der darunterliegenden Server-Plattform mindestens die PHP Version 5.2 – die ja nun auch schon über ein halbes Jahr alt ist – installiert ist.

Ein Schritt in die richtige Richtung? Meiner Ansicht nach schon, vor allem aus dem Blickwinkel eines Entwicklers. Aber auch die zahlreichen Verbesserungen von PHP5 machen einen Umstieg von PHP4 auf PHP5 mehr als sinnvoll.

Bleibt abzuwarten, in wie Weit das Projekt Früchte trägt. Hoster und Administratoren haben auf jeden Fall genug Zeit, sich auf die neue Situation einzustellen. Und wer trotzdem nicht von PHP4 loskommen will/kann, der findet im Netz 1001 Lösungsansätze, wie auch ein Mischbetrieb reibungslos funktionieren kann.

PHP 5.2.3 released

PHP wurde in der Version 5.2.3 veröffentlicht und behebt, neben diversen Bugs, auch einen Fehler in der Funktion chunk_split() sowie im Timeout-Handhabung von nicht blockierenden SSL-Verbindungen. Alle Änderungen sind wie immer dem Release Announcement zu entnehmen.

Laut Stefan Essern gibt es allerdings noch immer bekannten Sicherheitslücken, die in der neuen Version nicht berücksichtigt wurden. Ein Umstieg auf die neue Version ist dennoch anzuraten.

Tip: Bei der Gelegenheit sollten Nutzer gleich das Schutzsystem Suhosin installieren. Zwar ist Suhosin auch nicht der Weisheit letzter Schluss, aber es sollte den eigenen Server vor bekannten und unbekannten Fehlern in PHP-Anwendungen und im PHP-Kern ein wenig besser schützen. Wer Suhosin nicht installieren möchte – wieso auch immer – sollte sich den Hardening-Patch einmal anschauen.

Proxy-Server

Ein Proxy-Server kann bekanntlich mehrere Funktionen haben, er kann als (Werbe)Filter dienen, das lokalem Netz und Internet trennen oder zur Zugriffssteuerung verwendet werden.

Vollkommen unergründlich ist mir allerdings die Tatsache, wieso in der heutigen Zeit – quasi im Breitbandzeitalter – immer noch Leute einen Proxy als Zwischenspeicher (Cache) nutzen. Ok, durch das Zwischenspeichern können Anfragen schneller beantwortet und die Netzlast verringert werden, aber bei einer 16er DSL-Leitung halte ich eine solche Vorkehrung für nicht notwendig, zumal eine vollständige Aktualität der aufgerufenen Webseite nicht gewährleistet werden kann und nur unnötig zu Verwirrungen führt.

Serverumzug

D2k zieht auf einen neuen Server um .. oder besser ist schon umgezogen. Sollte also der eine oder andere Kommentar plötzlich nicht mehr vorhanden sein, hängt er mit Sicherheit in der alten Datenbank fest.

Besitzstandwechsel von Tabellen leicht gemacht

Will man bei einer Datenbank eines MS SQL-Servers die Besitzrechte aller Datenbanken ändern, so kann man dieses bekannter weise über “Rechtsklick->Alle Tasks->Berechtigungen verwalten” erledigen.

Soll der Besitzer aller Tabellen einer Datenbank geändert werden, ist dieses Vorgehensweise allerdings suboptimal. Besser und vor allem schneller geht es in einer solchen Situation mit

sp_MSForEachTable ‘sp_changeobjectowner ‘‘?’‘,’‘NeuerBesitzer’

Leider funktioniert diese Methode nicht bei Stored Procedures (SP), hier reicht es allerdings aus, für alle SP ein SQL-Script zu generieren und überall, wo der Benutzer mittels setuser gesetzt wird, diesen gegen den neuen Benutzer auszutauschen (setuser N’NeuerBesitzer’).