Title: Page 80 – Alex Kirk

---

 * 
   ## 󠀁[Little Snitch und Freewave](https://alex.kirk.at/2014/09/09/little-snitch-und-freewave/)󠁿
   
 * September 9, 2014
 * Inspiriert von der [Anleitung von Freewave](https://www.freewave.at/blog/2014/09/09/little-snitch-und-vpns-im-freewave-netz-nutzen/),
   die zeigt, wie man in einem **unverschlüsselten WLAN** (wie [Freewave es an vielen Orten in ganz Österreich anbietet](https://www.freewave.at/hotspots/karte/))
   dafür sorgen kann, dass nicht unabsichtlich Apps mit dem Internet sprechen, habe
   ich hier ein paar Anpassungen zusammengestellt, um das Gleiche mit **SSH und 
   SOCKS** zu nutzen.
 * Wenn man Zugang zu einem Server im Internet per SSH hat (eigener Webserver, Uni-
   Account), kann man sich einfach eine sichere Verbindung (zumindest bis zu ebendiesem
   Server, aber es geht ja eigentlich nur darum die WLAN-Signale zu verschlüsseln)
   basteln.
 * Man startet ein Terminal-Fenster und gibt Folgendes ein:
 * `ssh -D9999 username@mein.server`
 * Mit dem Schalter -D<port> wird ein SOCKS-Proxy gestartet, der auf localhost:<
   port>, in diesem Fall auf localhost:9999, lauscht. Man lässt dann das Terminal-
   Fenster sowie die Verbindung so lange offen, solange man den Proxy verwenden 
   will.
 * Dann konfiguriert man sein OSX so (in den Systemeinstellungen unter “Netzwerk”),
   dass es den SOCKS-Proxy verwendet:
 * [⌊socks-proxy⌉⌊socks-proxy⌉[
 * und letztlich passt man dann noch die Regeln an, wie sie in der [Anleitung von Freewave](https://www.freewave.at/blog/2014/09/09/little-snitch-und-vpns-im-freewave-netz-nutzen/)
   gezeigt werden:
 * [⌊little-snitch-proxy⌉⌊little-snitch-proxy⌉[
 * Der Unterschied besteht in der Regel für “Terminal”, die pppd und racoon ersetzt.
   Am einfachsten erstellt man die, indem man die Regel erstmal einfach weg lässt
   und die “alle ausgehenden”-Regel auf “Nachfragen” stellt. Dann das ssh Kommando
   ausführen, Little Snitch fragt nach, was es tun soll. Daraufhin erlaubt man die
   Verbindung für immer und stellt danach die “alle ausgehenden”-Regel wieder auf“
   Verbieten” zurück. (bei mir gibt es hier 2 Regeln, weil ich je nach Anwendungsfall
   2 verschiedene Server verwende)
 * Übrigens: Ich fand die Bezeichnungen “Ohne VPN” und “Mit VPN” verwirrend, deswegen
   hab ich die bei mir “Potenziell Unsicher” bzw. “Vertrauenswürdig” genannt.
 * Insgesamt ist leider schade, dass mit einer solchen Konstruktion die ganzen Regeln,
   die man mehr oder weniger mühsam unter “Vertrauenswürdig” erstellt hat, nicht
   gelten, während man “Potenziell Unsicher” aktiviert hat: es geht einfach alles
   durch SSH, auch was man unter “Vertrauenswürdig” verboten hat.
 * [Misc](https://alex.kirk.at/category/misc/)
 * 
   ## 󠀁[SSL Certificate Expiry Warning Script](https://alex.kirk.at/2014/08/14/ssl-certificate-expiry-warning-script/)󠁿
   
 * August 14, 2014
 * With the increasing trend of SSL on the web, where [Google values SSL sites higher](http://googlewebmastercentral.blogspot.com/2014/08/https-as-ranking-signal.html)
   and you can have [your site be added to the HSTS preload list](http://hstspreload.appspot.com/)(
   the browser will first try HTTPS before trying HTTP), it is a good idea to start
   using SSL yourself.
 * The downside: you need to get a certificate through a ([pre-trusted by the browser](https://en.wikipedia.org/wiki/Certificate_authority#Providers))
   CA, or certificate authority. This usually costs money, though there are [some](https://www.startssl.com/)
   [services](http://www.cacert.org/) that give you a certificate for free. The 
   free certificates only last for one year or less, this means you need to request
   and install a new certificate frequently, especially when you have multiple domains.
 * Now it can happen to anyone, even Microsoft ([Windows Azure Service Disruption from Expired Certificate](http://azure.microsoft.com/blog/2013/02/24/windows-azure-service-disruption-from-expired-certificate/)),
   that you forget to renew (and update) your certificate in time.
 * There is a nice service called [certalert.me](http://certalert.me/) (interestingly
   enough not over HTTPS) that will send you an e-mail when a certificate is due
   to be updated. But as with any web service, unfortunately [you can never be sure how long it’s going to live](https://twitter.com/MSch/status/499693548837801985).
 * So, I have created a script that I run through a cronjob every day that will 
   send me a notification e-mail several times in advance (1 day and 2 7 14 30 60
   days ahead), so that you are not dependent on a third party to get notified about
   expiries. As it is supposed to be with cronjobs, there is no output when there
   is nothing to report (thus no e-mail).
 * Here is the script ([download warn_about_certificate_expiry.sh](https://alex.kirk.at/dl/warn_about_certificate_expiry.txt?output_format=md&term_id=44048)):
 *     ```
       #!/bin/sh 
   
       CertExpiries=$(mktemp)
       for i in /etc/certificates/*.pem; do
       	echo $(basename $i): $(openssl x509 -in $i -inform PEM -text -noout -enddate | grep "Not After" | tail -1 | awk '{print $4, $5, $7}') >> $CertExpiries
       done
   
       Date=$(date -ud "+1 day" | awk '{print $2, $3, $6}')
       Expiries=$(grep "$Date" $CertExpiries)
       if [ $? -eq 0 ]; then 
       	echo These Certificates expire TOMORROW!
       	echo $Expiries
       	echo
       fi
       for i in 2 7 14 30 60; do
       	Date=$(date -ud "+$i day" | awk '{print $2, $3, $6}')
       	Expiries=$(grep "$Date" $CertExpiries)
       	if [ $? -eq 0 ]; then 
       		echo These Certificates expire in $i days:
       		echo $Expiries
       		echo
       	fi
       done
       rm $CertExpiries;
       ```
   
 * [linux](https://alex.kirk.at/category/code/linux/)

 [Previous Page](https://alex.kirk.at/page/79/?output_format=md&term_id=44048) [Next Page](https://alex.kirk.at/page/81/?output_format=md&term_id=44048)