Datenhaufen zu IT und Elektronik.

Autor: kernel-error (Seite 22 von 47)

IP Reverse Map Delegation: Einrichtung und Fehlerbehebung

Um zu verstehen was mit reverse map delegation von IPv4 und IPv6 Adressen nach RFC 2317 (http://tools.ietf.org/html/rfc2317) gemeint ist, hilft es zu verstehen warum man es überhaupt braucht. Daher versuche ich mit meiner kurzen Erklärung damit zu starten….

Wenn man in der „guten alten Zeit“ des Internets ein paar öffentliche IPv4 Adresse brauchte, ging man zu seiner RIR und bekam ein /24 in die Hand.

Als Beispiel: 1.2.3.0/24 also mit der Netzmaske 255.255.255.0

So hatte man ein Netz mit 256 Adressen. Wenn man nun in seinem DNS eine Zone für die PTR-Records anlegen wollte, war es kein Problem. Man konnte ja ohne große Probleme die Zone 3.2.1.in-addr.arpa. anlegen und die Zone konnte alle 256 Adressen beinhalten und beantworten.

Inzwischen sind die IPv4 Adresse aber knapp, oder sagen wir besser… verbraucht! Man bekommt, wenn überhaupt, nur noch so viele, wie man auch gut begründen kann 🙂

Als Beispiel: 1.2.3.0/29 also mit der Netzmaske 255.255.255.248

So hat man ein kleines Netz mit 8 Adressen. Will man nun in seinem DNS eine Zone für die PTR-Records anlegen gibt es ein Problem. Denn im DNS macht man die einzelnen Domains, Subdomains usw. am Punkt fest!

Als Beispiel: www.kernel-error.de.

de ist dabei die Subdomain von der Root-Domain (.)
kernel-error ist demnach die Subdomain der TLD (de)
www ist nun die Subdomain/Hostadresse von (kernel-error)

Möchte ich also eine Zone für ein IP Netz mit der Netzmaske /24 – 255.255.255.0 anlegen, ist ein kein Problem da ich ja einfach den letzten Punkt als Trenner für meine DNS-Zone nutzen kann. Alle 256 möglichen IPv4 Adressen würden dann von dieser Zone bedient werden können. Bei einem /29 habe ich aber keine Möglichkeit die Zone auf die 8 möglichen IP-Adressen zu beschränken…

Natürlich könnte ich nun denn noch eine Zone anlegen, wie auch bei einem /24 und halt nur meine 8 IP-Adressen (6 Hostadressen). Dann gibt es aber zwei Probleme! 1. Dieser DNS Server würde sich auch für die anderen Adressen zuständig fühlen und falsche Antworten liefern. 2. Wird ein Netz vergeben muss dort auch ein zuständiger DNS Server für das Netz eingetragen werden. Ihr seht schon… das wird nix!

Was macht man also? Ganz einfach und sicher vielen bereits bekannt… Der Provider/Hoster oder oder übernimmt die DNS-Zone für das Netz. Seine Kunden müssen also alle Wünsche über die zu setzenden RECORDS bei diesem anfragen oder über ein Webinterface eintragen. Dieses ist ein gangbarer Weg… Leider ist es hin und wieder etwas zu unflexibel und/oder zu zeitintensive. Ebenso gibt es ja Menschen die ihren DNS-Server gerne selbst unter Kontrolle haben, richtig?

Genau hier kommt dieses reverse map delegation ins Spiel. Zwar ist der im Netz eingetragene DNS Server noch immer der vom Provider… Dieser setzt aber keinen echten Hostename mehr zu den einzelnen IP Adressen, sondern einen CNAME zu einem in der DNS Domain des Kunden. So kann der Kunde die „PTR-RECORDS“ für seine IP Adressen über einen kleinen Umweg denn noch selbst setzten. Das ist schon die ganze Magie hinter diesem Begriff….

Wie sieht es nun in der Praxis aus? Ich bleibe bei meinem Beispiel des Netzes 1.2.3.0/29 und beschreibe wie ich es in er Regel einrichte….

Die Zone des /24 würde damit wie folgt aussehen:

$ORIGIN 3.2.1.in-addr.arpa.
$TTL 1D
@ 1D IN SOA ns1.kernel-error.de. hostmaster.kernel-error.de. (
              2014101701      ; serial
              6H              ; refresh
              30M             ; retry
              2W              ; expiry
              1D )            ; minimum

            IN NS  ns1.kernel-error.de.
            IN NS  ns2.kernel-error.org.

0/29        IN NS    ns1.vandemeer.de.
0/29        IN NS    ns2.vandemeer.de.
0           IN CNAME 0.0/29.3.2.1.in-addr.arpa.
1           IN CNAME 1.0/29.3.2.1.in-addr.arpa.
2           IN CNAME 2.0/29.3.2.1.in-addr.arpa.
3           IN CNAME 3.0/29.3.2.1.in-addr.arpa.
4           IN CNAME 4.0/29.3.2.1.in-addr.arpa.
5           IN CNAME 5.0/29.3.2.1.in-addr.arpa.
6           IN CNAME 6.0/29.3.2.1.in-addr.arpa.
7           IN CNAME 7.0/29.3.2.1.in-addr.arpa.

Wie zu erkennen, ist die Zone zuständig für 1.2.3.0-255… Die DNS Server sind dabei (ns1.kernel-error.de und n2.kernle-error.org). Das erste /29 aus diesem /24 gehört dem Kunden hinter der Domain vandemeer.de. Es wird also eine „Subdomain“ angelegt mit dem Namen 0/29. Die 0 steht dabei für die Netzadresse des Netzes und die 29 für die CIDR Suffix. Diese „Subdomain“ wird von den DNS Servern ns1.vandemeer.de und ns2.vandemeer.de bedient. Damit nun alle angefragten PTR-RECORDS für dieses Netz auch an den DNS-Server des Kunden weiter gehen, muss für jede IP Adresse ein CNAME für eine Adresse in der neuen Zone des Kunden erstellt werden.

Für die IPv4-Adresse 1.2.3.4 wäre es also:

4           IN CNAME 4.0/29.3.2.1.in-addr.arpa.

Eine Abfrage mit dig würde jetzt bereits folgende Antwort liefern:

$ dig -x 1.2.3.4

; <<>> DiG 9.10.1 <<>> -x 1.2.3.4
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47287
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;4.3.2.1.in-addr.arpa.    IN      PTR

;; ANSWER SECTION:
4.3.2.1.in-addr.arpa. 10799 IN    CNAME   4.0/29.3.2.1.in-addr.arpa.

;; Query time: 103 msec
;; SERVER: 192.168.10.1#53(192.168.10.1)
;; WHEN: Fr Okt 17 10:59:19 CEST 2014
;; MSG SIZE  rcvd: 106

Jetzt kann der Kunde auf seinem DNS Server die folgende PTR-Zone einrichten:

$ORIGIN 0/29.3.2.1.in-addr.arpa.
$TTL 1D
@ 1D IN SOA ns1.vandemeer.de. hostmaster.vandemeer.de. (
              2014101701      ; serial
              6H              ; refresh
              30M             ; retry
              2W              ; expiry
              1D )            ; minimum

            IN NS  ns1.vandemeer.de.
            IN NS  ns2.vandemeer.de.

0           IN PTR netzadresse.vandemeer.de.
1           IN PTR router.vandemeer.de.
2           IN PTR mailin.vandemeer.de.
3           IN PTR imap.vandemeer.de.
4           IN PTR webserver.vandemeer.de.
5           IN PTR frei.vandemeer.de.
6           IN PTR frei.vandemeer.de.
7           IN PTR broadcastadresse.vandemeer.de.

Startet man nun die gleiche dig Abfrage, bekommt man die vollständige und gewünschte Antwort:

$ dig -x 1.2.3.4

; <<>> DiG 9.10.1 <<>> -x 1.2.3.4
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47287
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;4.3.2.1.in-addr.arpa.    IN      PTR

;; ANSWER SECTION:
4.3.2.1.in-addr.arpa. 10799 IN    CNAME   4.0/29.3.2.1.in-addr.arpa.
4.0/29.3.2.1.in-addr.arpa. 14399 IN PTR  webserver.vandemeer.de.

;; Query time: 103 msec
;; SERVER: 192.168.10.1#53(192.168.10.1)
;; WHEN: Fr Okt 17 10:59:19 CEST 2014
;; MSG SIZE  rcvd: 106

Es klingt und sieht also mal wieder komplizierter aus als es ist!

Probleme?

Ja es gibt auch Probleme! Wäre ja zu schön, wenn nicht 😀

Laut RFC darf ein PTR-Record eigentlich kein CNAME sein. Nur halt für diesen speziellen Fall! Das RFC ist nun von 1998… Denn noch scheint es sich nicht sonderlich „herumgesprochen“ zu haben. Ich möchte damit sagen, dass es immer mal wieder bei Problemen dazu kommen kann, dass man seinem Gegenüber zuerst das RFC 2317 erklären muss, bevor es weiter geht 🙂

Ebenfalls macht Postfix ärger, wenn man folgende smtpd restrictions gesetzt hat: reject_unknown_client

Denn diese prüft ob helo / PTR und A/AAAA zueinander passen. Nutzt man reverse map delegation, werden diese nicht zueinander passen!

Oct  17 10:00:00 mx30 postfix/smtp[54786]: FFCC569824: host mx.example.org[4.5.6.7] said: 450 4.1.7 <super@maildomain.de>: Sender address rejected: unverified address: host mail.rennboot.de[3.4.5.6] said: 450 4.7.1 Client host rejected: cannot find your hostname, [4.5.6.7] (in reply to RCPT TO command) (in reply to RCPT TO command)

Betreibt man also einen größeren Mailserver, vermeidet es Arbeit und Ärger, wenn man auf dieser IPv4 Adresse kein reverse map delegation einsetzt.

Tja… Fragen? Dann wie immer: fragen! 😀

SSLv3 ist tot…

Nein, ich habe es nicht überlesen 🙂 SSLv3 ist damit wohl hoffentlich tot!

Es ist ja nicht so als wenn man nicht schon davor gewarnt hätte 😛 Oh was hat diese Meldung bei mir für gute Laune geführt! Wieder mal ein richtiger „Told you so“ Moment für mich.

Oh ja, was zum Lesen gefällig?

http://googleonlinesecurity.blogspot.ru/2014/10/this-poodle-bites-exploiting-ssl-30.htmlhttps://www.openssl.org/~bodo/ssl-poodle.pdf

Bäääähhhhmmmm! Das schreit nach einem GIF!

Auf die schnell böse Dinge deaktivieren…

Postfix:

smtpd_tls_protocols = !SSLv2, !SSLv3
smtpd_tls_ciphers=high
tls_high_cipherlist=EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA

Dovecot:

ssl_cipher_list = ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4
ssl_protocols = !SSLv2 !SSLv3

Apache2:

SSLEngine on
SSLProtocol +ALL -SSLv3 -SSLv2
SSLHonorCipherOrder On
SSLCipherSuite ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4
SSLCompression off
Header always set Strict-Transport-Security "max-age=15552000"

Linux Backintime Datensicherung / Backup

Kaum schreibe ich etwas zur Datensicherung meines FreeBSD Notebooks, schon kommt die Frage, wie ich einen/meinen Linux Desktop sichern würde….

Um es kurz zu machen, ich nutze dazu seit langem bereits das Programm backintime. Es arbeitet mit rsync und hardlinks ebenfalls bietet es die Möglichkeit seine Sicherungen auf alle möglichen Ziele zu schieben, so auch per SSH nach irgendwo.

Wer rsnapshot für Unix Server kennt… Es ist so ähnlich nur bei Bedarf mit GUI. Zusätzlich lässt sich noch schnell und einfach etwas Krypto ins Spiel bringen. Die Datensicherungen lassen sich so sehr schnell und vor allem einfach erstellen und wiederherstellen. Probiert es einfach mal!

Fragen? Dann fragen 🙂

Raspberry Pi als Radiosender: Schritt-für-Schritt-Anleitung

Kinder sind etwas Wunderbares, so auch meine beiden. Die größere hört zum Einschlafen gerne ein Hörspiel und beim Spielen hören und tanzen beide gerne zu etwas Kindermusik. Klar haben sie eine kleine Kompaktanlage in ihrem Kinderzimmer…. Jetzt gibt es Kinderhörspiele und oder Musik aber kaum noch auf einer Kassette, sondern fast nur noch auf CD oder gleich als MP3. Keine Ahnung wie es bei euren Kindern ist, bei uns leben CDs nicht sonderlich lange. Ich grille also in der Woche 3 bis 4 CDs. Viel schlimmer ist aber, wenn die Lieblingscd nach 38Minuten Spielzeit plötzlich an eine Stelle mit Kratzer gelangt und beginnt unverständlichen Lärm zu machen!

Es muss also eine Lösung her:

Ich habe hier noch den einen oder anderen Raspberry PI „herumliegen“. Warum also nicht diesen zusammen mit dem MPD einfach als kleinen Musikspieler nutzen? Die gekauften MP3-Alben liegen eh alle auf dem kleinen Server und können per NFS gemountet werden. WLAN ist im ganzen Haus und wir Eltern können mit einer Android-App alles schnell und bequem steuern. Was soll ich sagen? Das Projekt war innerhalb von 1,5h erledigt, getestet und von den Kindern abgenommen.

Nun fristet der CD-Spieler im Kinderzimmer ein eher trostloses und vor allem ungenutztes Leben. Nur das Radio läuft hin und wieder am Abend für die WDR5 Bärenbude. Radio….. Irgendwo habe ich doch im Zusammenhang mit dem Raspberry PI etwas zu FM Radio gelesen! Es gibt ein kleines Stück python Software; PIFM! Es ist in der Lage einen WAV-Stream über Pin 4 des Raspberry PI oder besser über eine ca. 15cm lange Antenne/Kabel, welches an Pin 4 des Raspberry PI angeschossen ist; in die Welt zu „funken“. So das man es über ein einfaches Radio empfangen kann. Ein neues Projekt? Japp genau!!!

Um das Radiosignal des Raspberry PI etwas zu verstärken und zu filtern habe ich eine kleine Schaltung genutzt. Für Web-Streams (mpd kann ja auch streamen) nutze ich sox, welches seine Ausgabe direkt in das kleine Python-Progrämmchen schiebt. So würde nun also auch das Radio meiner Kinder wieder eine Aufgabe finden, wenn dieses so in Deutschland nur zulässig wäre. Den in Deutschland darf man zwar auf den Radio-Frequenzen senden… Leider nur mit einer so geringen Stärke, dass man so nur knapp einen Meter überbrücken kann. Die Schaltung zusammen mit dem Raspberry PI reicht aber schon für das Haus inkl. Garten. Diese Version bleibt also nur ein einmaliger Versuchsaufbau.

Dabei wäre es so schön gewesen, denn der Kinderradiosender KiRaKa des WDR ist nur per DAB+ zu empfangen. Oder halt als Stream aus dem Internet. Dieser würde sich also mit dem Raspberry PI einfach als FM Signal funken und empfangen lassen. So könnten die Kinder im ganzen Haus und Garten immer KiRaKa hören. Schade dass es nicht geht, oder?

Hier ein paar Bilder vom PIFM Projekt…

Fragen? Dann fragen 🙂

Parallel SSH

Immer mal wieder kommt es vor, dass man auf mehreren Systemen eine Kleinigkeit ändern muss. So zum Beispiel den Besitzer eines Scriptes oder ähnliches. Bei 5 oder 6 Servern ist dieses noch schnell gemacht, ab einer gewissen Menge wird es wiederum sehr zeitaufwendig. Selbst Systeme wie Puppet oder Chef sind hier nicht immer hilfreich und für so etwas wie die Änderung des Besitzers einer Datei; schießt man schon etwas mit Kanonen auf Spatzen.

Ich nutze dafür seit einigen Jahren pssh (Parallel ssh). Es ist aus meiner Sicht perfekt für kleinere Bash-Einzeiler, welche auf vielen Systemen ausgeführt werden müssen.

Ich möchte es hier am angesprochenen Beispiel der Besitzänderung eines Scriptes vorstellen. Folgende Aufgaben müssen dabei erledigt werden:

1. Login per SSH auf dem jeweiligen Server.
2. Änderung des Besitzers und der Gruppe des Scriptes: /home/aglp02/del_import_sync.sh.
3. Anhand von ls -ls prüfen ob die Änderung angekommen ist.
4. Logout und wegspeichern der Bash Ausgabe.

pssh setzt dabei funktionsfähiges SSH sowie den ssh-agent voraus. Wer nicht sicher ist ob es arbeitet:

$ ssh-agent && ssh-add

Für die Installation von pssh wird python sowie die setup-tools benötig. Sind diese Da ist die Installation schnell erledigt mit:

$ wget http://www.theether.org/pssh/pssh-1.4.3.tar.gz
$ tar xvzf pssh-1.4.3.tar.gz
$ cd pssh-1.4.3.tar.gz
$ sudo python setup.py install

Ich erstelle mir immer im Home meines Users den Ordner pssh und dort viele Textdateien in welche ich die jeweiligen Server gruppiere. So muss ich nicht mal mehr darüber nachdenken wenn ich ein Kommando auf einer gewissen Gruppe von Server ausführen will (alle Webserver / alle Mailserver / alle Applikationserver / alle Server an einem Standort / usw…).

In meinem Beispiel geht es um alle Applikationserver in Berlin und damit sieht meine Gruppendatei wie folgt aus:

$ cat /home/kernel/pssh/srv.aps.ber.txt 
srv.aps01.ber
srv.aps02.ber
srv.aps03.ber
srv.aps04.ber
srv.aps05.ber
srv.aps06.ber
srv.aps07.ber
srv.aps08.ber
srv.aps09.ber
srv.aps10.ber
srv.aps11.ber
srv.aps12.ber
srv.aps13.ber
srv.aps14.ber
srv.aps15.ber
srv.aps16.ber
srv.aps17.ber
srv.aps18.ber
srv.aps19.ber
srv.aps20.ber
srv.aps21.ber

Damit kann ich auch schon mein Kommando absetzten. Ich erkläre den Aufbau weiter unten.

$ pssh -h srv.aps.ber.txt -l root -o /home/kernel/pssh/out-`date +"%m-%d-%y_%H:%M:%S"` "chown aglp02:aglp02 /home/aglp02/del_import_sync.sh; ls -la /home/aglp02/del_import_sync.sh;"
[1] 10:17:35 [SUCCESS] srv.aps17.ber 22
[2] 10:17:35 [SUCCESS] srv.aps03.ber 22
[3] 10:17:35 [SUCCESS] srv.aps01.ber 22
[4] 10:17:36 [SUCCESS] srv.aps12.ber 22
[5] 10:17:36 [SUCCESS] srv.aps04.ber 22
[6] 10:17:36 [SUCCESS] srv.aps16.ber 22
[7] 10:17:36 [SUCCESS] srv.aps08.ber 22
[8] 10:17:36 [SUCCESS] srv.aps15.ber 22
[9] 10:17:36 [SUCCESS] srv.aps05.ber 22
[10] 10:17:36 [SUCCESS] srv.aps09.ber 22
[11] 10:17:36 [SUCCESS] srv.aps20.ber 22
[12] 10:17:36 [SUCCESS] srv.aps10.ber 22
[13] 10:17:36 [SUCCESS] srv.aps11.ber 22
[14] 10:17:36 [SUCCESS] srv.aps21.ber 22
[15] 10:17:36 [SUCCESS] srv.aps07.ber 22
[16] 10:17:36 [SUCCESS] srv.aps19.ber 22
[17] 10:17:36 [SUCCESS] srv.aps02.ber 22
[18] 10:17:37 [SUCCESS] srv.aps13.ber 22
[19] 10:17:37 [SUCCESS] srv.aps06.ber 22
[20] 10:17:37 [SUCCESS] srv.aps14.ber 22
[21] 10:17:37 [SUCCESS] srv.aps18.ber 22

-h gibt die zu verwendente Datei mit den Hosts an.
-l Benutzername für den Login auf dem Server.
-o Ordner für die Bash-Ausgabe der einzelnen Server. Landet bei mir immer pssh-Ordner. Ich lasse mir dabei gerne einen Unterordner erstellen, welche das aktuelle Datum und die aktuelle Uhrzeit enthält. So kann ich die Ausgaben besser zuordnen.
Das/die auszuführenden Bash-Commands.

Als Antwort erhalte ich dann auf welchem Server dieses Kommando ausgeführt wurde. Dabei sieht man recht schön, dass die Hosts nicht nach der Reihe abgearbeitet werden, sondern gleichzeitig.

Die einzelnen „Logdateien“ der Bash-Ausgaben, von den einzelnen Servern sollten nun wie folgt zu finden sein:

$ ls -la /home/kernel/pssh/out-09-22-14_10:17:35/
insgesamt 40
drwxr-xr-x 2 kernel kernel 4096 22. Sep 10:17 .
drwxr-xr-x 4 kernel kernel 4096 22. Sep 10:17 ..
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps01.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps02.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps03.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps04.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps05.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps06.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps07.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps08.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps09.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps10.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps11.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps12.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps13.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps14.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps15.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps16.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps17.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps18.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps19.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps20.ber
-rw-r--r-- 1 kernel kernel   73 22. Sep 10:17 srv.aps21.ber

Wir dürfen nun also in den einzelnen Files die Antwort auf das ls -la erwarten. Schauen wir mal rein:

$ cat /home/kernel/pssh/out-09-22-14_10:17:35/srv.aps01.ber
-rwxr-xr-x 1 aglp02 aglp02 1801 Jan 21  2009 /home/aglp02/del_import_sync.sh

So lässt sich nun kontrollieren ob alles sauber erledigt wurde oder ob ich noch irgendwo „ran“ muss.

Ist pssh also einmal vorbereitet lässt es sich wunderbar und schnell in seine Arbeit integrieren.

Viel Spaß…

Die ersten Zertifikate mit SHA-256 Checksumme und SNI

Auf meiner privaten Kisten sind nun die ersten Zertifikate mit SHA256 Checksumme aktiv. Zum ersten mal auch auf einer IPv4 per SNI. Damit habe ich nun zwar alle Windows XP User an der Stelle abgehängt… 2014 kann ich damit aber mehr als gut leben 😀

Gewarnt hatte ich ja bereits und inzwischen geht Google hier ja auch nach vorne: Google Browser Chrome wirft SHA1 Zertifikate weg…

Damit ist nun mein munin (https://munin.kernel-error.com/) und der ampache (https://ampache.kernel-error.com) nur noch über diesen Weg und mit diesen Zertifikaten erreichbar \o/

https://www.ssllabs.com/ssltest/analyze.html?d=ampache.kernel-error.com

https://www.ssllabs.com/ssltest/analyze.html?d=munin.kernel-error.com

So long…

downtime for maintenance

In Kürze wird mein Server oder besser einige Dienste offline gehen. Dieses natürlich nur für eine kurze Wartungszeit 🙂 Daher bitte nicht wundern!

Sondern einfach nur zurücklehnen…..


U-P-G-R-A-D-E

Um die Neugierde zu befriedigen… Das System ist auf einen neuen Server umgezogen und dieser hat etwas mehr Leistung als der alte. 

Beschreibung vorher nachher
Anbindung WAN 100Mbit/s 1GB/s
RAM 6GB 30GB
CPU-Cores 4 6
Storage 300GB 2TB inkl. SSD
« Ältere Beiträge Neuere Beiträge »

© 2025 -=Kernel-Error=-

Theme von Anders NorénHoch ↑