Schlagwort-Archive: debian

Zu sicher

Beachte: Update des Beitrags!

Nach den Anpassungen der Apache Configuration in Folge des Poodle Bugs erhielt ich zu Beginn der Woche eine Rückmeldung einer Vista Nutzerin aus dem Kollegium, dass sie nicht mehr auf unsere Seiten zugreifen könne. Ich nahm das zuerst nicht weiter ernst, tippte auf lokale Probleme. Dann stellte ich unter Cubian X fest, dass Chromium nur noch einen 113er Fehler anzeigte, der für

ERR_SSL_VERSION_OR_CIPHER_MISMATCH

steht und Iceweasel merkte an

ssl_error_no_cypher_overlap

Diverse Browser unter Android 4.0.3 (Lightning, Tint Browser, Zirco) wollten ebenfalls nicht mehr meine eigenen HTTPS verschlüsselten Seiten aufrufen. Während unter Android der Firefox noch einsetzbar war, so ging auf meinem Spielkistchen mit Cubian X gar nichts mehr. Die Software auf diesem System lässt sich nicht einfach aktualisieren – meine Apache-Konfiguration war für das Ding schlicht „zu sicher“.

Ich kam dann irgendwann auf Idee, die unterstützten Cipher Suiten miteinander zu vergleichen. Das geht direkt bei Qualys SSL Labs – oder für den Browser auch hier: https://cc.dcsec.uni-hannover.de/check . Die Schuppen fielen dann endlich von den Augen.

Sichere Konfiguration

Eintrag:

SSLProtocol all -SSLv2 -SSLv3

SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:!LOW:!SSLv2:!SSLv3:!EXPORT

Ergebnis unter Debian:

kvfgnet_debianssl

Unterstützte Browsersuiten:

Handshake Simulation
Android 2.3.7   No SNI 2 Protocol or cipher suite mismatch Fail3
Android 4.0.4 Protocol or cipher suite mismatch Fail3
Android 4.1.1 Protocol or cipher suite mismatch Fail3
Android 4.2.2 Protocol or cipher suite mismatch Fail3
Android 4.3 Protocol or cipher suite mismatch Fail3
Android 4.4.2 TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)   FS 256
BingBot Dec 2013   No SNI 2 Protocol or cipher suite mismatch Fail3
BingPreview Jun 2014 Protocol or cipher suite mismatch Fail3
Chrome 37 / OS X  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f)   FS 128
Firefox 24.2.0 ESR / Win 7 Protocol or cipher suite mismatch Fail3
Firefox 32 / OS X  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f)   FS 128
Googlebot Jun 2014 Protocol or cipher suite mismatch Fail3
IE 6 / XP   No FS 1   No SNI 2 Protocol or cipher suite mismatch Fail3
IE 7 / Vista Protocol or cipher suite mismatch Fail3
IE 8 / XP   No FS 1   No SNI 2 Protocol or cipher suite mismatch Fail3
IE 8-10 / Win 7  R Protocol or cipher suite mismatch Fail3
IE 11 / Win 7  R TLS 1.2 TLS_RSA_WITH_AES_128_CBC_SHA256 (0x3c)   No FS 128
IE 11 / Win 8.1  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)   FS 256
IE Mobile 10 / Win Phone 8.0 Protocol or cipher suite mismatch Fail3
IE Mobile 11 / Win Phone 8.1 TLS 1.2 TLS_RSA_WITH_AES_128_CBC_SHA256 (0x3c)   No FS 128
Java 6u45   No SNI 2 Protocol or cipher suite mismatch Fail3
Java 7u25 Protocol or cipher suite mismatch Fail3
Java 8b132 TLS 1.2 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (0xc027)   FS 128
OpenSSL 0.9.8y Protocol or cipher suite mismatch Fail3
OpenSSL 1.0.1h TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)   FS 256
Safari 5.1.9 / OS X 10.6.8 Protocol or cipher suite mismatch Fail3
Safari 6 / iOS 6.0.1  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)   FS 256
Safari 7 / iOS 7.1  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)   FS 256
Safari 8 / iOS 8.0 Beta  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)   FS 256
Safari 6.0.4 / OS X 10.8.4  R Protocol or cipher suite mismatch Fail3
Safari 7 / OS X 10.9  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)   FS 256
Yahoo Slurp Jun 2014   No SNI 2 TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)   FS 256
YandexBot Sep 2014 TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)   FS 256
(1) Clients that do not support Forward Secrecy (FS) are excluded when determining support for it.
(2) No support for virtual SSL hosting (SNI). Connects to the default site if the server uses SNI.
(3) Only first connection attempt simulated. Browsers tend to retry with a lower protocol version.
(R) Denotes a reference browser or client, with which we expect better effective security.
(All) We use defaults, but some platforms do not use their best protocols and features (e.g., Java 6 & 7, older IE).

Überarbeitete Konfiguration

Eintrag:

SSLProtocol all -SSLv2 -SSLv3

SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5

Ergebnis unter Debian:

debianssl

Unterstützte Browsersuiten:

Handshake Simulation
Android 2.3.7   No SNI 2 TLS 1.0 TLS_RSA_WITH_RC4_128_SHA (0x5)   No FS   RC4 128
Android 4.0.4 TLS 1.0 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (0xc014)   FS 256
Android 4.1.1 TLS 1.0 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (0xc014)   FS 256
Android 4.2.2 TLS 1.0 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (0xc014)   FS 256
Android 4.3 TLS 1.0 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (0xc014)   FS 256
Android 4.4.2 TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)   FS 256
BingBot Dec 2013   No SNI 2 TLS 1.0 TLS_RSA_WITH_AES_128_CBC_SHA (0x2f)   No FS 128
BingPreview Jun 2014 TLS 1.0 TLS_DHE_RSA_WITH_AES_256_CBC_SHA (0x39)   FS 256
Chrome 37 / OS X  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f)   FS 128
Firefox 24.2.0 ESR / Win 7 TLS 1.0 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (0xc014)   FS 256
Firefox 32 / OS X  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f)   FS 128
Googlebot Jun 2014 TLS 1.0 TLS_ECDHE_RSA_WITH_RC4_128_SHA (0xc011)   FS   RC4 128
IE 6 / XP   No FS 1   No SNI 2 Protocol or cipher suite mismatch Fail3
IE 7 / Vista TLS 1.0 TLS_RSA_WITH_AES_128_CBC_SHA (0x2f)   No FS 128
IE 8 / XP   No FS 1   No SNI 2 TLS 1.0 TLS_RSA_WITH_RC4_128_SHA (0x5)   No FS   RC4 128
IE 8-10 / Win 7  R TLS 1.0 TLS_RSA_WITH_AES_128_CBC_SHA (0x2f)   No FS 128
IE 11 / Win 7  R TLS 1.2 TLS_RSA_WITH_AES_128_CBC_SHA256 (0x3c)   No FS 128
IE 11 / Win 8.1  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)   FS 256
IE Mobile 10 / Win Phone 8.0 TLS 1.0 TLS_RSA_WITH_AES_128_CBC_SHA (0x2f)   No FS 128
IE Mobile 11 / Win Phone 8.1 TLS 1.2 TLS_RSA_WITH_AES_128_CBC_SHA256 (0x3c)   No FS 128
Java 6u45   No SNI 2 TLS 1.0 TLS_RSA_WITH_RC4_128_SHA (0x5)   No FS   RC4 128
Java 7u25 TLS 1.0 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (0xc013)   FS 128
Java 8b132 TLS 1.2 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (0xc027)   FS 128
OpenSSL 0.9.8y TLS 1.0 TLS_DHE_RSA_WITH_AES_256_CBC_SHA (0x39)   FS 256
OpenSSL 1.0.1h TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)   FS 256
Safari 5.1.9 / OS X 10.6.8 TLS 1.0 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (0xc013)   FS 128
Safari 6 / iOS 6.0.1  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)   FS 256
Safari 7 / iOS 7.1  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)   FS 256
Safari 8 / iOS 8.0 Beta  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)   FS 256
Safari 6.0.4 / OS X 10.8.4  R TLS 1.0 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (0xc014)   FS 256
Safari 7 / OS X 10.9  R TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)   FS 256
Yahoo Slurp Jun 2014   No SNI 2 TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)   FS 256
YandexBot Sep 2014 TLS 1.2 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)   FS 256
(1) Clients that do not support Forward Secrecy (FS) are excluded when determining support for it.
(2) No support for virtual SSL hosting (SNI). Connects to the default site if the server uses SNI.
(3) Only first connection attempt simulated. Browsers tend to retry with a lower protocol version.
(R) Denotes a reference browser or client, with which we expect better effective security.
(All) We use defaults, but some platforms do not use their best protocols and features (e.g., Java 6 & 7, older IE).

Cubian auf Cubietruck SD 2

Inzwischen sind weitere Anpassungen am „Glotzenrechner“ vorgenommen worden, die ich hier kurz dokumentieren will:

WLAN

wicdshot

Der Netzwerkmanager fand meine WLAN Netze zuerst nicht. Ursache war ein fehlendes Modul. Nach einem

auto wlan0

Eintrag in die /etc/network/interfaces und einem

sudo modprobe bcmdhd

ging es.

Das Modul bcmdhd kann aus einer Zeile in der /etc/modules beim Boot aufgerufen werden, dann spart man sich den händischen Aufruf nach einem Neustart.

Tastatur und Tasten

Ein Nachtrag noch zu den Keyboardhinweisen im ersten Teil: Anpassungen an den Tastenkürzeln und Shortcuts können vorgenommen werden in

~/.config/openbox/lxde-rc.xml

DIe XML Datei ist selbsterklärend. Dass ein STRG ALT t ein Terminal öffnet, kann z.B. mit dem folgenden Eintrag im Abschnitt <keyboard></keyboard> erledigt werden:

<keybind key=“A-C-t“>
<action name=“Execute“>
<execute>/usr/bin/lxterminal</execute>
</action>
</keybind>

Ein

openbox –reconfigure

schaltet die Einstellungen dann scharf. Bevor ich hierauf kam, blieben alle Eintragungen auch nach einem Reboot schlicht unwirksam.

Sollte man sich über die eigenen Tastenbelegungen nicht ganz sicher sein, dann helfen xev und diese Seite im Debian Wiki.

ownCloud

Fedora 20 bringt einen für ARM kompilierten owncloud-client (mirall) mit. Der fehlt für Debian und kann auch – aus meiner heutigen Sicht – nicht so leicht erstellt werden, weil das Paket qtkeychain ebenfalls nicht für Debian ARM vorliegt. Wirft man den Compiler an, dann spaziert man in die Abhängigkeitshölle. Man kann jedoch auf die Anbindung des eigenen ownCloud-Servers über WebDAVs ausweichen.

mkdir ownCloud

sudo apt-get install davfs

sudo dpkg-reconfigure davfs2

Hier den normalen Benutzern erlauben davfs2 zu verwenden.

sudo usermod -aG davfs2 cubie

sudo mount.davfs https://www.server.domain/owncloud/remote.php/webdav /home/cubie/ownCloud/

Derartige Eintragungen können in der fstab hinterlegt werden … oder man schreibt sich einen mount und umount alias in die .bash_aliases sofern der Rechner – wie hier – von vielen Familienmitgliedern verwendet wird. [Lektüre]

Samba

Unseren Sambaserver habe ich gleich über die /etc/fstab gemountet. Benötigt werden die cifs-utils:

sudo apt-get install cifs-utils

Das Tauschverzeichnis ist auch der Dokumentenpfad für alle lokal installierten Programme, was nicht nur Speicher auf der SD Karte spart, sondern den Zugriff von sonstigen Arbeitsstationen im Haus erleichert.

//ip.des.smb.servers/pfad/zu/tausch  /home/cubie/fileserver  cifs  auto,username=tausch,password=geheim,uid=1000,gid=1001  0   0

Geheime Passwörter sollte man nicht direkt in der fstab hinterlegen – aber die für den Familienserver sind intern eh bekannt. [Lektüre]

Sonstiges

Bei mir fehlte die Möglichkeit zur Vervollständigung der Befehle durch TAB. EIn

sudo apt-get install bash-completion

installiert die fehlende Funktion nach.

Alle anderen inzwischen vorgenommenen Veränderungen sind weniger technischer Natur und dienten vor allem der „Verschönerung“ des Systems.

Einen Tipp evtl. noch: dwb ist ein empfehlenswerter schlanker, schneller Browser für Cubian-Benutzer, die auf der Shell mit vi arbeiten oder unter Firefox den vimperator installiert haben: http://portix.bitbucket.org/dwb/

OT: Auf neueren Ubuntuversionen – ab Quantal – ist dwb ebenfalls zu finden.

Cubian auf Cubietruck SD 1

cubianshot

Statt weiter mit der F20 Installation auf dem Cubietruck zu spielen, kam gestern Abend das neueste Cubian – ein Debian Abkömmling – auf eine 16GB microSDHC Karte von SanDisk (SDSDQX-016G-U46A). Die für den Betrieb des Logitech K400 nötigen USB HID Treiber sind schon mit an Bord und auch die Größenanpassung des Dateisystems nach der „Installation“ auf die Karte läuft automatisch ab.

Die folgenden Anpassungen halfen dann dabei, das System benutzbar zu machen:

dpkg-reconfigure keyboard-configuration

dpkg-reconfigure locales

dpkg-reconfigure tzdata

Das Keyboard Layout systemweit setzen:

sudo vi /etc/xdg/lxsession/LXDE/autostart

Hier den folgenden Eintrag am Ende hinzufügen:

setxkbmap -layout de

Dann die folgenden Pakete installieren:

sudo apt-get install libreoffice-l10n-de libreoffice-grammarcheck-de vlc pavucontrol smplayer pulseaudio keepassx mtpaint  iceweasel oxygen-icon-theme vim gvfs-backends abiword aspell-de cifs-utils cups-pdf task-lxde-desktop libreoffice-help-de gigolo

Von box-loog.org noch ein hübsches Theme installieren … und man hat auf dem Cubietruck ein System, auf dem sich ohne große Wartezeiten LibreOffice und Iceweasel inklusive der für mich wichtigen Add-Ons benutzen lassen.

Auch die Tonausgabe über HDMI funktioniert – allerdings im Moment nur mit dem smplayer.

Debian revisited

deb7

Endlich. Debian sieht seit Wheezy nicht mehr aus, als wenn eine Horde Infantiler die Chance zur Gestaltung einer Linux-Distri erhalten hätte, sondern ziemlich cool.

Die Geschmacksrichtungen KDE, Gnome3 und XFCE sowie LXDE sind verfügbar. Ich habe einen kurzen Blick auf die KDE Version geworfen und konnte auf die Schnelle nur einen kleinen Mangel finden: einige GTK Bibliotheken fehlen, so dass Iceweasel / Firefox beim Starten ziemlich bescheuert aussieht. Ein

su –
apt-get install gtk2-engines-oxygen kde-config-gtk-style

löst das Problem.

Oder man zieht sich mit einem

apt-get install gnome

gleich den ganzen Gnome3-Desktop und vergleicht dann, was man lieber mag. Designerisch steht er KDE nicht nach.

LMDE und CPU Zahl

Schnarchlangsam ist mein oller Asus  – und das obwohl Debian eigentlich weniger Ressourcen frisst als Ubuntu. Also schaute ich mal mit top nach, was da an den Ressourcen zehrt und stolperte über xorg, der 35% der CPU schluckte. Dazu kam: LMDE erkannt nur eine CPU des Dualcores.

$ dmesg | grep CPU
[    0.000000] ACPI: NR_CPUS/possible_cpus limit of 1 reached.  Processor 1/0x1 ignored.
[    0.000000] Initializing CPU#0
[    0.000000] CPU 0 irqstacks, hard=f5808000 soft=f580a000
[    0.012261] CPU: AMD Turion(tm) 64 X2 Mobile Technology TL-52 stepping 02
[    0.586082] Switch to broadcast mode on CPU0

Das scheint ein Debian Bug zu sein, der sich durch die Installation eines PAE Kernels beheben lässt:

sudo apt-get install linux-headers-3.2.0-3-686-pae linux-image-3.2.0-3-686-pae

Und tatsächlich – danach stimmt wenigstens die Verwendung der CPU Zahl:

$ dmesg | grep CPU
[    0.000000] SMP: Allowing 2 CPUs, 0 hotplug CPUs
[    0.000000] setup_percpu: NR_CPUS:32 nr_cpumask_bits:32 nr_cpu_ids:2 nr_node_ids:1
[    0.000000] PERCPU: Embedded 14 pages/cpu @f79d5000 s33280 r0 d24064 u57344
[    0.000000] Initializing CPU#0
[    0.000000] CPU 0 irqstacks, hard=f5806000 soft=f5808000
[    0.004382] CPU: Physical Processor ID: 0
[    0.004385] CPU: Processor Core ID: 0
[    0.004389] mce: CPU supports 5 MCE banks
[    0.069029] CPU0: AMD Turion(tm) 64 X2 Mobile Technology TL-52 stepping 02
[    0.072003] CPU 1 irqstacks, hard=f5894000 soft=f5896000
[    0.008000] Initializing CPU#1
[    0.156188] Brought up 2 CPUs
[    0.156186] Switch to broadcast mode on CPU1
[    0.156895] Switch to broadcast mode on CPU0

Was sich nicht so einfach in den Griff bekommen lässt, ist der unendlich zähe nouveau Treiber, der xorg mit 35% CPU-Last weiterhin viel zu umfangreich beschäftigt. LMDE geht also weiterhin eher zäh zu Werke. Wenn F18 auf den Markt kommt, dann fliegt LMDE wieder runter … oder ich spiel hier mit Kubuntu weiter.

Thunderbird unter LMDE

Der bei LMDE mitgelieferte Senior Thunderbird 14.0 verträgt meine AddOns nicht. Also musste eine neuere Version an Bord, die ich mir auf Grund eines Hinweises und Skriptes hier direkt von dieser Seite besorgte. Gleich auf ein Skript zu setzen – das war mir zu heftig. Ich spiel das lieber ein paar mal durch und wenn ich dann die Fallstricke kenne wird geskripted. Also erst einmal von Hand:

wget http://mirror.informatik.uni-mannheim.de/pub/mirrors/mozilla.org/thunderbird/releases/latest/linux-i686/de/thunderbird-16.0.2.tar.bz2

cd /opt

mv thunderbird thunderbird$(date“+%Y%m%d.%H%M%S“)

sudo mv /home/dirk/thunderbird-16.0.2.tar.bz2 .

sudo tar xjf thunderbird-16.0.2.tar.bz2

Es folgt ein Teststart von Thunderbird, die Aktualisierung aller AddOns und wenn es tut, dann kommen das alte Thunderbirdverzeichnis und das Archiv in /opt weg. Zum Schluss noch ein Hinweis an die Paketverwaltung:

sudo vi /var/lib/dpkg/status

Hier die Versionsnummer von Thunderbird anpassen, so dass nur aktuellere Versionen als die nun installierte an Bord kommen. Ein dpkg -l | grep thunderbird zeigt den Erfolg.

Kernelbackede

Kein Backofen in der Wohnung hier … also muss ein Debian 6 darunter leiden, dem ich gerade versuchsweise einen 3.4.7 Kernel unterschieben will.

cd /usr/src/

wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.4.7.tar.bz2

tar jxvf linux-3.4.7.tar.bz2

cp /boot/config-$(uname -r) /usr/src/linux-3.4.7/.config

cd linux-3.4.7

make menuconfig

make-kpkg clean

fakeroot make-kpkg –initrd –revision=custom.0.1 kernel_image

Ich hätte allerdings den Prozess nicht unbedingt als root durchlaufen müssen, sondern mich in die Gruppe src einschreiben können. Weiter wäre es wohl schlau gewesen in /etc/kernel-pkg.conf zuerst noch CONCURRENCY_LEVEL=n (wobei n = CPU Cores + 1 und damit wie der Schalter -j bei make zu behandeln) zu setzen, statt nun blöd auf die Shell zu glotzen, weil alles ziemlich ewig dauert. Bis zum finalen

dpkg -i linux-image-3.4.7_custom.0.1_i386.deb

und dem Reboot dauert es demnach noch … und ich vertreibe mir so lange die Zeit mit dem Schreiben von Posts. Auch gut.

Da mir mein Backprozess immer wieder mit einer Fehlermeldung zu lguest auf die Nase fiel, hab ich die folgenden Auskommentierungen noch in der .config händisch vorgenommen [1]:

# CONFIG_LGUEST_GUEST
# CONFIG_PARAVIRT_SPINLOCKS
# CONFIG_LGUEST