Archive for the ‘Linux’ Category

Verschlüsselung, Fehler und MySQL ohne InnoDB

Dienstag, September 1st, 2009

Hallo,

ich habe gestern etwas mit meiner aktuellen Verschlüsselung und dm-crypt rum gespielt und wollte meine /tmp Partition etwas anders verschlüsseln als bisher. Nach dieser Anleitung hat es leider nicht so geklappt wie ich mir das vorgestellt habe.  Nachdem diverse Versuche nicht geklappt haben, habe ich die “geschrottete” Partition mit gparted formatiert, wollte wieder booten, doch leider kam ich nicht mehr in mein System, also zurück in gparted und dann ist da mein Boot-Flag für meine / Partition weg. Ok, danach war ich dann wieder soweit wie vorher. Mein System funktioniert, aber ich kann mich nicht einloggen. Also habe ich ein neue verschlüsselte /tmp Partition erstellt. (Befehle u.a. hier)

Leider kam ich danach immer noch nicht in mein System. Ich konnte jedoch nach den richtigen Anpassungen in der /etc/fstab und der /etc/crypttab alles korrekt mounten. Das Problem: die Rechtevergabe in /tmp galt nur für root und nicht für meinen aktuellen Benutzer. Also konnte ich mich nach einem freundlichen “chown -hR <user>:<user> /tmp” wieder in mein System einloggen. Juheeee! (ich hatte fast nicht mehr daran geglaubt und schon diverse andere Distributionen als Linux runter geladen :-) )

Ok, soweit so gut. Ich habe eine lokale lighttpd und mysql Installation, die ich manuel starte um diverses zu programmieren.

Nur leider startet mein mysql Server nicht mehr so wie er soll. Und wirft komische Fehler, zu denen man alles mögliche im Internet findet. Der Fehler wenn mysql gestartet wird: ERROR 2013 (HY000) at line 2: Lost connection to MySQL server during query und hier der Fehler, wenn ich eine einfache Abfrage gegen die DB schicke: ERROR 1286 (42000): Unknown table engine ‘InnoDB’ . Na gut, man könnte meinen, dass die InnoDB Engine aus ist, ist sie aber laut my.cnf nicht! Dies kann man in der my.cnf nachsehen oder so innerhalb der mysql Console: “show variables like ‘have_innodb’;” und wenn hier steht “have_innodb = DISABLED” dann müsst ihr das in der Konfiguration anpassen, wenn hier aber wie in meinem Fall “have_innodb = NO” steht, dann habt ihr ein Problem.

Ich habe dann noch etwas recherchiert und hätte eig. auch selbst auf die Lösung kommen können, denn dieser kleine Befehl war des Rätsels Lösung: “chmod -R 0777 /tmp“. Ist ja auch klar, wenn man bedenkt, wer nach der neuen Formatierung Zugriff auf /tmp hatte.

Vielleicht erspart es ja dem einen oder anderen Ärger mit MySQL und komischen Fehlermeldungen.

howto: KVpnc and the group password

Freitag, April 17th, 2009

Hi,

if you get a pcf file to import e.g. for KVpnc then everything works fine, but when you want to connect to your VPN-Server you need to enter a ‘group password’. Ok, so how to get this group password? Very easy, it’s written in plain text in the pcf file. Just do a:

cat profile.pcf | grep GroupPwd

and then copy the encrypted password and paste it here to get the password as clear text. Now you can enter the group password in KVpnc and you can now connect to your VPN-Server.

Have fun

Handy Synchronisierung mit Ubuntu, Funambol, Genesis-Sync und dem E71

Sonntag, April 5th, 2009

Per USB oder Bluetooth mit multisync etc. konnte ich mein Nokia E71 nicht mit evolution syncronisieren, deshalb habe ich weiter recherchiert und bin auf funambol gestoßen. Hierbei handelt es sich um die OpenSource Lösung des mobilen Synchronisierungs-Servers von Funambol.
Mein Ziel ist simpel, ich will nur meine Kontakte und Kalendereinträge zwischen meinem Rechner und Handy hin und her synchronisieren. (Es geht jeweils immer nur eine Kategorie, dies sollte von vornherein klar sein!)

Ziel: Kontakte und Kalender bidirektional synchronisieren
Voraussetzungen: Ubuntu, Evolution, WLan mit konfiguriertem Netzwerk und ein Nokia E71(das auch per Wlan ins Internet kann!)

Anmerkung: es gibt viele hilfreiche Dokus! für Windows gibt es auch eine Funambol Version!

Zuerst lädt man sich den funambol Server für Linux runter (https://www.forge.funambol.org/download/), dann installiert man den Server (sudo sh ./funambol-xyz.bin -> am besten man lässt die Standardkonfiguration und installiert alles brav in /opt/Funambol) und öffnet folgende Datei: /opt/Funambol/bin/funambol und passt den FUNAMBOL_HOME Pfad wie folgt an:

FUNAMBOL_HOME=/opt/Funambol

Man kann das oben genannte Skript auch nach /etc/init.d/ kopieren, um den Server einfacher zu starten oder zu stoppen. Mit ps aux | grep funambol könnt ihr einsehen, ob der Server läuft oder wenn ihr nichts geändert habt könnt ihr den Server unter: http://localhost:8080/funambol/ds erreichen.

Ein nettes Admin Tool gibt es auch, hier muss aber eig. nichts angelegt werden, auch nicht das Handy oder ein neuer Benutzer, dies geschieht automatisch (siehe Dokumentation). Das Programm liegt unter /opt/Funambol/admin/bin und dann funamboladmin.

Also der eigene Sync-Server läuft und ist erreichbar, was nun? Wir benötigen noch 2 Programme, also passen wir erstmal die Datei /etc/apt/sources.list an und fügen folgendes hinzu:

#SyncEvolution
deb http://www.estamos.de/download/apt stable main

#genesis-sync
deb http://ppa.launchpad.net/frederik-elwert/ppa/ubuntu intrepid main
deb-src http://ppa.launchpad.net/frederik-elwert/ppa/ubuntu intrepid main

speichern die Datei, aktualisieren apt vie apt-get update und installieren anschließend:

sudo apt-get install syncevolution genesis-sync

Ok, ihr habt es fast geschafft, jetzt startet man genesis-sync (eine GUI für syncevolution), und nutzt bei der Konfiguration das Template für Funambol und tragt als Servernamen ein, was ihr wollt und als Server-Adresse: http://localhost:8080/funambol/ds (auf eurem Handy müsst ihr natürlich die IP des Rechners, auf dem der Server läuft eintragen!). Hier ein paar Screenshots, damit auch nichts schief geht:

config genesis-sync

config genesis-sync

config genesis-sync

config genesis-sync

config genesis-sync

config genesis-sync

Ok, jetzt könnt schon evolution und funambol synchronisieren. Das ist natürlich wichtig, denn der Server erkennt nicht, wann ihr in evolution eine Änderung vor nehmt und es läuft schließlich alles über den Server!

Die Einrichtung im Handy ist denkbar einfach, ihr klickt euch bis zur Synchronisierung und erstellt dort ein neues Profil, gebt die oben genannte Serveradresse ein und bei der Datenbank für die Kontakte: cards und beim Kalender: event (sollte auch logisch sein, wenn ihr genesis-sync konfiguriert!).Screenshots (+ Infos) finden sich hier.

Jetzt könnt ihr alles synchronisieren, das heißt wenn ihr auf eurem Handy einen Kontakt ändert, synchronisiert ihr diesen mit dem Server, dann via genesis-sync den Server mit evolution und dann habt ihr auch den Eintrag in evolution. Und umgekehrt!

Zur Sicherheit sollte man natürlich Backups von Evolution erstellen, mir reichen die Kontakt und Adressdatenbanken unter /home/<user>/.evolution/ und dann die Ordner addressbook und calendar weg sichern und wenn alles schief geht wieder zurück kopieren.

So läuft nun endlich eine reibungslose bidirektionale Synchronisierung! Yeah!

Für Thunderbird gibt es wohl auch gute Lösungen und allgemein werden viele Handys unterstützt, etc. Für mich die absolut beste Lösung, denn Kontakte würde ich nie alle bei irgend einem Anbieter hosten!!!

Quellen die echt helfen:
funambol doku Seite, ubuntu wiki Eintrag zu funambol, und google sicher auch!

eeePC 901 mit verschlüsselter /home Partition und Ubuntu Netbook Remix

Donnerstag, März 12th, 2009

Das hier ist keine ausführliche Anleitung und macht das alle auf eure eigene Gefahr hin Daten zu verlieren!!! Also Vorsicht!

Hier ist also die stichpunktartige Anleitung, um /home zu verschlüsseln. Es wird davon ausgegangen, dass ihr die interne 4gb ssd für / formatiert habt und die andere mit 8gb für /home.

- sudo apt-get install modconf
- run sudo modconf
- enable:
* kernel/crypto and then aes_generic and leave following Message blank
* kernel/drivers/md  and then dm-crypt and leave following Message blank
(this will also install kernel/drivers/md/dm-mod)
- sudo apt-get install cryptsetup hashalot
- sudo init 6
- sudo su
- cp -av /home/<user> /mnt
- logout
- strg+alt F3, login as user, switch to root
- as root: umount /home
- cryptsetup –verbose –verify-passphrase luksFormat /dev/sdb1
- confirm with: YES
- enter PW: xyz
- cryptsetup luksOpen /dev/sdb1 home
- enter PW
- mkfs.ext3 /dev/mapper/home
- mount -t ext3 /dev/mapper/home /home
- cp -av /mnt/<user> /home

- Add the following to /etc/crypttab: home /dev/sdb1 none luks
- backup /etc/fstab: cp /etc/fstab /etc/fstab.bak
- edit /etc/fstab
- uncomment line with /home (with #)
- and add this: /dev/mapper/home /home ext3 defaults,relatime 0 2
- reboot with: init 6

Jetzt noch ein swap-image erstellen, innerhalb von /home (dies muss dann logischerweise nicht verschlüsselt werden!)

- create Swap-Image (1536 MB = 1,5 GB = 3/2 existing RAM)
- sudo su
- dd if=/dev/zero of=/home/<user>/swap.img bs=1M count=1536
- initialize as Swap-Partition
- mkswap swap.img
- start Swap
- swapon /<path>/swap.img
- test: free

- add the following to /etc/fstab
/home/<user>/swap.img  none  swap  sw  0 0

- init 6

Have fun und immer schön vorsichtig sein, bei Fehlern könnt ihr euch schnell aussperren und Daten verlieren!

Das wars. Ich reboote gerne nach solchen Änderungen, um zu sehen ob alles geklappt hat, aber das könnt ihr machen wie ihr wollt!

Quellen: 1, 2

Desktop Launcher für Truecrypt Container

Mittwoch, Februar 4th, 2009

Wer USB-Sticks einsetzt und darauf sensible oder persönliche Daten ablegt, der sollte mindestens einen TrueCrypt Container auf dem USB-Stick erstellen, um dort die wichtigen Daten abzulegen. Den Container kann man über das Terminal, die TrueCrypt GUI oder über ein Desktop Launcher (oder Icon, Exe, etc.) mounten. Unter Gnome ist das sehr einfach, ihr macht einen rechtsklick auf dem Desktop und wählt “Create Launcher…” dann gebt ihr einen gewünschten Namen für den Launcher ein und bei Command den Mount-Befehl:
truecrypt -k “” protect-hidden=no /pfad/zum/Container.tc /pfad/zum/Mountpoint
und schon ist der Launcher fertig. Es wird eigentlich nur eine Datei mit der Endung .desktop erstellt. Den Inhalt dieser Datei könnt ihr sehen, wenn ihr die Datei im Terminal mit cat oder eben über einen Editor öffnet.

Und damit das dismounten auch einfach geht, erstellt ihr noch einen Launcher dafür mit dem Command:
truecrypt -d /pfad/zum/mountpoint

Viel Spaß