Donnerstag, 10. April 2014

imapfilter funktioniert nach dem Heartbleed-Disaster nicht mehr automatisch

Da offenbar auch der Hoster meines Vertrauens vom Heartbleed-Disaster betroffen war und vorbildlicherweise schnurstracks seine SSL-Zertifikate ausgetauscht hat, kam es zu Problemen mit meiner imapfilter-Installation, welche ich hier in anderen Blog-Artikeln bereits beschrieben habe.

Obwohl das Shell-Script auf meinem Linux-Server zu Hause alle fünf Minuten aufgerufen wird, wurden meine Mails in verschiedenen Mail-Accounts seit Mittwoch 15:15 Uhr nicht mehr gemäss den imapfilter-Regeln verschoben.

Heute Mittag erst wurde ich stutzig, wieso sich soviel Müll in meinen INBOXes stapelte und ging der Sache auf den Grund. Dank meinen Log-Daten fand ich die Ursache dann sofort heraus:

imapfilter: certificate mismatch in non-interactive mode

Um dieses Problem zu beheben, musste ich mich per SSH auf meinen Linux-Server einloggen, in denjenigen User wechseln, unter welchem der imapfilter-Cron Job ausgeführt wird, und danach erst einmal die Datei mit den abgelegten Zertifikaten löschen:

$ rm ~/.imapfilter/certificates

Anschliessend musste ich imapfilter einmalig von Hand von der Kommandozeile ausführen (wer mit imapfilter auf verschiedenen Mail-Servern filtert, muss das Prozedere für jeden Server einzeln durchführen, damit die Zertifikatsdatei wieder mit allen aktuellen Zertifikaten gefüllt wird):

$ imapfilter -c /dir/to/recipes/mail-at-domain-tld
Server key fingerprint: 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
    (R)eject, accept (t)emporarily or accept (p)ermanently? p

Voilà! Seither klappt das Filtering meiner IMAP-Konten wieder reibungslos.

Tags: ,
Labels: Linux

Keine Kommentare | neuen Kommentar verfassen

Samstag, 29. März 2014

Die Datei mach_kernel im Finder ausblenden

Aus einem mir unerklärlichen Grund wird bei mir die Datei mach_kernel, welche den Mac OS X Kernel enthält, im Finder angezeigt:

mach_kernel

Mit folgendem Shell-Befehl wird die Datei im Finder inskünftig ausgeblendet:

# chflags hidden /mach_kernel

Via: mach_kernel now visible

Tags: , , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 6. März 2014

rsync braucht unter Mac OS X ewig für “building file list…”

rsync ist das Tool meiner Wahl, um meine Backups auf mein Synology NAS im LAN sowie per WAN auf einen Linux-Server im Elternhaus zu spiegeln. Doch aufgepasst: Wer sich seit jeher daran stört, dass die Backup-Scripts bei hunderttausenden Dateien eine Ewigkeit bei “building file list…” stehen bleiben, sei folgender Rat gegeben:

Man sollte unbedingt eine aktuelle Version von rsync – mindestens aber Version 3 – verwenden. Bis und mit Mac OS X 10.8 liefert Apple Version 2.6 mit, welche in dieser Hinsicht noch nicht optimiert wurde: Version 2 liest zuerst alle Dateien des Quellverzeichnis ein, während Version 3 nach den ersten 1000 Dateien (oder so) mit dem Backup beginnt und die verbleibenden Dateien anschliessend päckchenweise (nach Bedarf, basierend auf der Backup-Geschwindigkeit), einliest. Diese Massnahme verringert nebenbei auch gerade den RAM-Bedarf des Tools.

Version 3 ist auf meinem System über MacPorts installiert:

# port install rsync

Damit man auch wirklich sicher ist, dass in den eigenen Backup-Scripts Version 3 und nicht Version 2 verwendet wird, sollte man den rsync-Pfad in Scripts hardkodieren:

#RSYNC=$(which rsync)
RSYNC="/opt/local/bin/rsync/"

Um während der Ausführung eines Scripts zu prüfen, ob Version 3 des Tools verwendet wird, empfiehlt es sich, rsync das Argument --info=progress2 mitzugeben. In diesem Fall wird jede Datei, die kopiert wird, auf einer neuen Zeile ausgegeben. Neben dessen Grösse, dem Netzwerk-Durchsatz und der Transfergeschwindigkeit auf das Zielmedium steht ganz am Ende der Zeile einerseits xfr für die fortlaufende Nummer aller übertragender Dateien und Ordner sowie to-chk, die Zahl der bereits überprüften Dateien vom (provisorischen) Total aller Dateien. to-chk wird sich während der Laufzeit des Scripts sequentiell erhöhen.

$ rsync -av --info=progress2 . /mnt/backup/2014-03-06/
... 1,238,099 100%  146.38kB/s    0:00:08  (xfr#5, to-chk=169/396)
...

Tags: , , , , , ,
Labels: Linux

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 6. März 2014

SSH zwingen, sich ausschliesslich mit einem spezifischen Private Key anzumelden

Wer bereits einmal SSH-Verbindungsaufnahmen debuggen musste und dazu den Kommandozeilenparameter -v, -vv oder -vvv verwendet hat, weiss, das der SSH-Agent standardmässig all im .ssh-Ordner vorhandenen private Keys durchprobiert, bis einer passt (oder eben nicht).

Ob dies eine Sicherheitslücke darstellt weiss ich nicht, aber ich finde es ineffizient. Diese Unschönheit lässt sich mit zwei zusätzlichen Parametern IdentityFile sowie IdentitiesOnly in den Host-Definitionen in .ssh/config beheben:

Host shortcut
	Hostname domain.tld
	IdentityFile /Users/mario/.ssh/id_rsa_special
	IdentitiesOnly

Quelle: GitHub / SSH with multiple identities; the slightly-more-definitive guide

Tags: , , , , , , ,
Labels: Linux

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 5. März 2014

Definiere SOAP

SOAP. Simple Object Access Protocol. Except it’s not Simple, it’s Complicated. And it’s not about Objects, it’s about RPC. So, really: CRAP

Quelle: @joewalnes

Tags:
Labels: Funny, IT

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 5. März 2014

UUID einer Festplatte unter Linux auslesen

Es empfiehlt sich heutzutage, in /etc/fstab die Festplatten basierend auf ihrer UUID am richtigen Mount-Point einzuhängen. Die UUID einer bestimmten Platte findet man auf folgenden zwei Wegen heraus:

$ ls -l /dev/disk/by-uuid

Oder wenn die Device-Bezeichnung der Festplatte bekannt/klar ist:

$ blkid /dev/sda

Quelle: Short Tip: Get UUID of Hard Disks [Update]

Tags: , , ,
Labels: Linux

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 5. März 2014

Alle Spuren von GPT-Partitionen von einer portablen Festplatte entfernen

Ich habe eine kürzlich erworbene Festplatte mit dem Disk Utility von Mac OS X komplett neu formatiert und partitioniert. Als ich die Festplatte kürzlich unter Linux neu partitionieren wollte, realisierte ich, dass die Festplatte mit den neuen GPT-Partitionen eingerichtet war (im Gegensatz zu den aus der DOS-Zeit stammenden MBR-Partitionen).

Wie entfernt man jegliche Überreste von GTP-Partitionierungsschemen von der Festplatte? Ganz einfach: Man installiere sich das Debian-Paket gdisk und führe dann folgendes aus:

# apt-get install gdisk
# gdisk /dev/sde
GPT fdisk (gdisk) version 0.7.2

Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: present

Found valid MBR and GPT. Which do you want to use?
 1 - MBR
 2 - GPT
 3 - Create blank GPT

Your answer: 1

Command (? for help): x

Expert command (? for help): z
About to wipe out GPT on /dev/sde. Proceed? (Y/N): y
GPT data structures destroyed! You may now partition the disk using fdisk or
other utilities.
Blank out MBR? (Y/N): n
MBR is unchanged. You may need to delete an EFI GPT (0xEE) partition
with fdisk or another tool.

Quelle: Wiping Out Old GPT Data

Tags: , , , , , ,
Labels: Linux

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 5. März 2014

f4f-Streams lokal sichern

Das von College Humor produzierte Video What If Google Was a Guy ist der Hammer – doch wie kriegt man eine Sicherungskopie auf die lokale Festplatte?

Besucht man die Web-Seite mit einem Browser unter Windows- oder Mac OS X, wird ein Flash-Player geladen, welcher den Video-Clip im f4f-Format streamt. Dabei handelt es sich um eine Adobe-Erfindung “HTTP Dynamic Streaming”, welche man (meines Wissens) derzeit nicht rippen kann.

Zum Glück realisierte ich aber schnell, dass das Video auch auf meinem iPad problemlos angeschaut werden kann. Ist dies der Fall, kann das Video im MP4- respektive im H.264-Standard angeschaut werden – und somit ist das Video als Datei abgreifbar.

Ich installierte deshalb Charles Proxy auf meinem Mac, startete die Software und fügte auf meinem iPad den Proxy-Server mit der internen IP-Adresse meines Mac minis hinzu. Dann rief ich in Safari auf dem iPad die Web-Seite erneut auf und begann, das Video abzuspielen. Innert Sekundenbruchteilen zeigte mir Charles Proxy die URL des Videos an:

5ce3c8cb95dc5c1a63efafff9d56c29a_9.mp4

Mit wget lud ich mir dann die Kopie herunter:

$ wget "http://0.media.collegehumor.cvcdn.com/12/65/5ce3c8cb95dc5c1a63efafff9d56c29a_9.mp4"

Tags: , , , , , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 5. März 2014

SRF Video-Streams im m3u8-Format lokal abspeichern

Auf meinem Synology NAS lagern hunderte Video-Clips und Sendungen, welche ich mir bei Gelegenheit mit AirVideo (iOS-Client mit OS X-Server) über meinen Mac mini über unseren Apple TV auf dem Panasonic-Plasma anschaue.

Die lokale Sicherung von Video-Clips klappt für YouTube und Vimeo vorzüglich (youtube-dl, welches ich im Zusammenspiel mit Remember the Milk kürzlich mit einem bash-Script automatisiert habe, welches den RSS-Feed der To Do-Liste nach YouTube- und Vimeo-URLs absucht und diese in einen _TOWATCH-Ordner auf dem NAS abspeichert), doch bei Streams von Fernsehsendern hat man seine liebe Mühe – manchmal nützen nicht einmal Jaksta, um den Stream über das Mitlesen des TCP/IP-Verkehrs mitzuschreiben, oder spezifisch für einen Sender geschriebene Tools wie Arte+7 videos are one click away ….

Das Schweizer Fernsehen ist so ein Sonderfall: Wenn ich es richtig verstehe, setzt der Sender eine Adobe-Lösung ein, um Streams entweder über einen Flash-Player an Mac- oder Windows-Clients oder als m3u8-Stream an Smartphones und Tablets auszuliefern.

Damit man an die URL für den m3u8-Stream kommt, muss man unter Mac OS X unter Firefox den User Agent temporär so anpassen, dass dem SRF-Server ein iPad vorgegaukelt wird. Ich verwende dazu die Extension User Agent Switcher 0.7.3, wobei ich anmerken muss, dass ich einfach die nächstbeste Erweiterung installiert habe, die mir vor die Flinte kam.

Ein möglicher User Agent, um ein iPad vorzutäuschen, lautet beispielsweise:

Mozilla/5.0 (iPad; CPU OS 7_0 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Version/7.0 Mobile/11A465 Safari/9537.53

Quelle: User Agent Strings of iOS – Webapps Online

Hat man die URL zum m3u8-Stream im HTML-Quellcode ausfindig gemacht, lädt man die m3u8-Datei herunter und zeigt anschliessend ffmpeg (bei mir über MacPorts installiert) auf die Datei, um den Stream abzugreifen:

$ wget -O master.m3u8 "http://srfvodhd-vh.akamaihd.net/i/vod/dok/2014/01/dok_20140122_225809_v_webcast_h264_,q10,q20,q30,q40,.mp4.csmil/master.m3u8"
$ ffmpeg -i master.m3u8 -strict -2 video.mp4

Je nach Downloadgeschwindigkeit sollte man nach einigen Minuten eine MP4-Datei im aktuellen Verzeichnis liegen haben, welche sich dann problemlos auf den Apple TV streamen lässt.

Tags: , , , , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 5. März 2014

Apple Time Capsule mit gestörter WiFi-Verbindung mit Mac OS X Mavericks

Vor einiger Zeit habe ich Mac OS X Mavericks auf meinem MacBook Air (Late 2010) installiert. Nach dem Update kämpfte ich mit einer gestörten WiFi-Verbindung zu meinem Apple Time Capsule Access Point und Router, welcher die Verbindung zum Internet herstellt. Selbst wenn der Laptop 30 Zentimeter neben den Access Point platziert wurde, verlor der Laptop immer wieder die Verbindung zum WLAN-Netzwerk.

Die einzige Lösung war schlussendlich, die Apple Time Capsule mit dem auf dem MacBook installierten Airport Utility von Version 7.6.3 auf 7.6.1 downzugraden. Hierzu muss man im Airport Utility mit gedrückter Option-Taste die Firmware-Versionsnummer mit der Maus anklicken und im Dropdown die gewünschte Firmware-Version auswählen (via Bug: AirPort Extreme 7.6.3 (Downgrade)).

Seit dem Downgrade funktioniert die WLAN-Verbindung wieder ohne jedwelche Komplikationen.

Tags: , , , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen