• Und wer ist…?
  • Holiday Berichte
    • Urlaub Schottland 2013
    • Urlaub Griechenland 2013
  • Services
  • Kontakt/GnuPG

KOKOLOR.ES

Hier geht's einfach mal um alles und nichts!

IT

TrueCrypt: TrueCrypt already running

17. Juli 2016 by Sebastian 2 Comments

Ja, ich benutze noch TrueCrypt. Ich weiß das es nicht mehr weiterentwicklet wird, aber ich war bisher immer zu faul mal auf eine Alternative, wie z.B. VeryCrypt, umzustellen. Sollte ich demnächst mal angehen.

Jedenfalls bekam ich heute die Nachricht als ich meinen Container öffnen wollte das TrueCrypt bereits läuft:

TrueCrypt already running!

Ich schaute erstmal nach ob bereits der Dienst läuft oder ob eventuell vom Container eine .lock Datei oder so existierte, was nicht der Fall war. Allerdings fiel mir im home Verzeichnis eine .TrueCrypt-lock-$myusername auf. Nachdem ich diese gelöscht hatte, lies sich TrueCrypt wieder problemlos starten.

Posted in: IT, Linux, Opensource Tagged: linux, truecrypt

keybase Invites zu vergeben #2

28. Juni 2016 by Sebastian Leave a Comment

In einem vorhergehenden Artikel hatte ich bereits geschrieben, das ich ein paar wenige Keybase Einladungen zu vergeben habe. Ich habe nun noch ein paar zusätzliche bekommen und habe somit 17 weitere zu vergeben.

Wer Interesse hat, einfach hier kurz in die Kommentare posten oder mit mir Kontakt aufnehmen.

Posted in: Allgemein, IT Tagged: gpg, keybase, pgp

Synology Android Apps und Reverse Proxy

28. Juni 2016 by Sebastian 5 Comments

Da ich meinem Vater schon vor einer Weile eines meiner alten Raspberry Pi’s als Gateway für mein VPN zu Hause installiert habe, damit er z.B. meine NAS zu Hause einbinden kann und ich seine, kam mir neulich der Gedanke das ich ihm doch auch seine NAS Dienste über meinen Reverse Proxy zur Verfügung stellen könnte. Der Vorteil wäre das er keine Ports mehr in seinem Router zu Hause öffnen müsste und er meine Domain nutzen könnte, statt dieser verkrüppelten myfritz Domain, die er vorher nutzte.

Der Synology NAS eine weitere IP aufs Interface drücken

Bei meiner alten Synology NAS (DS209j) ging das, indem ich einfach die entsprechenden ip addr add und ip route add Zeilen in die /etc/rc.local schreibe. Synology entschied aber scheinbar irgendwann zwischen DSM 4.2 und 6 diese zu deaktivieren. Im Synology Forum fand ich dann den Hinweis das man nun Scripte unter /usr/local/etc/rc.d/ ablegen kann, welche dann beim booten ausgeführt werden. Schöne Theorie, in der Praxis tat es das jedoch bei mir nicht.
Als ich mir dann mal den Aufgabenmanager des DSM anschaute, sah ich das man hier ja benutzerdefinierte Scripte ausführen kann und das nicht nur zeitgesteuert, sondern auch bei Events wie Boot oder Shutdown. Also habe ich hier eine entsprechende Aufgabe angelegt und mein Script in mein Home verlegt. Nach einem Neustart hatte das Interface jedoch immernoch keine zusätzliche IP bekommen, das Script wurde aber laut Eventlog ausgeführt und zwar ohne Fehler. Mir kam dann der Gedanke, das vielleicht das Script schon ausgeführt wird, bevor das Interface eigentlich Up gesetzt wird. Also schrieb ich einfach mal ein sleep 10 an den Anfang und siehe da, nun funktioniert es.

Reverse Proxy einrichten

Sollte ja erstmal kein Akt sein. Nginx lief schon als Reverse Proxy auf einem meiner Server und ich fügte lediglich eine neue Server Sektion hinzu:

server {
    listen 443 ssl;
    listen [::]:443 ssl;

    server_name nas.de;

    ssl_certificate /etc/letsencrypt/live/nas.de/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/nas.de/privkey.pem;

    location / {
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass https://1.1.10.20:5001;
    }
}

An dieser Stelle habe ich das erste mal mit letsencrypt Zertifikaten gearbeitet. War sehr angenehm und einfach. Anschließend war die NAS schonmal erreichbar, man konnte sich einloggen und alles lief soweit – bis auf die Photostation.
Diese verwendet ja einen anderen Port, in meinem Fall 5002. Rief ich diese im lokalen Netz aus dem DSM heraus auf, hängt er lediglich /photo an die Domain an, machte ich es jedoch über den Reverse Proxy hängte er noch den Port mit an. In der Photostation ist es möglich den Routerport zu ändern, welchen ich dann in 443 abänderte. Anschließend versuchte ich es erneut, mit dem Ergebnis das er nun keinen Port mehr anhängt, die Adresse jedoch noch immer nicht erreichbar war. Ich fügte dann folgendes, zusätzlich, in die Server Sektion der Nginx Konfiguration ein, damit /photo intern auf Port 5002 weitergeleitet wird:

    location /photo {
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass https://1.1.10.20:5002/photo;
    }

Das funktionierte dann auch und nun funktionierten alle Dienste soweit.

Synology DS Apps

Da mein Vater die Apps von Synology ziemlich gut findet und diese auch ausführlich nutzt, müssen diese natürlich auch funktionieren. Ich ging also jede App durch und das Ergebnis war

  • DS note – funzt
  • DS audio – funzt nicht
  • DS video – funzt nicht
  • DS file – funzt nicht
  • DS photo – funzt nicht
  • Die Daten wurden von mir dabei in jeder App gleich eingegeben. Dann ging die Sucherei los, ich guckte auf der Synology Seite nach, ob diese Apps eventuell noch zusätzliche Ports benötigen oder man noch Rechte setzen musste und so weiter. Nachdem ich dabei zu keiner Lösung kam, schaute ich mir dann mal den Traffic mit tcpdump an und stellte fest das alle Apps, bis auf die DS Note, per Default, den Port 5001 nutzen, wenn man keinen anderen in die Domain anhängt. Also per iptables einen Redirect von port 5001 nach 443 auf dem Reverse Proxy eingrichtet und dann lief alles:

    iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 5001 -j REDIRECT --to-port 443 -m comment --comment "syno port fix"
    

    Mir stellt sich da wieder die Frage was das soll. Entweder nutzt man den Standart HTTPS Port, wenn der Haken bei HTTPS gemacht wird oder man setzt einen Hinweis, das bei HTTPS der Port 5001 benutzt wird. Und das macht man dann bitte auch in jeder App einheitlich und nicht mal da so und da anders.

    Alles in allem ist mein Vater nun glücklich und es funktioniert alles.

    Posted in: IT, Linux, Netzwerk, Opensource Tagged: iptables, nas, nginx, synology

    Redmine: PDF generieren failed bei Tickets mit U+FFFD Zeichen

    6. Juni 2016 by Sebastian Leave a Comment

    Ein Kollege hat sich in unserem Redmine eine benutzerdefinierte Abfrage für Abrechnungen gebastelt. Als er aus der Anzeige heraus dann ein PDF genieren wollte, bekam er nur die Error Page von Redmine zu sehen. Als Fehler bekam ich im Log folgendes:

    ArgumentError (invalid byte sequence in UTF-8):
      lib/plugins/rfpdf/lib/tcpdf.rb:3037:in `gsub'
      lib/plugins/rfpdf/lib/tcpdf.rb:3037:in `escape'
      lib/plugins/rfpdf/lib/tcpdf.rb:3028:in `escapetext'
      lib/plugins/rfpdf/lib/tcpdf.rb:1748:in `Cell'
      lib/plugins/rfpdf/lib/tcpdf.rb:1968:in `Write'
      lib/plugins/rfpdf/lib/tcpdf.rb:3530:in `block in writeHTML'
      lib/plugins/rfpdf/lib/tcpdf.rb:3501:in `each'
      lib/plugins/rfpdf/lib/tcpdf.rb:3501:in `writeHTML'
      lib/plugins/rfpdf/lib/tcpdf.rb:3612:in `writeHTMLCell'
      lib/redmine/export/pdf.rb:141:in `RDMwriteHTMLCell'
      lib/redmine/export/pdf.rb:483:in `block in issues_to_pdf'
      app/helpers/issues_helper.rb:29:in `block in issue_list'
      app/helpers/issues_helper.rb:25:in `each'
      app/helpers/issues_helper.rb:25:in `issue_list'
      lib/redmine/export/pdf.rb:444:in `issues_to_pdf'
      app/controllers/issues_controller.rb:93:in `block (2 levels) in index'
      app/controllers/issues_controller.rb:86:in `index'
    

    Es stimmte also etwas mit der Codierung nicht. Nun sah ich das in manchen Beschreibungen U+FFFD Charaktere (Unicode Replacement Charaktere) enthalten waren. Als ich dann mal nach dem Problem suchte in Bezug auf das PDF Plugin von redmine, fand ich dann auch einen entsprechenden Forumpost. Also hab ich kurzer Hand, wie beschrieben mal die Datei gepatcht:

    patch /usr/share/redmine/lib/plugins/rfpdf/lib/tcpdf.rb < /tmp/tcpdf.diff
    

    Anschließend funktionierte das PDF erstellen wieder ohne Probleme. In neuere Redmine Versionen ist dies natürlich schon behoben, die PPA Version hat aber nie ein Update erfahren, weswegen ich diese auch demnächst ersetzen werde.

    Posted in: Arbeit, IT, Opensource Tagged: redmine

    XFCE Terminal Tastenkürzel ändern

    23. Mai 2016 by Sebastian 2 Comments

    Nur ein kleiner Beitrag als Gedankenstütze für später, da ich nun schon zum dritten mal beim Einrichten von XFCE danach gesucht habe. Ich möchte gern im Terminal mit ALT-Pfeil rechts oder links zwischen den Reitern hin und her springen. Default ist jedoch ALT+Bild auf oder ab.
    Um es zu ändern geht man als erstes in die Systemeinstellungen unter Erscheinungsbild und wählte hier im Reiter Einstellungen den Punkt Menükürzel veränderbar machen. Nun kann das XFCE Terminal öffnen und klickt auf Reiter. Hier hovert man über Vorheriger oder Nächster Reiter und drückt die Backspace Taste, wodurch das Tastenkürzel, welches dahinter steht, verschwinden sollte. Nun drückt man noch anschließend die gewünschte Kombination und schon ist es geschafft.
    Das geht natürlich auch mit den anderen Tastenkürzeln.

    Posted in: IT, Linux, Opensource Tagged: linux, xfce

    Ubuntu Xenial preseed: „The installer has detected that the following disks have mounted partitions“

    12. April 2016 by Sebastian Leave a Comment

    Ich bastel auf Arbeit gerade neue Installstick’s für unsere Software, da ja Xenial vor der Tür steht. Mit Hilfe einer Preseed Konfiguration kann ich schon vorher festlegen was während der Installation wie konfiguiert werden soll, ohne händisch alles auszuwählen. Heute lief ich bei der Partitionierung permanent in einen Fehler. Jedes mal beim booten des Sticks mountete er /dev/sda1 nach /media und meldete dann beim partitionieren:

    The installer has detected that the following disks have mounted partitions

    Ok, gemountete Partition. Sag ich ihm halt mit folgendem in der preseed.cfg, dass alle aktiven Parititonen vorher ausgehängt werden sollen:

    d-i partman/unmount_active boolean true

    Das brachte allerdings nichts, da die Option scheinbar einfach ignoriert wird. Nach kurzem suchen, fand ich dann auch direkt den passenden Bugreport. Das Problem existiert bereits seit 14.04 und scheint ein Problem von debian-installer-utils und/oder partman-base zu sein. Es scheinen meines erachtens beide Recht zu haben, denn zum einen scheint ja der debian-installer, ohne (für mich) ersichtlichen Grund, Partitionen nach /media zu mounten und zum anderen scheint die umount_active question auf false gesetzt, wodurch partman das dann auch nicht abfängt.

    Für mich brachte dann, wie auch im Bugreport erwähnt, folgende Zeile in der preseed.cfg den Erfolg:

    d-i preseed/early_command string umount /media
    Posted in: Arbeit, IT, Linux, Opensource Tagged: installer, linux, preseed, ubuntu

    keybase Invites zu vergeben

    31. März 2016 by Sebastian Leave a Comment

    Nach langem warten habe ich vor ein paar Wochen endlich meinen Keybase Invite bekommen. Der Ansatz von Keybase ist, deinen GPG Key mit deinen Online Identitäten zu verknüpfen und so nachzuweisen das du du bist. Ich finde das gar keine schlechte Idee, denn vielen denen ich GPG erkläre (oder zumindest versuche), finden diese Verifizierungmethode, von wegen treffen und Ausweis kontrollieren, einfach viel zu umständlich. Wenn ich dann noch anfange ihnen zu erklären, wie das dann mit Key Signing funktioniert, kann ich es total knicken.
    Bei Keybase läuft das dann verhältnismäßig simpel ab. Man registriert sich, lädt seinen Public Schlüssel hoch und lädt sich das Keybase Tool herunter. Es gibt auch die Möglichkeit ein Schlüsselpaar auf der Seite generieren zu lassen oder aber neben seinem Public Key auch den Privat Key hochzuladen. Ich rate von beiden, aus Sicherheitsgründen ab! Jedenfalls kann man dann mit dem Keybase Tool z.B. seinen Twitter Account verifizieren. Das Tool generiert mit dem Privatkey einen Tweet, den man dann posten muss, diesen findet Keybase dann und sieht damit als erwiesen an, das der Twitter Account dir gehört.
    Das mal in Kurzform, für eine weit ausführlichere Beschreibung, inkl. Kritiken ist der Artikel von mspro zu empfehlen.

    Da der Dienst noch in der Alpha Phase steckt, ist der Zugang nur über einen Invite möglich. Davon habe ich noch 3 Stück zu vergeben. Wer also Interesse hat, einfach hier kurz in die Kommentare posten oder mit mir Kontakt aufnehmen.

    Posted in: Allgemein, IT Tagged: gpg, keybase, pgp

    Dynamisches Bash dialog Menü

    4. März 2016 by Sebastian Leave a Comment

    Auf Arbeit muss ich eine kleine GUI, die mit dialog geschrieben ist, anpassen, über welche Kunden ggf. ein paar kleine Einstellungen tätigen können. Im Fall Netzwerkinterface konfigurieren, kam mir heute in den Sinn, dass es ja durchaus sein kann, das es mehrere Interface, gleichen Typs, also z.B. 2x WLAN, geben kann und ich das auch gern berücksichtigen würde. Wenn also mehr als zwei Interface auftauchen, soll ein entsprechendes Menü in dialog generiert werden, was ich wie folgt gelöst hab:

    TPATH=$(mktemp -d)
    aintf=$(cat /proc/net/dev | grep ^\s*wl.*:.*$ | awk -F":" '{printf"%s ", $1}')
    
    if [ "$(echo $aintf | wc -w)" -gt "1" ]; then
            c=1
            for i in $aintf; do
                    list_opt=("${list_opt[@]}" "$i" "Interface$c")
                    c=$[c+1]
            done
            diacmd=(dialog --menu "Interface" 15 60 10)
            cmd=`echo "${diacmd[@]}" "${list_opt[@]}"`
            $cmd 2> $TPATH/dialog.tmp
            interf=`cat $TPATH/dialog.tmp`
    else
            interf=${aintf[0]}
    fi
    
    Posted in: Arbeit, IT, Linux, Opensource Tagged: bash, linux

    zabbix-check-mdadm2: mdadm Monitoring für Zabbix

    5. Februar 2016 by Sebastian Leave a Comment

    Ich habe die Tage mal mein altes mdadm Skript angeschaut, was so mein erster Bash Skript Gehversuch war, und gedacht das ich das mal schöner machen kann. In der Vergangenheit hat auch Christoph bereits ein Check dafür geschrieben, welcher recht simpel gehalten ist und auch ohne root Rechte auskommt. Deshalb hat meines auch die 2 hinten dran hängen.

    Das Skript habe ich diesmal in Python geschrieben um ein bisschen zu üben. Es liest einmal /proc/mdstat oder den State von mdadm –detail aus. Für zweiteres sind auch die Root Rechte von nöten. Da hier mehrer States gleichzeitig angezeigt werden können, geb ich nur den schlimmsten aus. Steht also bei

    State : clean, recovering
    

    wird recovering ausgegeben.
    Aufgerufen werden kann es wie folgt:

    zabbix_check_mdadm2_get.py md0 mdstat
    zabbix_check_mdadm2_get.py md0 state
    

    Außerdem habe ich daraus wieder ein Paket gebaut, welches dann demnächst wieder in Christoph’s Repository zu finden sein wird. In diesem ist auch ein entsprechendes Discovery Skript enthalten, welches nach md Devices sucht und diese im JSON Format ausgibt, damit das Zabbix Frontend daraus die Items generieren kann. Das Template liegt wie immer unter share/doc im Paket.

    Sourcecode: Github
    Repository: repository.chr.istoph.de

    Posted in: IT, Linux, Monitoring, Opensource Tagged: linux, mdadm, monitoring, python, zabbix

    mdadm Test RAID mit loop Devices

    5. Februar 2016 by Sebastian 5 Comments

    Ich brauchte heute mal schnell eine mdadm Testumgebung und da ich kein physisches Testgerät da hatte und ich auf keinem Produktivssystem rumspielen wollte, dachte ich mir, das muss doch auch anders gehen, z.B. mit loop Devices:

    Je nachdem mit welchem RAID Level man rumspielen will, legt man sich eine entsprechende Anzahl an Files an:

    dd bs=1M count=200 if=/dev/zero of=dev1
    dd bs=1M count=200 if=/dev/zero of=dev2
    dd bs=1M count=200 if=/dev/zero of=dev3
    

    Ich lege mir hier also 3 Files á 200MB an. Nun verknüpft man diese Files mit einem loop Device:

    losetup /dev/loop1 dev1
    losetup /dev/loop2 dev2
    losetup /dev/loop3 dev3
    

    Zu guter letzte noch das RAID Device erstellen, in meinem Fall ein Raid5:

    mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/loop1 /dev/loop2 /dev/loop3
    
    Posted in: IT, Linux, Opensource Tagged: linux, mdadm, raid
    « Zurück 1 2 3 4 … 11 Weiter »

    Social Shit

    Fediverse PGP-Key XMPP Matrix Git Github

    Kategorien

    • Allgemein
    • Android
    • Anime
    • Arbeit
    • Entertainment
    • Games
    • Handy
    • IT
    • Linux
    • Monitoring
    • Netzwerk
    • Opensource
    • Privates
    • QEK Junior
    • Rattis
    • Showtime Ost
    • Showtime West
    • Windows

    Interessantes

    • chr.istoph's Blog
    • 5222.de
    • World of Edolas
    • Lainblog

    Archive

    • Juni 2023
    • August 2019
    • Oktober 2018
    • März 2018
    • Dezember 2017
    • Juli 2017
    • Juni 2017
    • Mai 2017
    • März 2017
    • Februar 2017
    • Januar 2017
    • Dezember 2016
    • November 2016
    • September 2016
    • August 2016
    • Juli 2016
    • Juni 2016
    • Mai 2016
    • April 2016
    • März 2016
    • Februar 2016
    • Dezember 2015
    • November 2015
    • September 2015
    • August 2015
    • Juli 2015
    • Juni 2015
    • Mai 2015
    • April 2015
    • März 2015
    • Februar 2015
    • November 2014
    • Oktober 2014
    • August 2014
    • Juli 2014
    • Juni 2014
    • Mai 2014
    • April 2014
    • März 2014
    • Februar 2014
    • Dezember 2013
    • November 2013
    • Oktober 2013
    • September 2013
    • August 2013
    • Juli 2013
    • April 2013
    • März 2013
    • Februar 2013
    • Januar 2013
    • Dezember 2012
    • November 2012
    • September 2012
    • Juli 2012
    • Juni 2012
    • Mai 2012
    • Februar 2012
    • Januar 2012

    Tags

    android anime apt bash bugs debian freifunk freifunk-aachen gnome hardware htpc kernel linux lucid lxc mdadm mint monitoring mysql network nginx openwrt outdoor package pgp php postgres precise raid redmine squeeze telekom testing trusty ubuntu virtualization vserver wheezy windows xbmc xenial xorg xubuntu zabbix zarafa

    Datenschutzerklärung | Impressum

    Copyright © 2025 KOKOLOR.ES.

    Omega WordPress Theme by ThemeHall