Unter Windows XP ergab sich das Problem, dass die nachinstallierten Schriftarten (also praktisch alle außer Arial, Times und Courier) von Windows nicht mehr angeboten wurden oder etwa nur in Fett+Kursiv. Wechselte ich nun in den Fonts-Ordner (c:\Windows\Fonts), wurden alle installierten Schriftarten aufgelistet. Bei einem Doppelklick wurde auch der Fontviewer gestartet und zeigte die Schriftart korrekt an.
Ich markierte alle Fonts und zog sie mit der linken Maustaste auf einen neu angelegten Backup-Ordner. Auch wenn dieser auf einer anderen Festplatte liegt, werden die Schriftarten verschoben. Die Systemfonts wie Arial und Times New Roman werden automatisch vom Verschieben ausgenommen.
Nun installierte ich sämtliche Fonts wieder, indem ich auf Datei >> Schriftarten installieren... im Fonts-Ordner ging. Eventuell kommt der Hinweis, dass Arial Bold nicht installiert werden konnte, da sie bereits vorhanden ist. Anschließend werden die Fonts wieder erkannt.
http://members.fortunecity.de/franzboska/faq/tip0189.htm gibt den Tipp, nach dem Löschen/Verschieben aller Fonts diese auch noch in der Registry zu entfernen - allerdings machte das Windows für mich, so dass mich dies nicht weiterbrachte.
Laut
http://support.microsoft.com/kb/310307/en-us sind TrueType-Schriften in Word & Co nicht verfügbar, wenn der Default-Druckertreiber eben solche nicht unterstützt. Dies war aber nicht der Fall.
Dann, endlich: Aus einem nicht näher beschrieben Grund *hüstel* habe ich meine Mutter angewiesen, die Rechte einer Datei in c:\Windows\System32 zu ändern. Nur dumm, dass sie nicht die Datei in der Mache hatte, sondern den Odner c:\windows, und dort brav sämtlichen Benutzern die "Lesen, Ausführen"-Rechte entzogen hatte. Und so etwas kommt dabei raus. Kaum setzte ich die Rechte wieder korrekt für den Windowsordner, klappte das auch mit den Schriften. Junge, Junge, das nächste mal mache ich kritische Operationen doch lieber wieder selbst...
cypressor - 9. Aug, 11:33
Ich arbeite an meinem Windows XP nur als eingeschränkter Benutzer, daher lasse ich die Updates im Hintergrund herunterladen und beim Herunterfahren des Rechners installieren.
Allerdings bemerkte ich, dass neu erschienene Updates erst bis zu 9 Tage später installiert wurden. Da erinnerte ich mich an ein Tool, das die c't mal geschrieben hat, um das Herunterladen zu beschleunigen. Schon zwei Mal habe ich seitdem versucht mit Google und heise.de dieses Tool zu finden, und habe es nicht geschafft.
Als ich aber heute erneut auf heise security über kritische Updates las, welche sofort eingespielt werden sollten, startete ich einen erneuten Anlauf und wurde unter
http://www.heise.de/ct/ftp/result.xhtml?url=/ct/ftp/03/21/118/default.shtml fündig. Der Link am Ende der Beschreibung führte mich zu dem Hotline-Praxis-Tipp
http://www.heise.de/ct/faq/hotline/04/21/05.shtml . Für die aktuelle Update-Version v5 für Windows XP ist das kleine Tool nicht mehr nötig, sondern mit Bordmitteln kann direkt der Vorgang angestoßen werden:
wuauclt.exe /detectnow. Das probierte ich gleich mal aus, ich erhielt ... keine Meldung. Also warf ich einen Blick in das Logfile unter c:\Windows\WindowsUpdate.log, doch da fanden sich nur die Meldungen, dass der Dienst bei Systemstart erfolgreich gestartet wurde. Also versuchte ich es erneut, diesmal aber mit Admin-Rechten - das gab zwar nach wie vor keine Rückmeldung auf der Konsole, aber das Logfile verzeichnete jetzt etwas Interessantes:
2006-08-09 00:14:26 3776 ecc Misc =========== Logging initialized (build: 5.8.0.2469, tz: +0200) ===========
2006-08-09 00:14:26 3776 ecc Misc = Process: C:\WINDOWS\system32\wuauclt.exe
2006-08-09 00:14:26 3776 ecc AUClnt Launched Client UI process
2006-08-09 00:14:26 3776 ecc AUClnt FATAL: Failed to get notification handle, hr=80070057
2006-08-09 00:14:37 1924 1fc AU Triggering AU detection through DetectNow API
2006-08-09 00:14:37 1924 360 AU #############
2006-08-09 00:14:37 1924 360 AU ## START ## AU: Search for updates
2006-08-09 00:14:37 1924 360 AU #########
Prima, die Suche wurde offensichtlich auf Grund meiner Eingabe gestartet. Und darunter findet sich dann auch die Meldung über gefundene Updates
2006-08-09 00:15:15 1924 414 Agent * Added update {E7D92EB3-4077-4F40-911C-8108EECB5D8C}.100 to search result
2006-08-09 00:15:15 1924 414 Agent * Added update {A51577E7-51E1-4AB1-BCD9-6106BEFAC3E8}.102 to search result
2006-08-09 00:15:15 1924 414 Agent * Added update {3DEBEA92-4512-4FCC-A423-5A6007CADEB5}.103 to search result
2006-08-09 00:15:15 1924 414 Agent * Added update {486A2F5E-3ACF-4B15-8776-4E47E07880E7}.101 to search result
2006-08-09 00:15:15 1924 414 Agent * Added update {C8F8E983-CE29-4854-B00A-4B25EC26B60F}.101 to search result
2006-08-09 00:15:15 1924 414 Agent * Added update {0CFFD50B-C7A8-44DC-9A35-78ADF3A2B30B}.101 to search result
2006-08-09 00:15:15 1924 414 Agent * Added update {7BFBB4AB-9E7D-4DB0-AC1B-E02468044CD4}.103 to search result
2006-08-09 00:15:15 1924 414 Agent * Added update {4A6505DB-DA98-4CCF-A9A2-75BE74A992B8}.101 to search result
2006-08-09 00:15:15 1924 414 Agent * Added update {B986ECE8-FC97-4EC0-B77F-6B2EF3E558E5}.103 to search result
2006-08-09 00:15:15 1924 414 Agent * Added update {F928C63F-23D0-405D-9A77-F584DF18826F}.100 to search result
2006-08-09 00:15:15 1924 414 Agent * Found 10 updates and 12 categories in search
Und so klappt es also. Prima. Gleich mal hier notieren, damit ich das auch wiederfinde...
cypressor - 9. Aug, 00:17
Ein paar "Erfahrungen" zum Grandstream Budge Tone-101 an einem sipgate VoIP-Anschluss. Die Angaben beziehen sich auf die Firmware-Version 1.0.5.16, eine neuere wird von sipgate selbst nicht ausgeliefert. Die aktuelleren Versionen 1.0.6 und 1.0.8 werden offiziell nicht unterstützt, andere haben diese auch nur mit gemischten Ergebnissen zum "Laufen" gebracht. Teilweise war das Telefon nach manuellem Flashen auch tot, so dass ich lieber die Finger davon lasse.
Portforwarding
Das Portforwarding am Router musste bei mir deaktiviert werden, da ansonsten keine Verbindung zum sipgate-Server aufgebaut werden konnte. Dabei ist die Einstellungen "NAT Traversal" unerheblich, allein bei Verwendung des STUN-Servers kommt es vor, dass zeitweise keine Telefonate möglich waren, da dieser nicht erreichbar war.
Codecs
Unabhängig von den von sipgate angegebenen unterstützten Codecs testete ich sämtlich im Grandstream verfügbaren der Reihe nach durch. Dabei stellte ich für sämtliche Alternativen jeweils den zu testenden Codec ein, wodurch das automatische Fallback verhindert wurde. Wird ein Codec nicht unterstützt, zeigt das Telefon einen Error 488 an bei dem Versuch, ein Telefonat (etwa zur Mailbox) zu führen.
G723 Error 488
G729 sehr dumpf und leise, Tastentöne werden nicht erkannt, leichte Knackser
PCMU Tastentöne werden nicht erkannt, selten Knackser
PCMA Tastentöne werden nur schlecht erkennt, leichte Knackser
iLBC Error 488
G722 Error 488
G726-32 leichte Knackser und Aussetzer, aber gute Erkennung von Tastentönen
G728 Error 488
Die "Qualitätsreihenfolge" ist also G726 -> PCMA -> PCMU -> G729. Ich kann mich noch erinnern, dass es eine Zeit ohne Knackser gab. Versuche mit QoS im Router auf Geräte/MAC-Basis, Portbasis am Switch oder UDP-Port-Basis brachten keine Veränderung/Besserung. Eventuell liegt auch ein Problem bei meinem Provider QSC vor...
Netzwerk
Offiziell unterstützt der Netzwerkanschluss nur 10 MBit und verbindet auch nur mit dieser Geschindigkeit. Interessanterweise leite ich 2x100 Mbit durch ein Kabel, wodurch kein 10 Mbit möglich ist - auch hier funktioniert der Anschluss!
Weiterhin kann ich keine feste IP-Adresse vergeben, da das Gerät zwar eine Netzwerkverbindung herstellt, allerdings nicht über Netzwerk ansprechbar ist und auch nach aussen keine Verbindung aufbaut. Daher muss ich konsequenterweise DHCP aktiviert lassen.
MESSAGE-Taste
Die Mailbox-Taste auf dem Telefon ist bei der Firmwareversion 1.0.5.16 ausser Funktion. Eine Bestätigung darüber habe ich auch vom sipgate-Support bekommen.
cypressor - 7. Aug, 22:19
How to update static addresses? If there are is no need for an additional dynamic address, simply change the update URL from
provider_url="/nic/update?system=dyndns&hostname=${host}&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG&offline=NO&myip=${ip}"
to
provider_url="/nic/update?system=static&hostname=${host}&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG&offline=NO&myip=${ip}"
in file
/PATH/TO/fli4l/DIR/opt/etc/dyndns/provider.DYNDNS. Otherwise, read the documentation about how to create a new provider entry and name it something like DYNDNS_STATIC.
How to update multiple addresses of one account? Change
DYNDNS_%_HOSTNAME OPT_DYNDNS DYNDNS_N FQDN
to
DYNDNS_%_HOSTNAME OPT_DYNDNS DYNDNS_N NOTEMPTY
in the file
/PATH/TO/fli4l/DIR/check/dyndns.txt. This disables the check for a fully qualified domain name, and you can enter multiple addresses separated by a comma in the configuration.
cypressor - 22. Jun, 11:58
Standardmäßig werden .class-Dateien leider nicht bei Doppelklick ausgeführt. Mit Hilfe einer kleinen Batchdatei kann man dies aber schaffen. Allerdings können keine .class-Dateien ausgeführt werden, welche ein Package verwenden. Für diverse Demoanwendungen reicht es aber.
@echo off
start javaw -classpath %~sdp1 %~n1 &
cypressor - 17. Jun, 15:04
Der folgende Befehl deaktiviert .DS_STORE-Dateien auf Netzlaufwerken unter Mac OS X. Damit wird aber auch jegliche Finder-Einstellung, welche für ein Netzlaufwerk vorgenommen wurde (also auch die Darstellung als Liste oder Spalten), nicht mehr gespeichert.
defaults write com.apple.desktopservices DSDontWriteNetworkStores true
cypressor - 17. Jun, 14:59
cypressor - 8. Jun, 21:41
-
Schlüssel erstellen
In einem Verzeichnis der Wahl erstellt man mit
openssl req -new > new.cert.csr
einen privaten Schlüssel und die Zertifikationsanforderung. Der Common Name (CM) muss dabei dem hostname des Servers entsprechen, etwa fs-design.homelinux.org.
-
Passwort entfernen
Mittels
openssl rsa -in privkey.pem -out new.cert.key
entfernt man aus dem privaten Schlüssel das Passwort.
-
Zertifikat für Schlüssel erstellen
openssl x509 -in new.cert.csr -out new.cert.crt -req -signkey new.cert.key -days 365
erstellt ein Zertifikat, das 365 Tage, also ein Jahr lang, gültig ist.
-
Zertifikat zum Apache kopieren
mkdir /etc/apache2/conf/ssl.key
mkdir /etc/apache2/conf/ssl.crt
cp new.cert.key /etc/apache2/conf/ssl.key/server.key
cp new.cert.crt /etc/apache2/conf/ssl.crt/server.crt
-
mod_ssl konfigurieren
Die Datei /etc/apache2/conf/ssl.conf mit dem Editor der Wahl öffnen und die Zeilen mit <IfDefine> und </IfDefine> auskommentieren. Den VirtualHost auf * setzen. Eine leere Datei für den Sessioncache anlegen mit touch /var/log/apache2/ssl_scache.
-
Server neu starten
Den httpd mit apache2ctl graceful neu starten, nun sollte er unter dem Port 443 SSL-verschlüsselt erreichbar sein.
cypressor - 21. Mai, 20:26
Aus alten Zeiten stammt noch diese Anleitung, die ich bereits mehrmals erfolgreich ausgeführt habe. Inzwischen ist aber mein Server komplett per apt eingerichtet worden, ich habe keinen Compiler mehr benötigt.
-
Apache2
Anleitung laut http://www.php.net/manual/en/install.apache2.php.
Apache httpd herunterladen und entpacken.
#> cd apache2
#> ./configure \
--prefix=/etc/apache2/
--enable-so
#> make && make install
In der /etc/apache2/conf/httpd.conf für User und Group einen existierenden Benutzer und dessen Gruppe, zb nobody und nogroup eintragen.
-
PHP4 mit GD-Library
Freetype 2, und zlib herunterladen, kompilieren und installieren ohne besondere Parameter.
libpng herunterladen, aus scripts die makefile.linux nach ../makefile kopieren, und mit make && make install kompilieren und installieren.
jpeg-6b downloaden und mit make kompilieren.
#> mkdir /usr/local/man/man1
#> cp libjpeg.* /usr/lib/
#> cp j*.h /usr/local/
#> make install
GD Graphics Library herunterladen und kompilieren.
#> cp gd.h /usr/local/lib
#> make install
PHP4 herunterladen und entpacken.
#> ./configure \
--prefix=/etc/php4 \
--with-apx2=/etc/apache2/bin/apxs \
--with-zlib \
--enable-bcmath \
--with-bz2 \
--enable-exif \
--enable-ftp \
--with-gd=/usr/local/lib \
--with-jpeg-dir
cypressor - 21. Mai, 19:58
Alle Keycodes lassen sich mit
xmodmap -phe ermitteln,
xev zeigt einen Keycode an.
KEY Apple Execute CTRL ALT F11 F10 F9 F8 F7 F6 F5 F4 F3 F2 F1
--------------------------------------------------------------------------
FN 116 117 109 Mouse3 95 76 75 74 73 72 71 70 69 Mouse2 67
normal 115 108 37 64 95 76 75 74 -- -- 176 174 160 212 101
Um die Apfel-Taste als Alt-GR zu verwenden, muss in der Datei
/etc/X11/Xmodmap noch
keycode 115 = Mode_switch eingetragen werden.
cypressor - 21. Mai, 19:58
Es gibt zwei Möglichkeiten, Java unter einem PowerPC-Linux laufen zu lassen.
Die erste ist die offene Implementierung von
Blackdown.org. Dazu trägt man einen der blackdown-mirror in der
/etc/apt/sources.list ein
deb <BLACKDOWN-MIRROR>/path/to/debian/ stable nonfree main
und installiert dann Java mit
apt-get install j2re1.3 j2se-common.
Die andere Möglichkeit besteht in der Installation der Java-Implementierung von IBM. Man erstellt sich einen US-Account für IBM und lädt dann das
IBM Development Kit for 32Bit iSeries/pSeries herunter. Das RPM-Paket wandelt man mittels
alien <RPM-Paket> in einen Debian-Installer um und installiert dieses anschließend.
#> sudo dpkg --install <DEB-Paket>
Es landet in
/opt/IBMJava2.
cypressor - 21. Mai, 19:57
Mac OS X von DVD installieren, im Disk-Auswahlmenü aus der weissen Menüleiste das Apple Disk Utility starten. Auf der Festplatte eine HFS+ Partition mit der Größe aller späteren Linux-Laufwerke anlegen (für Root, Daten und Swap).
Das Debian-Setup von CD starten, bis zur Partitionierung die normale Installation verwenden. Dort die im ersten Schritt angelegte HFS+ Partition löschen. Im freien Bereich eine mindestens 800 KByte große bootstrap-Partition anlegen, anschließen Root, Daten und Swap.
Nach der erfolgreichen Installation einen Reboot durchführen, im Bootloader l für Linux auswählen.
cypressor - 21. Mai, 19:57
Für die Verschlüsselung sind bereits existierende TLS-Zertifikate und Schlüssel Voraussetzung. Für den FTP-Server verwende ich die selben wie für den Apache Webserver.
Datei
/etc/proftpd.conf editieren:
PassivePorts 49152 49160 # Portrange for passive mode
MaxClients 2
MaxClientsPerHost 1
IdentLookups Off # Blocked port 113 slows down
<IfModule mod_tls.c>
TLSEngine on
TLSLog /var/log/proftpd.log
TLSProtocol TLSv1 # no support for SSLv2
TLSRequired off # "on" disables unencrypted connections
TLSVerifyClient off # no verification necessary
# Using certificates of Apache webserver
TLSRSACertificateFile /etc/apache2/conf/ssl.crt/server.crt
TLSRSACertificateKeyFile /etc/apache2/conf/ssl.key/server.key
AllowForeignAddress on # otherwise only localhost is accepted
<IfModule>
Im Router nicht vergessen, die Ports für die passiven Verbindungen zu weiterzuleiten.
cypressor - 21. Mai, 19:56
Da die Porteinstellungen in der Configdatei nur für die von mir nicht benutzte "standalone" Version gelten, sind ein paar mehr Änderungen nötig.
Als erstes muss in
/etc/services ein neuer Dienst mit einem Port größer 1024 erstellt werden, ich wählte 4021:
ftpd 4021/tcp # proFTPd
Der inetd darf jetzt diesen neuen Service verwalten. Dazu wird ein neuer Eintrag in der
/etc/inetd.conf erstellt:
#:STANDARD: These are standard services
ftpd stream tcp nowait root /usr/sbin/tcpd /usr/sbin/proftpd
Nach man per
ps aux | grep inetd die PID des inetd herausbekommen hat, startet man diesen neu:
#> kill -HUP <PID>
Die Überprüfung des Ports sollte jetzt den ProFTPd aktivieren:
#> fuser -n tcp 4021
4021/tcp 30956
cypressor - 21. Mai, 19:55
Aus welchen Gründen auch immer weigerte sich Terminal unter Mac OS X 10.3, deutsche Umlaute darzustellen. In
~/.inputrc musste ich erst die Optionen
set meta-flag on
set convert-meta off
set output-meta on
einfügen. Zusätzlich stellte ich unter
Window Settings -> Display -> Character Encoding noch
Western (ISO Latin 9) ein.
cypressor - 21. Mai, 19:55
Zwar klingt es auf den ersten Blick verlockend, Samba nur dann laufen zu lassen, wenn es wirklich benötigt wird, aber das funktioniert nicht wie gewünscht. In meinem Fall wurden immer wieder neue Instanzen gestartet, bis der Speicher gerammelt voll war und
killall mehrere Minuten benötigt hat, um die mehreren hundert Server wieder abzuschießen. Trotzdem gibt es hier eine kleine Anleitung.
Erst einmal muss Samba aus dem Autostart fliegen, das erledigt der Aufruf
update-rc.d -f samba remove. In der Datei
/etc/inetd.conf müssen die Einträge von
netbios-ssn und
netbios-ns editiert werden:
netbios-ssn stream tcp nowait root /usr/sbin/smbd smbd -l /var/log/log.smb
netbios-ns dgram udp wait root /usr/sbin/nmbd -s /etc/smb.conf
Mittels
ps aux | grep inetd die PID vom inetd herausbekommen und denselben neu starten mit
kill -HUP <PID>.
Ein Zugriff, zB von Windows mittels
NET USE \\<SERVER> sollte einen smbd-Prozess erzeugen. Diesen kann man per
ps aux | grep smbd anzeigen lassen.
cypressor - 21. Mai, 19:54
Samba installieren und einen Benutzer mit gültigem Systemaccount hinzufügen.
#> apt-get install samba samba-common
#> /usr/bin/smbpasswd -a <USERNAME>
Die Datei
/etc/samba/smb.conf mit dem Editor der Wahl öffnen und in den globalen Optionen die folgenden Einstellungen auskommentieren, ändern oder hinzufügen:
# Maps unknown users to the guest account (needed for browsing)
map to guest = Bad User
guest account = nobody
create mask = 0755
directory mask = 0755
# necessary for german umlauts
unix charset = iso-8859-15
cypressor - 21. Mai, 19:53
Da natürlich nicht von der zu übertragenden Partition gebootet werden darf, nehme ich eine Linux Live-CD, zB knoppizilin aus der c't.
Als Erstes wird nun mittels
partimage die Quellpartition als Image gesichert. Anschließend spielt man das Image auf die ungemountete Zielpartition. Diese wird nun gemountet, zB nach
/mnt/hdd1. Den Bootmanager GRUB installiert man mittels
#> grub-install --root-directory=/mnt/hdd1 --no-floppy --recheck /dev/hdd
auf der neuen Festplatte. Nun kann von der neuen Festplatte gebootet werden.
cypressor - 21. Mai, 19:53
Nach der Installation von libsensors per
apt-get install lm-sensors müssen beim Systemstart noch zwei Kernelmodule geladen werden. In
/etc/modules fügt man dafür 2 Zeilen an:
#> echo i2c_isa >> /etc/modules
#> echo via686a >> /etc/modules
Benutzerdefinierte Anzeigeeinstellungen nimmt man in der Datei
/etc/sensors.conf im Abschnitt von
via686a-* vor.
temp3 und
2,5V funktionierten nicht bzw. zeigen unsinnige Werte.
Nach einem Reboot (alternativ die beiden Module per
modprobe laden) kann man sich die aktuellen verfügbaren Sensordaten mit dem Befehl
sensors anzeigen lassen.
cypressor - 21. Mai, 19:52
Um den Treiber für den ITE 8212 RAID Adapter in den Linux Kernel 2.6 zu bekommen, sind (neben dem Herunterladen der
sources) folgende Zeilen in die Kernelkonfigurationsdateien hinzuzufügen.
In der Datei
/usr/src/kernel-source-2.6.8/include/linux/pric_ids.h
#define PCI_DEVICE_ID_ITE_8212 0x8212
In der Datei
/usr/src/kernel-source-2.6.8/drivers/ide/Kconfig
config BLK_DEV_IT8212
tristate "IT 8212 IDE support (Experimental)"
help
This driver adds support for the IT 8212 PCI IDE RAID Adapter.
Die Einrückungen sind beizubehalten.
In der Datei
/usr/src/kernel-source-2.6.8/drivers/ide/pci/Makefile
obj_$(CONFIG_BLK_DEV_IT8212) += it8212.o
cypressor - 21. Mai, 19:52
#> echo "set bell-style none" >> ~/.inputrc
cypressor - 21. Mai, 19:51
#> update-rc.d <BASENAME> defaults {<NN> | <sNN> <kNN>}
Hierbei bezeichnet BASENAME den Namen der Datei in
/etc/init.d, und NN ist eine Ganzzahl zwischen 00 und 99. Mit sNN und kNN kann man auch unterschiedliche Prioritäten für Start und Stopp angeben.
Alternativ lassen sich auch spezifische Vorgaben machen.
#> update-rc.d <BASENAME> start|stop <NN> <LEVEL> [<LEVEL>...]
Level ist dabei eine Ganzzahl zwischen 1 und 6 und bezeichnet das spezifische Runlevel in
/etc/rcX.d.
Da lediglich symbolische Links auf das Skript in
/etc/init.d angelegt werden, können diese ohne Bedenken auch manuell gelöscht werden. Soll aber ein Skript komplett entfernt werden aus dem "Autostart/stopp", so genügt die folgende Zeile:
#> update-rc.d -f <BASENAME> remove
cypressor - 21. Mai, 19:51
cypressor - 21. Mai, 19:50
cypressor - 21. Mai, 19:50
Dazu muss das Samba Filesystem
smbfs installiert sein.
#> mount -t smbfs -o username=XY,password=ABC //<SERVER>/<SHARE> /PATH/TO/MOUNTPOINT
cypressor - 21. Mai, 19:49
Mit
dpkg-reconfigure locales die Konfiguration der
locales aufrufen.
de_DE@Euro ISO 8859-15 hinzufügen;
en_US darf nicht default sein.
Anschließend mit dem Editor der Wahl
/etc/environment öffnen und die Zeile
LC_CTYPE=de_DE@euro
anfügen. Die Einstellungen sollten nach einem erneuten Login gültig sein.
cypressor - 21. Mai, 19:44
-
Einleitung
Parallel zu OpenVPN beschäftigte ich mich auch mit einer anderen VPN-Technik, nachdem mich ein Artikel in der c't 22/05 neugierig gemacht hatte.
-
Server unter Debian Sarge 3.1
Während VDE zwar im stable-Zweig von Debian enthalten ist, sind es die für die komplette Funktion benötigten Pakete bridge-utils und uml_utilities nicht. Um das System nicht durcheinander zu bringen, indem ich stable und unstable mische, füge ich einen extra Servereintrag in die Datei /etc/apt/sources.list hinzu, der nach der Installation wieder auskommentiert wird. Sämtliche großen Mirrors stehen zur Wahl, momentan läuft aber folgender Eintrag gut:
Nach einem apt-get update können nun die benötigten Pakete installiert werden:
#> apt-get install vde bridge-utils uml_utilities
Nun kann der unstable-Mirror in der Serverliste wieder auskommentiert werden, ein apt-get update bringt die Paketliste wieder auf den aktuellen "stable" Stand.
Im Folgenden wird ein TAP-Device angelegt, und mit einer entsprechenden IP-Adresse hochgefahren.
#> tunctl -t 1
#> vde_switch -tap tap1 -daemon
#> ifup tap1 192.168.1.1 up
-
Client unter Mac OS X
Für den Mac verwende ich VDE2, die Quelldateien können von der Projektseite bei Sourceforge heruntergeladen werden. Für die Kompilierung müssen die XCode-Tools mit GCC installiert sein.
Die Sources werden entpackt, kompiliert und installiert.
#> tar -xjf vde-2.0.2.tar.bz2
#> cd vde-2.0.2
#> ./configure
#> make
#> sudo make install
Anschließend wird auch unter OS X ein TAP-Device benötig. Da ich im Zuge von OpenVPN tunnelblick installiert hatte, war für mich keine Arbeit mehr nötig. Manuell können die TUN/TAP-Treiber von http://www-user.rhrk.uni-kl.de/~nissler/tuntap/ heruntergeladen werden. Das bei mir vorhandene Device ist tap0.
#> vde_switch --tap tap0 --daemon
Jetzt muss nur noch die Verbindung zum Server hergestellt werden. VDE tunnelt die Ethernetpakete über SSH, prinzipiell ist aber auch telnet möglich. Hier wird also jetzt der virtuelle Netzwerkstecker eingeklickt und anschließend die "Karte" hochgefahren.
#> sudo dpipe vde_plug = ssh <USER>@<SERVER> vde_plug
#> ifconfig tap0 192.168.1.2 up
Und schon sind die beiden Rechner über das (virtuelle) Netzwerk 192.168.1.0/24 verbunden.
-
Fazit
Einrichtung geht wirklich problemlos. Allerdings gibt es meines Wissens bisher keine GUI (stört das jemanden?). Riesiger Vorteil gegenüber einem "herkömmlichen" VPN ist natürlich, dass Ethernetpakete getunnelt werden, das also hier wirklich auf der alleruntersten Ebene stattfindet. Da spielt es auch gar keine Rolle, welche Protokolle darauf aufsetzen, laut Autor des c't-Artikels war sogar eine stabile PPPoE-Verbindung zu einem DSL-Modem möglich.
Einen Geschwindigkeitsvorteil gegenüber OpenVPN konnte ich aber nicht bemerken, zumindest nicht, was Pings oder Websurfen angeht. Und: Von einer offenen TCP/IP-Verbindung zwischen Server und Client sind beide Systeme abhängig!
-
VDE tunneln
Um die Verbindung zwischen Client und Server herzustellen, benötigt VDE einen Tunnel. Das Einfachste ist sicherlich SSH, da hier auch gleich die sonst nicht vorhandene Verschlüsselung mit eingebaut wird. Damit kommt man natürlich nicht durch jede Firewall, und erst recht nicht durch jeden Proxy! Es gilt also für SSH das Gleiche wie für OpenVPN. Es funktioniert auch genau so.
cypressor - 20. Mai, 17:44
As my error logfile of my Apache httpd began to grow mainly showing hacked webservers trying to find software with current exploits, I began to think how to prevent that.
I came up with the idea of redirecting these webservers to their localhost 127.0.0.1, which is not being displayed in my logfiles and additionally no error 404 message page must be created and transferred to these ugly servers.
At first, I used multiple redirects for every single exploit, but that was just too bad. So I came up with one single regular expression I added to the main configuration file. I will try to keep it updated. Here it is:
RedirectMatch permanent ^http://|//?(\
\
\
admin|\
a1b2c3d4e5f6g7h8i9|\
[aA]ds(erver)?|\
a(f|oe|q20_2)|\
awstats.pl|\
b(dh|wl)|\
b2(evo)?|\
blitzkrieger|\
blog(s?|test)|\
([Ww]eb)?[cC]al(endar)?|\
cgi(-?bin)?|\
community|\
coop|\
db(admin)?|\
(aq40|eq?|fairy|mc(_|ony-)?|neq|ony|set_|ttm|wow|zg(class)?|zul)?dkp(_?[1-3]0?|-1.[2-3].0|_?aq1?|-klasse|klein|mc|_new|old|set|-?zg)?|\
DKPAQ20|\
dr(p|upal)|\
e(lp|vent)|\
forum|\
gmc|\
[hH]orde.*|\
hosted_sites|\
includes|\
(articles/|cvs/)?(mambo/)?index2\.php|\
level|\
m(are|c(1|p)?|y(sql-?)?(admin)?)|\
module|\
OveR|\
pages|\
phi|\
phpgroupware|\
php([Aa]ds([nN]ew)?|BB2|[mM]y[aA]dmin-?2(\.\d\.\d)?)|\
(|(php/)?([pP]hp([mM]y(-(\d\.?)+)?)?)?[cC]hat(s|room)/|forum/)/?chat/messagesL\.php3|\
PMA|\
prx1\.php|\
pub/downloads|\
punkte(stand)?|\
raid(bwl|planung)?|\
README|\
rps|\
(bbs/|(z(ero)?)?board/(bbs/)?)?skin/zero_vote/error\.php|\
(web)?statu?s|\
sumthin|\
sys|\
thisdoesnotexistahaha.php|\
_?vti_bin|\
web(17)?|\
wordpress|\
wow|\
(ad)?xml(rpc|srv)(\.php)?|\
zorn|\
zul\
\
\
)(/.*)?$
http://127.0.0.1/bugMeNot
You should carefully check that none of your internal homepage structure is being affected, especially if you are running one of those softwares the exploits are targeting!
The regular expression will match at least the following URIs:
/a1b2c3d4e5f6g7h8i9
/admin
/ads
/Ads
/adserver
/af
/aoe
/aq20_2
/aq40dkp
/articles/index2.php
/articles/mambo/index2.php
/b2
/b2evo
/bbs/skin/zero_vote/error.php
/bdh
/blitzkrieger
/blog
/blogs
/blogtest
/board/skin/zero_vote/error.php
/bwl
/cal
/calendar
/Calendar
/chat//chat/messagesL.php3
//chat/messagesL.php3
/chatroom//chat/messagesL.php3
/chats//chat/messagesL.php3
/community
/coop
/cvs/index2.php
/cvs/mambo/index2.php
/db
/dbadmin
/dkp
/dkp1
/dkp_1
/dkp2
/dkp_2
/dkp20
/dkp3
/dkpaq
/DKPAQ20
/dkp-klasse
/dkpklein
/dkpmc
/dkp_new
/dkpold
/dkpset
/dkpzg
/dkp-zg
/drp
/drupal
/edkp
/edkp20
/elp
/eqdkp
/eqdkp-1.2.0
/eqdkp-1.3.0
/eqdkp_2
/eqdkp_aq1
/eqdkp-zg
/event
/fairydkp
/forum
/forum//chat/messagesL.php3
/gmc
/hosted_sites
/includes
/index2.php
/level
/mambo/index2.php
/mare
/mc
/mc1
/mcdkp
/mc_dkp
/mcony-dkp
/mcp
/module
/my
/myadmin
/mysql
/mysqladmin
/mysql-admin
/neqdkp
/onydkp
/OveR
/pages
/phi
/php/phpmychat//chat/messagesL.php3
/phpgroupware
/phpads
/phpadsnew
/phpAdsNew
/phpBB2
/phpmyadmin2
/phpMyAdmin-2.2.3
/phpMyAdmin-2.2.6
/phpMyAdmin-2.5.1
/phpMyAdmin-2.5.4
/phpMyAdmin-2.5.6
/phpMyChat//chat/messagesL.php3
/phpMyChat-0.14.2//chat/messagesL.php3
/phpMyChat-0.14.5//chat/messagesL.php3
/PMA
/prx1.php
/pub/downloads
/punkte
/punktestand
/raid
/raidbwl
/raidplanung
/README
/rps
/set_dkp
/sumthin
/sys
/ttmdkp
/_vti_bin
/web
/web17
/webcalendar
/webCalendar
/WebCalendar
/Webcalendar
/wordpress
/wow
/wowdkp
/xmlrpc
/xmlsrv
/zboard/skin/zero_vote/error.php
/zeroboard/bbs/skin/zero_vote/error.php
/zgclassdkp
/zgdkp
/zorn
/zul
/zuldkp
Updates
2006-06-12
- Added PhpMyChat exploit.
- Added Zeroboard exploit.
2006-06-08
- Made RegEx more readable by spanning over multiple lines.
- Added /prx1.php (more precisely the GET http://www.theleadads.com/prx1.php HTTP/1.0 request) to matched URIs.
- Added Mambo exploit with URIs /index2.php, /articles/index2.php, /articles/mambo/index2.php, /cvs/index2.php, /cvs/mambo/index2.php and /mambo/index2.php.
- Added /phpgroupware to URIs.
- Added /cal, /calendar and /webcalendar to matched URIs.
2006-06-05
- Added possible leading double slash.
2006-05-22
- Added /sumthin to matched URIs.
cypressor - 19. Mai, 11:53