Datenhaufen zu IT und Elektronik.

Autor: kernel-error (Seite 39 von 48)

R-DNS geht nicht

Na toll… Unsere RIPE hat gerade echte Probleme mit ihrem DNS System 😛 Da brennt wohl gerade der Busch:

RIPE schreibt folgendes an die RIPE-Members-Mailingliste:

„It seems that our DNS provisioning system has developed a major fault, with the result that it is unable to generate DNS zonelets for the other RIRs.
This required a complete bootstrap of the system, and unfortunately, this may take a few hours, during which no DNS provisioning will happen.
We are aware of the problems and our engineers in the DNS department are working hard to fix the issue as soon as possible. Unfortunately at the moment we are not able to provide an estimated time of the repair yet.
An announcement will be sent out to all the Working Group Mailing list with a detailed explanation of the issue and a summary of what is actually being done for fixing it.
Please accept our apologies for the inconvenience and the troubles that the issue may have caused to you.
Regards,
Jarek“

Mehr hier: http://www.ripe.net/internet-coordination/news/announcements/update-regarding-the-reverse-dns-services-issues

Die Liste ist aber nicht wirklich aktuell….

Hier auch noch mehr: http://www.ripe.net/lir-services/service-announcements

Hinzufügen der GPG Keys zum DNS

GnuPG bietet seit längerem verschiedene Möglichkeiten DNS Server nach gpg/pgp Schlüsseln zu fragen. Die aus meiner Sicht einfachste und schnellste ist PKA.

Kann der GPG Client den Schlüssel selbstständig aus dem Internet laden muss ich mich nicht mehr darum kümmern meinen aktuellen öffentlichen Schlüssel auf allen möglichen Key-Servern zu verteilen. Kommt der Schlüssel oder die Information zum Schlüssel und dessen Fingerprint noch von dem DNS Server, welcher für die Domain/Zone zuständig ist, kann man sich noch etwas sicherer sein. Ist diese Zone dann noch per DNSsec (http://www.kernel-error.de/dnssec) geschützt… Ja dann kann man noch etwas sicherer sein! 100%tige Sicherheit gibt es nicht, ich kann mich nur den 100% annähern. Um so besser mir dieses gelingt um so sicher kann ich mir sein 🙂

Wie geht es nun? Recht einfach. Ich exportiere meinen public key und sorge dafür das http clients (https ist nicht wirklich nötig, da der Schlüssel am Ende eh mit dem Fingerprint verglichen wird) diesen herunterladen können. Dann erstelle ich einen Fingerprint meines Schlüssels und veröffentliche beide Informationen zusammen mit der/den E-Mail Adressen in der DNS Zone.

OK los geht es. Zuerst besorge ich mir die Key-ID meines GPG-Keys:

$ gpg --list-keys kernel-error@kernel-error.com

Nun exportiere ich den öffentlichen Teil meines GPG-Keys, den public Key:

$ gpg --export --armor 0F9874D8 > kernel-error.asc

Jetzt brauche ich noch den Fingerprint meines GPG-Keys:

$ gpg --list-keys --fingerprint 0F9874D8

Nun beginne ich die records für meine DNS Zonen zu bauen. Diese sehen wie folgt aus:

E-Mail Adresse (das @ wird zu ._) gefolgt vom record Type TXT sowie dem Fingerprint ohne Leerzeichen und der HTTP-Adresse des öffentlichen Schlüssels.

Für mich schaut es so aus:

Zone kernel-error.com:

kernel-error._pka.kernel-error.com.  TXT         "v=pka1;fpr=80CF90446B5867DA3A55854AF01C3E040F9874D8;uri=http://www.kernel-error.de/kernel-error.pubkey.txt"

Zone kernel-error.de:

kernel._pka.jabber.kernel-error.de.  TXT         "v=pka1;fpr=80CF90446B5867DA3A55854AF01C3E040F9874D8;uri=http://www.kernel-error.de/kernel-error.pubkey.txt"
kernel-error._pka.kernel-error.de.  TXT         "v=pka1;fpr=80CF90446B5867DA3A55854AF01C3E040F9874D8;uri=http://www.kernel-error.de/kernel-error.pubkey.txt"

Zone vandemeer.de:

sebastian._pka.vandemeer.de.  TXT         "v=pka1;fpr=80CF90446B5867DA3A55854AF01C3E040F9874D8;uri=http://www.kernel-error.de/kernel-error.pubkey.txt"

Ob sich die records abrufen lassen teste ich mit dig:

dig +short kernel-error._pka.kernel-error.com. TXT

Klappt dieses probiere ich ob gpg auch alles findet. Da ich den Schlüssel natürlich bereits in meinem Keyring habe, sage ich gpg dass es einen neuen Keyring unter /tmp/ anlegen soll. In diesen wird dann auch der Public Key importiert, wenn alles funktioniert 🙂 Das echo „foo“ | ist nur damit gpg auch Daten hat die es anfassen soll!

Es ist NICHT sicher, daß der Schlüssel zu dem in der User-ID
Genannten gehört. Wenn Sie *wirklich* wissen, was Sie tun,
können Sie die nächste Frage mit ja beantworten

Diesen Schlüssel trotzdem benutzen? (j/N) j
-----BEGIN PGP MESSAGE-----
Version: GnuPG v1.4.10 (GNU/Linux)

hQIMAyLQ0wrCELyPAQ//SaagWN6N57qIN1s0IksGwbXpchBTTW4FWZVotKUeHeHv
6LQ2abOL3ulRbzIHOmYINT3CUJ3Pf0DmFm44UqXP0Ay/R0PpANNqumshP8J+0aBY
YyhImPEk4s6qK8rJqD0+0F5sWrX7A2bPbmBHmp6BDQSpIUKxTXFTChJ0Hx7n/ntn
X3iLIpl3NYzvWd78Q+7lFcH9TDL+tLb655lwbZ4HcaQOT6NAkHAL76Td8CDQdbUM
Iu7UcZrpVebAaT7dL0HcifpNy+Vfo3xzq7b/MQsHxYASgafwtuOLCJr7Mi1bJqsk
eLZgxtLsflhgnkK/4Yj/zz7TosvUKb6ZemMxok6B95tmIMmBzJt9QPtBhuF6Uhgc
Vr6E6YSM3dKOy3e2N2YEYS/eXUk68S/2B+PtSBRxMuwMB9qIfLxqZPDrMgSoSOOz
7IaBqAy+HZ7JQdYDBg+6uLrf17+hjiX9g3X/sJB002lTqEJ5aIz+fe1QBXwqM97b
7hcOQCbEm1XQOFJmJWPsgROvpQhMZvd8ylLSIKtIKHqWgn0CkobABQ5Y9HJVkpO2
+DID8yT4Iy/be/YfCzU56i2AnswduZpK3bc2DLEPORVRp6PloNOmNhTXtf6IsN1X
mZfGr3sycFq7XNY9M5nha6Jco2ZdBSgebcKNZlkPF7f1GMDfnAAJgwUcX0QMSp7S
PwFvh2D0NqPcl1Rb7ManjL5tpR0NCjnxVEPNRv0j+2Ejr7LGKH/yqZVbnr+eiSRX
FPSvDQJVgT65sPIyn0k6tg==
=k7cd
-----END PGP MESSAGE-----

Tja, damit sollte wohl nun jeder meinen GPG-Key über meinen per DNSsec geschützten DNS Server besorgen können.

SSH Host Keys in DNS Zone – sshfp und ggf. DNSSEC

OpenSSH bietet die Möglichkeit die Fingerprints der Host Keys in einer DNS Zone als SSHFP-RECORD zu speichern. Dieses ermöglicht bei einem Verbindungsaufbau, die Fingerprints gegenn welche in der DNS Zone zu validieren. Es kann daher helfen, sich z.B. gegen man in the middle Angriffe zu schützen. Ist die Zone zusätzlich noch per DNSSEC (http://www.kernel-error.de/dnssec) geschützt, hat man schon eine recht hohe Sicherheit gegen solche Angriffe. Dieses zielt hauptsächlich darauf ab, Zugriffe per Kennwort zu sichern. Basiert das Login auf SSH Schlüssel, kann ein Angreifer im seltensten Fall etwas mit den Daten anfangen, dennoch hilft jedes Stückchen mehr Sicherheit! OK, es steht und fällt alles wieder beim Thema DNS, daher bitte auf DNSSEC achten.

Damit SSH auch prüft ob es im DNS einen passenden RECORD gibt muss folgendes in die Konfigurationsdatei /etc/ssh/ssh_config eingetragen werden, sofern man es global für alle Benutzer auf seinem Client aktivieren möchte:

$ echo "VerifyHostKeyDNS yes" >> /etc/ssh/ssh_config

Soll es für die eigene Benutzerumgebung geschehen liegt diese Konfigurationsdatei natürlich unter: ~/.ssh/ssh_config Soll es nur für die aktuelle Sitzung aktiviert werden, lässt es sich als Option einfach mitgeben:

$ ssh -o "VerifyHostKeyDNS=yes" www.kernel-error.de

Baut man nun eine Verbindung auf, fragt OpenSSH den DNS Server ob dieser Informationen zum erwarteten Fingerprint liefern kann. Sind keine Einträge in der DNS Zone vorhanden schaut der Verbindungsaufbau wie folgt aus:

$ ssh -v www.kernel-error.de
OpenSSH_5.5p1 Debian-6+squeeze2, OpenSSL 0.9.8o 01 Jun 2010
.....
DNS lookup error: data does not exist
The authenticity of host 'www.kernel-error.de (2001:7d8:8001:100::dead:beef)' can't be established.
RSA key fingerprint is fc:aa:73:17:bc:6a:0a:4f:af:3a:98:9e:73:b8:c4:68.
No matching host key fingerprint found in DNS.
Are you sure you want to continue connecting (yes/no)?

Um dieses zu „verbessern“, gibt mehrere Möglichkeiten die SSHFP RR für seine Zone zu erstellen. Es gibt das Programm sshfp…

$ sshfp www.kernel-error.de
www.kernel-error.de IN SSHFP 1 1 f9dfcb6311e31da8c267ae53a5830887bd2bb3b3
www.kernel-error.de IN SSHFP 2 1 97179afabaaf9b68b05dbf1357cffe3de6ce76fe

Dann gibt es unter anderem noch die, von mir präferierte Lösung, direkt per ssh-keygen auf dem Zielhost (Server):

$ ssh-keygen -f /etc/ssh/ssh_host_rsa_key.pub -r www.kernel-error.de.
www.kernel-error.de. IN SSHFP 1 1 47890eecc9a2893061734b07b8f60caa1a856148
www.kernel-error.de. IN SSHFP 1 2 b2518ad49cc2adf517d3f6a9faaf4017abc2c3e33dae0a29c46226e9ff691cd2
$ ssh-keygen -f /etc/ssh/ssh_host_ecdsa_key.pub -r www.kernel-error.de.
www.kernel-error.de. IN SSHFP 3 1 3dd9de0dcf1523341b45a53f1d57043609e26c62
www.kernel-error.de. IN SSHFP 3 2 e1c76bd66b5a0641789b0b37be5b80ae3f6395c1cd2b73cca532a8111c9515b4

Dabei ist der SSHFP-RECORD wie folgt aufgebaut:

Zielhost  ==>  Protrokollart  ==>  RR-Typ  ==> Host-Key Algorithmus ==> Hash-Art des FP ==> Fingerprint

Folgende Host-Key-Algorithmen sind bisher definiert:

  1.  1 ssh-rsa
  2.  2 ssh-dss
  3.  3 ecdsa
  4.  4 ed25519

Hash-Arten des FP sind dabei SHA1 und SHA2(56).  1 wäre dabei SHA1 und 2 logischerweise SHA2

Diese fertigen RECORDS kann man nun in seiner DNS-Zone veröffentlichen, dass die Zone zum Host zu passen hat, muss ich ja sicher nicht mehr erwähnen, oder?

Baut man nun die Verbindung erneut auf, findet OpenSSH auch etwas.

$ ssh -v www.kernel-error.de
OpenSSH_5.5p1 Debian-6+squeeze2, OpenSSL 0.9.8o 01 Jun 2010
.....
debug1: found 2 insecure fingerprints in DNS
debug1: matching host key fingerprint found in DNS
The authenticity of host 'www.kernel-error.de (2001:7d8:8001:100::dead:beef)' can't be established.
RSA key fingerprint is fc:aa:73:17:bc:6a:0a:4f:af:3a:98:9e:73:b8:c4:68.
Matching host key fingerprint found in DNS.
Are you sure you want to continue connecting (yes/no)?

Natürlich lassen sich die Einträge auch mit dig abrufen:

$ dig +short www.kernel-error.de IN SSHFP
3 1 3DD9DE0DCF1523341B45A53F1D57043609E26C62
3 2 E1C76BD66B5A0641789B0B37BE5B80AE3F6395C1CD2B73CCA532A811 1C9515B4
1 1 47890EECC9A2893061734B07B8F60CAA1A856148
1 2 B2518AD49CC2ADF517D3F6A9FAAF4017ABC2C3E33DAE0A29C46226E9 FF691CD2
SSHFP 7 3 86400 20160307114536 20150313114536 13952 kernel-error.de. hib4uoiPCBlAXytsVHsqvGdGDRPdec42nA2J7IW8mQVV/o7fb5kPfV6J ZIp4D6O0RsSWW++9QzvCd0gHiTQcQLXdpypCoSBbLYGpWnBl3zCk9zFS iLhawl79VFun7xccZU9UjWoHRyrEo5pDfN3heBgT4ycjlB2m0i40D5WQ 25pCh95yAnSB/wchW4MwffDgc+10GrRcpxWL662k6pFRpLFHsDZ2YS6c zYEK2u1nAc0hI0XqtJrXxDxZZ9reHWvmk5wAK3LHcoWOv5DFP6LyIzY8 omhm+zF9KzIt8V0PuzMD9rUfeZAZjjCsllxv39bx+UHcS0ZsKxpCV4Ny c2OSCOCyHjtc1+qgYuZlkL5rej7wOVvCTB5Jym4B0vTO7ct22/VoqEdh zLjiWXSDW87qkNnImGU1EXHMqOXU5qzxgKgRjMu6AfJYB+zRP2B2P5eJ I9sGWOWJIV24ot1dWisWeSvItXNHW84mzFVgqUUuMKZ5uQGocpWjMc7c b0h0o4P4D0HtarBuRV7Z6QsJjEy0zMst2PChi3y+WFP4ar7Tl59K3ePN 7Qw/695jjA2YitpUYWBZL052r5d2u9hBTZGPvxvJRjFfvNcdy7Sv3ii1 sl6dTp/XIlJ82xsVEwNEYqgSQVJwNEzIcH+doUF4pGKnFmOWG/NlXfYJ 9Kx2Xon6c7Y=
SSHFP 10 3 86400 20160307114536 20150313114536 12698 kernel-error.de. dbv2KMbxb4Vd+kLz86hGjdc12b3/8THtIfThd8kjm5ik9Yxo3njcw60/ sJ9wvJ4/2AiBNoEebh3wUxnoJprqsjyEdIq+7mPggVhs6VV5Sl9GZoNM 1bzkq85xjHt9/KVzLwou9/s0t9PgZ3vl2wU6MMl5MvleGumw+w6DnZpz NXzX57IpMs3TCMHPVhpYglGjtRcDPnfFSqbLLwnM5rbidp80iEob/d3J Xm6lSPBuwrry4aAYErWMxxsDJBosXKGC2EQNKK5PrkVF9JbWwXUFXowU H9m1iNsDaRBP6xqKoa+I4efR9GNojb55s2Nh1b6T+9zVyjcclp2rYbt/ QL6l6GSTHvoP6L7o3H3heg1Q4uUu+mj7a8lEHfuF2jbp6afjrL17hR/b v7ArzP7PpV6KOmx15pBLH3V0GoEle7WKon65+6mNaDDvs5yh7LSd1Im3 zAi1C0TUkf4VN4MU+FhDh+r6KKsqh0WvP0hc7UaTcpEIH3ox7QbHGvf7 zxiBypRVfrrW3OQhQvRk6U4wIIx1XicaYRfkPmEL/OtYTc9B81dGe3ci JLZLedMCWifPtsO+B3ml5apH8+MTu7fyWEpf4NPz2egWzFkHYsl8Out8 2z7jzhPwgAfyZ2qr0z1SZWSpxvZ/P7LqNaauoFQxpyZT6/qFXA8M1quf Tornope2Y4E=

Wie immer bei DNSSEC zur Sicherheit prüfen ob die Antwort „sauber“ ist:

$ dig +dnssec www.kernel-error.de IN SSHFP |grep flags
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1
; EDNS: version: 0, flags:; MBZ: 7e06 , udp: 512

In der Antwort muss das ad flag gesetzt sein!!!

Nach all dieser Arbeit könnte man nun noch OpenSSH anweisen, die Verbindung nur aufzubauen, wenn der Host-Key erfolgreich validiert werden konnte. Dieses wieder, wie oben beschrieben, in der /etc/ssh/ssh_config oder den anderen Stellen:

Host *
    StrictHostKeyChecking yes

Ich mag solche Dinge sehr 🙂 Sehr kleiner Aufwand und schon ist es um einiges sicherer…


Kleines Update 16.02.2015

ed25519 erst richtig ab OpenSSH Version 6.7, ecdsa fragwürdig sicher und dss bitte NICHT! Ich will sagen >= OpenSSH 6.6 4096bit RSA bitte 🙂

Der Verbindungsaufbau sieht in der aktuellen OpenSSH Version etwas anders aus. Erfolgreich sollte es so aussehen:

debug1: found 4 secure fingerprints in DNS
debug1: matching host key fingerprint found in DNS

Inzwischen arbeitet OpenSSH direkt mit DNSSEC, wenn möglich. Solltet ihr also der Meinung sein, Fingerprints und Zone korrekt konfiguriert zu haben, OpenSSH wird aber einfach nicht „glücklich“… Dann prüft doch mal bitte auf Extension mechanisms for DNS (http://en.wikipedia.org/wiki/Extension_mechanisms_for_DNS)! Aktiviert sich normalerweise mit folgender Zeile in der /etc/resolv.conf

options edns0

Interrupt a zpool scrub

Möchte man einen zfs scrub abbrechen, da man die Leistung gerade besser brauchen kann, geht dieses mit folgendem Befehl:

$ zpool scrub -s PoolName

Im zpool status würde man dann folgendes sehen:

scrub: scrub stopped after 0h7m with 0 errors on Sun May 27 11:18:52 2012

im Gegensatz zu:

scrub: scrub completed after 0h7m with 0 errors on Sun May 26 10:52:13 2012

Dunning-Kruger-Effekt

OK, ist ein alter Hut…. http://de.wikipedia.org/wiki/Dunning-Kruger-Effekt denn noch haben die beiden absolut recht. Immer wenn es mir selbst passiert, muss ich sofort wieder daran denken. Dumm nur dass man oft erst nachher merkt wie unfähig ich mal wieder bin/war… Glücklicherweise kann man sich ja verbessern und somit immer etwas besser werden.

Ist es schon ein guter Anfang verstanden zu haben dass man eigentlich keine Ahnung hat?

DNS konfigurieren um die XMPP Information zu verteilen

Warum vergessen nur immer alle die DNS Informationen zu ihrem neuen Jabber-Server zu setzten? Ich bin heute sicher zum 12 mal nach einem Problem gefragt worden welches damit zusammen hing. Die Info fehlt aber auch in _fast_ jedem Howto. Kopieren denn wirklich alle nur noch Zeile für Zeile? Als Wikipedia mal einen Tag ausgesetzt hat, konnten tausende keine Hausaufgaben abgeben. Irgendwie habe ich dass Gefühl, wenn Google mal einen Tag aussetzten würde könnten tausende „Admins“ nichts installieren oder Probleme lösen ;-P

Also um es noch mal in Google zu werfen:

Damit die Kommunikation zwischen den Jabber-Server sauber läuft müssen die nötigen DNS Records vorhanden sein. Für meinen Bind schaut es so aus wie im folgenden Beispiel:

_jabber._tcp.jabber.kernel-error.de.       IN SRV   0 0 5269   jabber.kernel-error.de.
_xmpp-server._tcp.jabber.kernel-error.de.  IN SRV   0 0 5269   jabber.kernel-error.de.
_xmpp-client._tcp.jabber.kernel-error.de.  IN SRV   0 0 5222   jabber.kernel-error.de.

Testen lässt sich dieses am Ende natürlich mit dig:

$ dig SRV _xmpp-server._tcp.jabber.kernel-error.de +short
0 0 5269 jabber.kernel-error.de.

$ dig SRV _xmpp-client._tcp.jabber.kernel-error.de +short
0 0 5222 jabber.kernel-error.de.

Firefox Addon Instanfox

Boar ist das geil 🙂 Ich kann mich daran erinnern ähnliches früher im Konqueror genutzt zu haben. Na ja in sehr abgespeckter Version.

g: suchbegriff in der Konqueroradresszeile suchte für mich direkt in google.

OK ok… Google. Chrome Benutzer sind es eh schon gewöhnt alles in die Adresszeile zu tippen und dann das Googleergebnis als gottgegeben hinzunehmen.

Ich möchte jetzt nicht Google schlecht machen oder gar verteufeln, keine Sorge. Ich halte es nur für gefährlich sich ausschließlich auf eine Meinung zu verlassen! In der letzten Zeit scheint ja Google und Facebook _DAS_ Internet für viele zu sein. Ich schweife ab….

Dieses Firefox Addon (Instantfox) erweitert die Adresszeile so dass man direkt in verschiedenen Diensten suchen kann. Glücklicherweise kann man sogar selbst bestimmen wo man sucht. Alles natürlich mit der bekannten Autovervollständigung.

Als kleines Beispiel, gibt man in die Firefox Adresszeile ein:

g Wurstsuppe

Schon sucht er bei Google nach Wurstsuppe.

m Hattingen, NRW

Schon sucht er bei Google Maps nach Hattingen in NRW.

a 250GB SSD

Schon sucht er bei Amazon nach einer 250GB SSD.

Mehr und besser bebilderte Beispiele finden sich auf der Webseite vom Instantfox.

Leider gewöhnt man sich schnell daran und wundert sich dann über „wirre“ Fehlermeldungen an Systemen ohne ein solches Addon. Mir macht es die Arbeit leichter und schneller. Ich denke mir, einen Blick ist es wert!

 

 

Das beste Öl der Welt

Habe ich überhaupt schon mal vom besten Öl der Welt erzählt? Nein… böse böse.. Hier also nun mal etwas „Werbung“ 🙂 Ballistol Ich benutze es seit Jahren und.. Bla bla.. Nein, jetzt im Ernst. Das Zeug ist wirklich geil. Schaut es euch einfach mal an! Manche sagen es riecht etwas komisch, ich finde den Geruch aber recht angenehm. Davon mal abgesehen verfliegt er recht schnell. Das Zeug flutscht einfach in jede kleinste Ritze. Ok, es schmeckt echt schlecht. Sonst kann ich wirklich nichts schlechtes an diesem Öl finden.

Ballistol Öl Oel

« Ältere Beiträge Neuere Beiträge »

© 2025 -=Kernel-Error=-

Theme von Anders NorénHoch ↑