{"id":202,"date":"2021-04-21T08:00:12","date_gmt":"2021-04-21T06:00:12","guid":{"rendered":"https:\/\/pascal-korz.de\/blog\/?p=202"},"modified":"2021-04-18T22:33:00","modified_gmt":"2021-04-18T20:33:00","slug":"freeipa-multi-master-umgebung-replica","status":"publish","type":"post","link":"https:\/\/pascal-korz.de\/blog\/2021\/04\/21\/freeipa-multi-master-umgebung-replica\/","title":{"rendered":"FreeIPA: Multi-Master-Umgebung (Replica)"},"content":{"rendered":"\n<p>Um mehr Ausfallsicherheit zu gewinnen, kann man zus\u00e4tzliche FreeIPA-Domain-Controller aufsetzen. Dazu installiert man einen zweiten FreeIPA-Server und geht dabei mit wenigen Ausnahmen wie beim ersten Server vor.<\/p>\n\n\n\n<div class=\"wp-block-group is-style-default has-green-background-color has-background tw-shadow\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<p>Diese Anleitung kann f\u00fcr sich genommen hilfreich sein, baut aber auf folgendem Beitrag auf:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a rel=\"noreferrer noopener\" href=\"https:\/\/pascal-korz.de\/blog\/2018\/12\/08\/freeipa-installation-eines-domain-controllers\/\" data-type=\"post\" data-id=\"130\" target=\"_blank\">FreeIPA: Installation eines Domain Controllers<\/a><\/li><\/ul>\n<\/div><\/div>\n\n\n\n<p>Der zweite Server tr\u00e4gt nat\u00fcrlich einen anderen Hostname und hat eine andere statische IP-Adresse (<code>192.168.111.11<\/code>). Au\u00dferdem trage ich w\u00e4hrend der Netzwerkkonfiguration als DNS-Server meinen ersten FreeIPA-Server (<code>192.168.111.10<\/code>) ein, der als DNS-Forwarder zu den Google-DNS-Servern (<code>8.8.8.8<\/code>) eingerichtet wurde. Auf diese Weise leistet der erste Server die Aufl\u00f6sung von Namen innerhalb meiner FreeIPA-Dom\u00e4ne und von Namen im Internet.<\/p>\n\n\n\n<p>Die Angabe meines ersten Servers als DNS-Server ist wichtig, weil sonst w\u00e4hrend der folgenden FreeIPA-Client-Installation auf dem zweiten Server die automatische Erkennung der FreeIPA-Dom\u00e4ne und die Einrichtung des Clients f\u00fcr Failover nicht funktioniert.<\/p>\n\n\n\n<p>Auf dem zweiten Server werden wie auf dem ersten Server die FreeIPA-Pakete installiert und die Firewall-Regeln angepasst:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo yum install ipa-server ipa-server-dns\nsudo firewall-cmd --add-service freeipa-ldap --permanent\nsudo firewall-cmd --add-service freeipa-ldaps --permanent\nsudo firewall-cmd --add-service dns --permanent\nsudo firewall-cmd --reload<\/code><\/pre>\n\n\n\n<p>Es folgt die Installation des FreeIPA-Clients, um den Server als neuen Host in die Dom\u00e4ne aufzunehmen:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ipa-client-install --mkhomedir<\/code><\/pre>\n\n\n\n<p>Danach f\u00fcge ich den zweiten Server zur Host-Gruppe ipaservers hinzu:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>kinit admin\nipa hostgroup-add-member ipaservers --hosts cgn-ipa02.ipa.animentor.de<\/code><\/pre>\n\n\n\n<p>Nun erfolgt die eigentliche Bef\u00f6rderung zum Replica-Server. Es ist kein Dom\u00e4nenadministrator-Passwort mehr erforderlich, weil der Server bereits Mitglied der Host-Gruppe ipaservers ist:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ipa-replica-install<\/code><\/pre>\n\n\n\n<p>Die Installation wird auf Nachfrage mit <code>yes<\/code> fortgesetzt, obwohl der reverse lookup der IP-Adresse unter Missachtung der <code>\/etc\/hosts<\/code> fehlschlug. In den n\u00e4chsten Minuten werden alle Server-Komponenten eingerichtet.<\/p>\n\n\n\n<p>Damit auch DNS-Server und Zertifizierungsstelle redundant verf\u00fcbar sind, werden diese beiden optionalen Komponenten nachinstalliert. Beim DNS-Server ist zu beachten, dass genau wie auf dem ersten DNS-Server ein Forwarder auf einen externen DNS-Server, in meinem Fall <code>8.8.8.8<\/code>, gesetzt werden sollte:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ipa-dns-install<\/code><\/pre>\n\n\n\n<p>Die Installation der Zertifierungsstelle geschieht mit dem folgenden Befehl:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ipa-ca-install<\/code><\/pre>\n\n\n\n<p>Vom Status der Komponenten des FreeIPA-Replica-Servers k\u00f6nnen wir uns schlie\u00dflich mit folgendem Befehl \u00fcberzeugen:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ipactl status<\/code><\/pre>\n\n\n\n<p>Wie auch beim ersten FreeIPA-Server k\u00f6nnen wir nun die IP-Adresse <code>127.0.0.1<\/code> (localhost) als DNS-Server in den Netzwerkeinstellungen des FreeIPA-Servers hinterlegen: Da er selber auch DNS-Server mit einem Fowarder zur Au\u00dfenwelt ist, kann er sich jegliche DNS-Abfragen selber beantworten. Eine M\u00f6glichkeit auf Linux-Systemen mit NetworkManager, die Netzwerkeinstellungen komfortabel auf der Kommandozeile zu \u00e4ndern, ist nmtui.<\/p>\n\n\n\n<p>Auf die gleiche Weise k\u00f6nnen weitere Replica-Server aufgesetzt werden, die (bei richtiger Client-Konfiguration auf den anderen Rechnern in der Dom\u00e4ne) die Erreichbarkeit der Dom\u00e4nendienste sicherstellen.<\/p>\n\n\n\n<p>Details wie die optionale Einrichtung des SSH-Zugangs k\u00f6nnen der Anleitung zur Installation des ersten FreeIPA-Servers entnommen werden.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Um mehr Ausfallsicherheit zu gewinnen, kann man zus\u00e4tzliche FreeIPA-Domain-Controller aufsetzen. Dazu installiert man einen zweiten FreeIPA-Server und geht dabei mit wenigen Ausnahmen wie beim ersten Server vor. Diese Anleitung kann f\u00fcr sich genommen hilfreich sein, baut aber auf folgendem Beitrag auf: FreeIPA: Installation eines Domain Controllers Der zweite Server tr\u00e4gt nat\u00fcrlich einen anderen Hostname und&hellip; <a class=\"more-link\" href=\"https:\/\/pascal-korz.de\/blog\/2021\/04\/21\/freeipa-multi-master-umgebung-replica\/\"><span class=\"screen-reader-text\">FreeIPA: Multi-Master-Umgebung (Replica)<\/span> weiterlesen<\/a><\/p>\n","protected":false},"author":6,"featured_media":290,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,8],"tags":[102],"class_list":["post-202","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-freeipa","category-linux","tag-artikelreihe-testumgebung","entry"],"_links":{"self":[{"href":"https:\/\/pascal-korz.de\/blog\/wp-json\/wp\/v2\/posts\/202","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pascal-korz.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pascal-korz.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pascal-korz.de\/blog\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/pascal-korz.de\/blog\/wp-json\/wp\/v2\/comments?post=202"}],"version-history":[{"count":12,"href":"https:\/\/pascal-korz.de\/blog\/wp-json\/wp\/v2\/posts\/202\/revisions"}],"predecessor-version":[{"id":460,"href":"https:\/\/pascal-korz.de\/blog\/wp-json\/wp\/v2\/posts\/202\/revisions\/460"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/pascal-korz.de\/blog\/wp-json\/wp\/v2\/media\/290"}],"wp:attachment":[{"href":"https:\/\/pascal-korz.de\/blog\/wp-json\/wp\/v2\/media?parent=202"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pascal-korz.de\/blog\/wp-json\/wp\/v2\/categories?post=202"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pascal-korz.de\/blog\/wp-json\/wp\/v2\/tags?post=202"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}