Archiv 28. August 2016

Sonntag, 28. August 2016

Mit Atom HTML-Code konvertieren

Gestern war es soweit: Ich habe (endlich!) TextMate in die Wüste geschickt und bin auf Githubs Atom als meinen Text-Editor der Wahl umgestiegen.

Essentiell ist, dass man als erstes die Kommandozeilen-Unterstützung installiert: Atom > Install Shell Commands. Denn ich rufe den Text-Editor meistens aus einem Ordner mit zu editierenden Dateien von der Kommandozeile auf:

$ atom .

Anschliessend habe ich mir über den Paketmanager apm auch noch als allererstes das Paket html-entities installiert. Damit kann ich HTML-Code so umwandeln, dass ich ihn in WordPress-Artikeln in ein <pre> einfüllen kann:

$ apm install html-entities

Tags: , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 28. August 2016

launchd vergisst nach Upgrade auf OS X El Capitan die Pfade (PATH)

Dies ist bei mir ganz kritisch, da meine Scripts auf viele MacPorts-Tools angewiesen sind — unter anderem realpath, wget sowie curlftpfs.

Abhilfe schafft man folgendermassen:

~/Library/LaunchAgents/com.emeidi.environment.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>my.startup</string>
  <key>ProgramArguments</key>
  <array>
    <string>sh</string>
    <string>-c</string>
    <string>launchctl setenv PATH /opt/local/bin:/opt/local/sbin:$PATH</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
</dict>
</plist>

Quelle: Setting the system-wide PATH environment variable in Mavericks

Anschliessend startet man den „Job“:

$ launchctl load ~/Library/LaunchAgents/com.emeidi.environment.plist

Tags: , , , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 28. August 2016

Microsoft Office 2016 aus dem Home Use Program HUP aktivieren

Da ich seit gestern endlich mit OS X El Capitan unterwegs bin, konnte ich heute Microsoft Office 2016 aus dem Home Use Program (HUP) meines Arbeitgebers installieren.

Im Gegensatz zu früheren Versionen des Produktivitätspakets ist die Aktivierung des Produkts mit dem Produkteschlüssel nicht trivial. Hier mein Vorgehen:

  1. Installation von Office 2016 vom gekauftem USB-Stick (resp. dem heruntergeladenen Disk Image (.dmg))
  2. Starten von Microsoft Word
  3. Den Aktivierungsbildschirm von Word habe ich ignoriert, aber nicht weggeklickt
  4. Durchführen von Auto-Update und herunterladen sowie Installation der Updates
  5. Anschliessendhabe ich mich auf meinem 2014 erstellten und seither nie mehr benutzten Outlook.com-Account eingeloggt. Authentifizieren musste ich mich zusätzlich mit einem zweiten Faktor (SMS auf meine Mobilfunknummer).
  6. In der E-Mail-Oberfläche von Outlook.com angekommen, klickte ich auf den Applikations-Launcher:
    outlook.com-app-launcher

  7. Dort wählte ich Word aus
  8. Anschliessend klickte ich auf „My Account“
    word-my-account
  9. Dort klickte ich auf den Link „Enter your product key“ bei „Have an Office Product Key?“
    office.com-my-office-account
  10. Der Product Key wurde anstandslos akzeptiert.
  11. Zurück im von Word geöffneten Aktivationsfenster auf meinem Desktop loggte ich mich ebenfalls mit meinem Outlook-Konto ein. Die Aktivierung startete.
    word-activating
  12. Voila. Schöne neue Welt!

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

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 28. August 2016

Admin-Interface des Routers gegen das Internet (WAN) schliessen

Der Nachteil der Verwendung von Asuswrt-Merlin auf meinem Asus RT-AC66U-Router ist das latent vorhandene Gefrickel. Ich kann es kaum erwarten, bis mein Turris Omnia ankommt!

So musste ich vor einigen Monaten bemerken, dass das Web-Interface meines Routers aus dem Internet zugänglich ist, egal, ob ich diese Option im Web-GUI des Routers nun aktiviere oder deaktiviere. Das Interface läuft auf Port 8443 und ist nur mit HTTPS erreichbar (mit einem selber signierten Zertifikat).

Ich griff deshalb kurzerhand zu iptables, um diesen sicherheitsmässigen Fahrlässigkeit den Garaus zu machen: Ich loggte mich per SSH auf den Router ein und fand zuerst einmal das WAN-Interface heraus:

$ ifconfig
...
eth0       Link encap:Ethernet  HWaddr XX:XX:XX:XX:XX:XX 
           inet addr:85.X.X.X  Bcast:85.X.X.255  Mask:255.255.255.0
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:662731029 errors:0 dropped:0 overruns:0 frame:0
           TX packets:536190886 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000 
           RX bytes:871096761 (830.7 MiB)  TX bytes:4294213359 (3.9 GiB)
           Interrupt:4 Base address:0x2000
...

Soso, eth0 also, da dies das einzige Interface mit einer öffentlichen IP war.

Folgender iptables-Befehl killt alle aus dem WAN stammenden Anfragen auf Port 8443:

# iptables -A INPUT -i eth0 -p tcp --destination-port 8443 -j REJECT
# iptables -A INPUT -i eth0 -p tcp --destination-port 22 -j REJECT

Wieso ich REJECT und nicht (wie ursprünglich konfiguriert) DROP gewählt habe? Drop versus Reject

Schnellcheck

Um sicherzugehen, dass die iptables auch wirklich nützen, habe ich mich dann des Tools NetRenderer bedient. In der Adresszeile des Web-Tools gebe ich

https://85.X.X.X:8443/

ein und warte, bis mir ein Timeout angezeigt wird. Wird stattdessen ein Zertifikat-Fehler angezeigt, weiss ich, dass die Verbindung (leider) immer noch möglich ist.

Langfrist-Check

Auf StatusCake habe ich mir einen Check auf dieselbe URL eingerichtet, welcher mich alarmiert, sollte die Verbindung plötzlich wieder möglich sein (bspw. auf Grund eines Reboots). Dies war heute der Fall, nachdem die Regel 57 Tage und 9 Stunden gehalten hatte.

Nachtrag

Himmelarsch, Port 22 (SSH) war auch die ganze Zeit über offen!

$ nmap -F 85.X.X.X
22/tcp   filtered ssh
135/tcp  filtered msrpc
139/tcp  filtered netbios-ssn
445/tcp  filtered microsoft-ds
8443/tcp filtered https-alt

Tags: , , , , , , , , , , , , ,
Labels: Uncategorized

Keine Kommentare | neuen Kommentar verfassen