Bitlbee + ZNC and weechat

Just some snippets for the Installation of Bitlbee, ZNC and weechat.

The connection chart:

Bitlbee (server) <= ZNC (server) <= Weechat (Client)

I’ve created an extra user (im) for the server programs.

Installation and configuration of Bitlbee

wget http://get.bitlbee.org/src/bitlbee-3.0.4.tar.gz
tar xfv bitlbee-3.0.4.tar.gz
cd bitlbee-3.0.4

aptitude install  libotr2-dev libssl-dev libglib2.0-dev
./configure --otr=1 --msn=1 --jabber=1 --oscar=1 --twitter=1 --yahoo=0 --otr=1 --ssl=openssl --etcdir=/etc/bitlbee

make
make install install-etc install-doc

Changes i’ve made to the config.

/etc/bitlbee/bitlbee.conf:

RunMode = ForkDaemon
User = im
DaemonInterface = 127.0.0.1
DaemonPort = 6667
HostName = SomeHostName

Connect to your Server and do the normal Configuration (may be you have to change the DaemonInterface IP to connect remotely).  Type "help quickstart1" in the channel. It will tell you what to do...

Installation and configuration of ZNC

aptitude install znc
sudo -i -u im
znc -c

Configuration:

...
Nick [Nick defined in the bitlbee configuration]
Server localhost 6667
...
User Module perform

Then connect to your znc and type in the following command (replace Password with your bitlbee password):

/msg *perform PRIVMSG &bitlbee :identify Password
/save

This will identify ZNC against bitlbee. More Information abount configuring ZNC and Weechat can be found here.

 

Tags: , , ,

How to identify the harddisks filesystem

I had an harddisk with an unknown filesystem. The mount command without any option didn’t work, so i had to find out the filesystem.

There is one simpel command to do this:

hellmann linux # file -s /dev/sdb1
/dev/sdb1: x86 boot sector, code offset 0x3c, OEM-ID "TSD FAT ", sectors/cluster 64, sectors 976771120 (volumes > 32 MB) , FAT (32 bit), sectors/FAT 119221, serial number 0x4d1d59b, unlabeled

Now i can use the mount command with the -t option to simply mount this partition (don’t know why it doesn’t detect the filesystem automatically):

mount -t vfat /dev/sdb1 /mnt/usb

Tags: ,

Netzwerk testen mit ping

Viele kennen das Problem:

Man will mal eben schnell überprüfen, ob der Server / Client / Netzwerkdevice Netzwerkprobleme hat und ping ihn. So weit so gut, soll der ping dann doch länger laufen weiß man bei Probleme oftmals nie wann genau sie aufgetreten sind.

Ein normaler ping sieht wie folgt aus und lässt keinen Rückschluss zu, wann er ausgeführt wurde.

user@computer:~ $ ping pcspinnt.de
PING pcspinnt.de (81.28.232.70) 56(84) bytes of data.
64 bytes from 81.28.232.70: icmp_req=1 ttl=54 time=55.3 ms
64 bytes from 81.28.232.70: icmp_req=2 ttl=54 time=53.5 ms
64 bytes from 81.28.232.70: icmp_req=3 ttl=54 time=52.4 ms
64 bytes from 81.28.232.70: icmp_req=4 ttl=54 time=55.4 ms
64 bytes from 81.28.232.70: icmp_req=5 ttl=54 time=54.4 ms
64 bytes from 81.28.232.70: icmp_req=6 ttl=54 time=53.3 ms

Um nun auch die Uhrzeit zu bekommen, kann man folgendes machen:

user@computer:~ $ ping pcspinnt.de|while read ping; do echo "$(date +%d.%m.%Y\ %H:%M:%S) => $ping"; done
18.11.2011 13:41:58 => PING pcspinnt.de (81.28.232.70) 56(84) bytes of data.
18.11.2011 13:41:58 => 64 bytes from 81.28.232.70: icmp_req=1 ttl=54 time=52.9 ms
18.11.2011 13:41:59 => 64 bytes from 81.28.232.70: icmp_req=2 ttl=54 time=55.3 ms
18.11.2011 13:42:00 => 64 bytes from 81.28.232.70: icmp_req=3 ttl=54 time=54.2 ms
18.11.2011 13:42:01 => 64 bytes from 81.28.232.70: icmp_req=4 ttl=54 time=53.2 ms

Sollte es dann zu einem Ausfall kommen, weiß man genau, wann er stattgefunden hat. Hier nun noch einmal der eigentliche Befehl:

ping pcspinnt.de|while read ping; do echo "$(date +%d.%m.%Y\ %H:%M:%S) => $ping"; done

Gefunden habe ich das ganze auf hak5.org

Tags: , ,

Einrichten eines Relay unter Exchange 2010

Gerade musste ich auf einem Exchangeserver 2010 ein Relay einrichten, über den ein Server ohne Authentifizierung eine E-Mail verschicken soll.

Dazu richtet man in der Exchange Management Console unter Server Konfiguration => HubTransport einen neuen Receive Connector ein.

Unter dem Reiter Netzwerk, muss zum einen der Mailserver selber (im oberen Teil) und der Server, der die Mail sendet (im unteren Teil), eingetragen werden.  Da ich keine Authentifizierung habe, wurden alle Häckchen im Reiter Authentifizierung entfernt.

Damit “jeder Benutzer” E-Mails verschicken darf, muss im letzten Reiter der Haken bei “Anonyme Gruppen” gesetzt werden.

So weit so gut, bloss ist dies leider nur die halbe Miete. Bis hierher kann der Server E-Mails nur intern relayen. Bei dem Versuch E-Mails an eine externe Adresse zu verschicken bekommt man aber weiterhin die Meldung “Relay access denied.”.

Um in dem Connector die Berechtigung zu setzen, damit man auch E-Mails nach extern schicken kann, muss man in die Exchange Power Shell wechseln. Dort führt man dann folgenden Befehl aus. Mein Connector heisst hierbei schlicht und einfach relay.

Get-ReceiveConnector “relay” | Add-ADPermission -User “NT AUTHORITY\ANONYMOUS LOGON” -ExtendedRights “ms-Exch-SMTP-Accept-Any-Recipient”

Sollte man eine deutsche GUI haben muss der Name des Users angepasst werden:

Get-ReceiveConnector “relay” | Add-ADPermission -User “ANONYMOUS-ANMELDUNG”  -ExtendedRights “ms-Exch-SMTP-Accept-Any-Recipient”

Danach ist auch das Versenden nach extern möglich.

Tags: , , ,

Volle Windeln, lautes Geschrei und kurze Nächte…

… wir haben ihn. Am 9.8.2011 ist unser Sohn Marian (3760g  53 cm) gesund und mit Papas Frisur :-D   auf die Welt gekommen.  Wir freuen uns riesig.

 

 

Nikon D70s und ufraw

Um die Fotos meiner Kamera in jpg’s zu verwandeln nutze ich immer ufraw und das dann bevorzugt im batch Mode (ufraw-batch). Die Parameter habe ich bisher immer von Hand mit übergeben. Da wir aber in letzer Zeit sehr viele Fotos gemacht haben, war das irgend wann zu nervig und ich habe mir eine config gebaut. Man benötigt dafür zuerst einmal das Kamera Profil, was man hier runterladen kann.

Danach legt man sich die Config Datei an z.B. .ufrawrc

Anschließend kann man ufraw-batch mit dem Paramter –conf=/path/to/conf/.ufrawrc aufrufen. Die Bilder werden dann automatisch mit den passenden Einstellungen umgewandelt.

Tags: , , ,

znc, weechat und neues ServerOS @home

Bei mir zu Hause hat sich einiges getan. Nachdem eine Platte im Software Raid-5 ausgefallen ist, habe ich den ganzen Server neu installiert. Diesmal auf Funtoo. Ich war es leid, bei jedem do-release-upgrade zu beten, dass der Server wieder hochkommt.  Mittlerweile läuft auch das Meiste wieder. Einige Dinger muss ich momentan aufgrund mangelnden Wissens noch von Hand starten (z.B. pppoe). Was ich auch noch nicht ans laufen bekommen habe, ist eine VM mit pfsense. Momentan routet der Server selber und als Firewall läuft wieder Shorewall. Das ist auf jeden Fall schneller, stabiler und besser als die Alice Hardware, die schon für DNS Anfragen durschnittlich 1-2 Sekunden braucht.
Wenn ich dann endlich kvm mit pci passthrough ans laufen bekomme (momentan scheitert es noch am Kernelmodul macvtap) werde ich pfsense installieren, dass dann eigene Netzwerkkarten bekommt.

Was ich dann auch mal direkt angegangen bin, ist ein IRC Bouncer. Deaddy hat mir, wenn auch nur indirekt ;)znc empfohlen. Die Installation war super einfach. Ich habe znc-config aufgerufen und mich einfach durch das Setup gehangelt. Anschließend habe ich die Datei .znc/znc.pem durch mein Zertifikat ersetzt.
Soweit so gut. Nun begann der spannende Teil. Als irc Client nutze ich seit kurzem WeeChat (Empfehlung von Ands aus der Warpzone). Bei der Einrichtung müssen ein paar Sachen beachtet werden. Zuerst einmal habe ich das Root Zertifikat von CaCert hinterlegt. Dazu legt man das Verzeichnis ~/.weechat/ssl an. Mit wget -O ~/.weechat/ssl/CAs.pem http://www.cacert.org/certs/root.crt hinterlegt man dann das Zertifikat. Danach startet man  weechat und richtet den Server mit folgenden Befehlen ein:

/server add homeserver homeserver.dyndns.org/12345 -ssl (Hinter dem / befindet sich der Port hinter dem ZNC erreichbar ist)
/set irc.server.
homeserver.autoconnect on

An der Authentifizierung habe ich mir dann die Zähne ausgebissen. Eigentlich ist es eine ganz simple Sache. Mich hat es jedoch einige Stunden gekostet, bis mir jemand aus dem weechat-Channel den richtigen Tip gab.
ZNC verlangt für die Authentifizierung ein /quote PASS user:SecretPassword . Ich konnte das zwar von Hand eingeben, aber egal wie ich es eingerichtet  habe, bei autoconnect wurde es nicht mit übergeben. Der Trick ist ganz simpel:

/set irc.server.homeserver.password user:SecretPassword

Kommentar den dich noch dazu bekam: Steht doch im ZNC Wiki auf der erste Seite.

Tags: , ,

Benutzerprofile im Server 2008 löschen

Um ein Benutzerprofile im Server 2008 zu löschen muss man zuerst die Eingabeaufforderung als Administrator starten (Rechten Mausklick auf cmd.exe => “Als Administrator starten”)

Dort gibt man dann folgendes ein:

rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,3

Hiermit startet man die alt bekannten Systemeigenschaften (jetzt unter Server 2008 “Erweiterte Systemeinstellungen”).  Unter Benutzerprofilen kann man dann über Einstellungen das Profil löschen.

 

Meine ssh config / autossh

Langsam hat sowohl privat, wie auch beruflich meine ssh Nutzung massiv zugenommen. Immer mehr Hosts kamen hinzu und auch die Tunnel nach Hause wurden immer komplexer.

Also habe ich meine ssh config mal komplett überarbeitet. Deaddy hat mich vor ein paar Tagen auf die Idee gebracht, über die .ssh/config Aliase zu definieren. Das Ganze sieht dann ungefähr so aus:

Host home
        User            hellmann
        HostName        home.server

Außerdem kann man darüber auch Forwards definieren:

Host home
        User                hellmann
        HostName            home.server
        # Dynmaischer proxy
        DynamicForward      1080
        # SMTP
        LocalForward        25 192.168.0.1:25
        LocalForward        80 192.168.0.1:80

Das ganze ist ja schon mal ganz nett und man muss nicht für jeden Server einen alias in der .bashrc anlegen.  Eine weitere Sache die mich genervt hat, waren die reconnects meines Servers zu Hause.  Bei einem reconnect soll die ssh Verbindung (bzw. die Tunnel)  einfach neu aufgebaut werden. Das ganze dann natürlich automatisch.

Bei meine Recherchen bin ich dann auf autossh gestossen. Am Anfang lief das Programm überhaupt nicht rund, aber mittlerweile kümmere ich mich um meine SSH Tunnel überhaupt nicht mehr. Autossh sorgt dafür, dass meine Tunnel, im Falle eines reconnects meines Servers zu Hause, automatisch wieder aufgebaut werden.
Dazu habe ich zuerst in meiner .ssh/config einen alias definiert, unter dem die ganzen Tunnel definiert wurden (z.B. forward). Danch habe ich dann einfach folgenden Befehl in meine .xsession kopiert und direkt nach einem Neustart waren die Tunnel da:

autossh -f -M 12745 -N forward

Kurze Erklärung der Parameter:

  • -f    Startet das Programm automatisch im Hintergrund (keine Ahnung warum die -f genommen haben )
  • -M 12745 Gibt den Port an der zur Überwachung genutzt wird. Dieser ist frei wählbar. Man sollte einen nehmen, der noch nicht genutzt wird.
  • -N Dies ist ein ssh Parameter. Er sorgt dafür, dass kein Remote Befehl ausgeführt wird (z.B. die Shell gestartet wird)
  • forward Dies ist der alias, der in der .ssh/config angelegt wurde.

Die Parameter sollten auch in dieser Reihenfolge angegeben werden. Ich hatte Probleme, als sie noch in anderer Reihenfolge standen.

Mittlerweile will ich das Ganze nicht mehr missen. Alle Probleme konnte ich nach einiger Bastelei zum Glück lösen. So wie ich es oben beschrieben habe, funktioniert es bei mir schon seit mehreren Wochen.

 

Tags: ,

Spielereien mit xscreensaver

Gestern in der Warpzone hat Deaddy etwas mit dem xscreensaver Phosphor rumgespielt. Was dabei rumgekommen ist, seht ihr hier.

Endlich mal ein sinnvoller Bildschirmschoner.

Tags: ,