IPAサーバー10.249.229.246, 10.249.229.223が破損しているので, ここに従って修理してみる.
IPAサーバー登録の解除
4台もあるので,どれか生存する.今回はこちらにアクセス.
で, delete:
で, いなくなった:
管理サーバーとしてはいなくなったが, DNSサーバーのSSH FingerPrintは残っている:
ここに
ほれ.
そこで, 全部チェック入れて【delete】しておく.
IPAサーバーのアンインストール
ib2007-1# ipa-server-install --uninstall This is a NON REVERSIBLE operation and will delete all data and configuration! It is highly recommended to take a backup of existing data and configuration
using ipa-backup utility before proceeding. Are you sure you want to continue with the uninstall procedure? [no]: yes Updating DNS system records Forcing removal of h223.229.249.10.1016485.vlan.kuins.net Failed to cleanup h223.229.249.10.1016485.vlan.kuins.net DNS entries: no matching entry found You may need to manually remove them from the tree ----------------------------------------------------------- Deleted IPA server "h223.229.249.10.1016485.vlan.kuins.net" ----------------------------------------------------------- Shutting down all IPA services Unconfiguring CA Unconfiguring named Unconfiguring ipa-dnskeysyncd Unconfiguring web server Unconfiguring krb5kdc Unconfiguring kadmin Unconfiguring directory server Unconfiguring ipa-custodia Unconfiguring ipa-otpd Removing IPA client configuration Removing Kerberos service principals from /etc/krb5.keytab Disabling client Kerberos and LDAP configurations Restoring user-nsswitch.conf Redundant SSSD configuration file /etc/sssd/sssd.conf was moved to /etc/sssd/sssd.conf.deleted Restoring client configuration files Unconfiguring the NIS domain. nscd daemon is not installed, skip configuration nslcd daemon is not installed, skip configuration Systemwide CA database updated. Client uninstall complete. The ipa-client-install command was successful The ipa-server-install command was successful
できた.
IPAクライアントインストール
サーバーとバージョンが一致していない場合,ダメになるので,その場合はこちらを先に行った方が良いかもしれない.証明書がタイムアウト,という事故もあり得るのでチェックしておく.中途半端に生きているIPAサーバーがあると,引っかかる場合があるので,調子が悪いやつはあらかじめ停止しておく方が良い.
ib2007-1# ipa-client-install --force-join This program will set up IPA client. Version 4.9.2 Discovery was successful! Do you want to configure chrony with NTP server or pool address? [no]: Sudo バージョン 1.8.29 configure オプション: --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --program-prefix= --disab
le-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc
--datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=
/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --prefix=/usr --sbindir=/usr/sbin
--libdir=/usr/lib64 --docdir=/usr/share/doc/sudo --disable-root-mailer --with-logging=syslog --with-logfac=authpriv
--with-pam --with-pam-login --with-editor=/bin/vi --with-env-editor --with-ignore-dot --with-tty-tickets
--with-ldap --with-ldap-conf-file=/etc/sudo-ldap.conf --with-selinux --with-passprompt=[sudo]
password for %p: --with-linux-audit --with-sssd sudoers ポリシープラグイン バージョン 1.8.29 sudoers ファイル文法バージョン 46 sudoers のパス: /etc/sudoers nsswitch のパス: /etc/nsswitch.conf ldap.conf のパス: /etc/sudo-ldap.conf ldap.secret のパス: /etc/ldap.secret 認証方法: 'pam' ログ記録時に syslog を使用する場合の syslog facility: authpriv ログ記録時に syslog を使用する場合の syslog priority: notice ユーザー認証に失敗したと時に使用される syslog priority: alert $PATH 内にある '.' を無視します ユーザー他 sudoers 内に存在しない場合にメールを送信します ユーザーが最初に sudo を実行した時に講義を行う デフォルトでユーザーが認証されていることを必要とします root が sudo を実行するかもしれません $HOME を常に変更後のユーザーのホームディレクトリに設定します 役に立つエラーメッセージを表示するためにいくつかの情報を収集することを許可します visudo が EDITOR 環境変数を尊重して使用します LOGNAME および USER 環境変数を設定します ログファイルの行頭から改行までの長さ (0 の場合は改行しない): 80 認証タイムスタンプのタイムアウト値: 5.0 分 パスワード入力要求のタイムアウト値: 5.0 分 パスワード入力の試行回数: 3 使用する umask 値 (0777 の場合はユーザーの設定値を使用します): 022 メールプログラムのパス: /usr/sbin/sendmail メールプログラムの引数フラグ: -t メールの送信先アドレス: root メールの件名 (Subject) 行: *** SECURITY information for %h *** パスワードを間違った時のメッセージ: 残念、また試してください。 受講状況ディレクトリのパス: /var/db/sudo/lectured 認証タイムスタンプディレクトリのパス: /run/sudo/ts パスワード入力要求時に表示される文字列: [sudo] %p のパスワード: コマンドを実行するデフォルトの変更先ユーザー: root ユーザーの $PATH を上書きする時の値: /sbin:/bin:/usr/sbin:/usr/bin visudo で使用されるエディターのパス: /bin/vi 'list' 疑似コマンド使用するためにパスワードを要求される時: any 'verify' 疑似コマンドを使用するためにパスワードを要求される時: all 3 以上の値をもつファイル記述子をコマンド実行前に閉じます 環境変数の集合をデフォルトに設定します 正当性の確認を行う環境変数: TZ TERM LINGUAS LC_* LANGUAGE LANG COLORTERM 削除する環境変数: *=()* RUBYOPT RUBYLIB PYTHONUSERBASE PYTHONINSPECT PYTHONPATH PYTHONHOME TMPPREFIX ZDOTDIR READNULLCMD NULLCMD FPATH PERL5DB PERL5OPT PERL5LIB PERLLIB PERLIO_DEBUG JAVA_TOOL_OPTIONS SHELLOPTS BASHOPTS GLOBIGNORE PS4 BASH_ENV ENV TERMCAP TERMPATH TERMINFO_DIRS TERMINFO _RLD* LD_* PATH_LOCALE NLSPATH HOSTALIASES RES_OPTIONS LOCALDOMAIN CDPATH IFS 保護する環境変数: XAUTHORITY _XKB_CHARSET LINGUAS LANGUAGE LC_ALL LC_TIME LC_TELEPHONE LC_PAPER LC_NUMERIC LC_NAME LC_MONETARY LC_MESSAGES LC_MEASUREMENT LC_IDENTIFICATION LC_COLLATE LC_CTYPE LC_ADDRESS LANG USERNAME QTDIR PS2 PS1 MAIL LS_COLORS KDEDIR HISTSIZE HOSTNAME DISPLAY COLORS sudoers を構文解析する時に使用するロケール: C I/O ログを zlib を使用して圧縮します 入出力 (I/O) ログを保存するディレクトリです:/var/log/sudo-io 入出力 (I/O) ログを保存するファイルです:%{seq} pty を割り当てた時に utmp/utmpx ファイルに記録を加えます 利用する PAM サービス名: sudo ログインシェルで利用する PAM サービス名: sudo-i ターゲットユーザーの PAM 資格情報による認証を試みる 実行するコマンドのために新しい PAM セッションを生成する PAM アカウント検証管理を実行しています I/O ログシーケンス番号の最大値: 0 sudoers のネットグループサポートを有効にする ファイルを sudoedit で編集するときに親ディレクトリが書き込み可能か確かめる 不明なシステムグループについて、グループプラグインに問い合わせる 監査ログファイルへの書き込みができなくても、コマンドの実行を許可する ログファイルへの書き込みができなくても、コマンドの実行を許可する グループの照合を sudoers の中で行い、グループ名でなくグループIDを用いる ログエントリーがこの値より長くなると、複数の syslog メッセージに分割されます: 960 I/O ログのファイルモード: 0600 コマンドの実行時にパスでなくファイル記述子を使う: digest_only 認証タイムスタンプのタイプ: tty ユーザー名の検索で大文字小文字を同一視する グループ名の検索で大文字小文字を同一視する コマンドが sudoers で許可された場合にログに記録します コマンドが sudoers で拒否された場合にログに記録します Don't pre-resolve all group names ローカル IP アドレスとネットマスクの組: 10.249.229.223/255.255.255.0 Sudoers I/O plugin version 1.8.29 Discovery was successful! Do you want to configure chrony with NTP server or pool address? [no]: yes Enter a NTP source pool address, or press Enter to skip: ntp.kuins.net Client hostname: h223.229.249.10.1016485.vlan.kuins.net Realm: 229.249.10.1016485.VLAN.KUINS.NET DNS Domain: 229.249.10.1016485.vlan.kuins.net IPA Server: h225.229.249.10.1016485.vlan.kuins.net BaseDN: dc=229,dc=249,dc=10,dc=1016485,dc=vlan,dc=kuins,dc=net NTP pool: ntp.kuins.net Continue to configure the system with these values? [no]: yes Synchronizing time No SRV records of NTP servers found and no NTP server or pool address was provided. Using default chrony configuration. Attempting to sync time with chronyc. Time synchronization was successful. User authorized to enroll computers: admin Password for admin@229.249.10.1016485.VLAN.KUINS.NET: いつもの Successfully retrieved CA cert Subject: CN=Certificate Authority,O=229.249.10.1016485.VLAN.KUINS.NET Issuer: CN=Certificate Authority,O=229.249.10.1016485.VLAN.KUINS.NET Valid From: 2019-12-04 02:14:30 Valid Until: 2039-12-04 02:14:30 Enrolled in IPA realm 229.249.10.1016485.VLAN.KUINS.NET Created /etc/ipa/default.conf Configured sudoers in /etc/authselect/user-nsswitch.conf Configured /etc/sssd/sssd.conf Configured /etc/krb5.conf for IPA realm 229.249.10.1016485.VLAN.KUINS.NET Systemwide CA database updated. Adding SSH public key from /etc/ssh/ssh_host_ed25519_key.pub Adding SSH public key from /etc/ssh/ssh_host_ecdsa_key.pub Adding SSH public key from /etc/ssh/ssh_host_rsa_key.pub SSSD enabled Configured /etc/openldap/ldap.conf Configured /etc/ssh/ssh_config Configured /etc/ssh/sshd_config Configuring 229.249.10.1016485.vlan.kuins.net as NIS domain. Client configuration complete. The ipa-client-install command was successful
おう, できた.
IPAファイル共有設定
次は
# ipa-client-automount Searching for IPA server... IPA server: DNS discovery Location: default Continue to configure the system with these values? [no]: yes Configured /etc/idmapd.conf Restarting sssd, waiting for it to become available. 15分待つ Started autofs
よっしゃできた.
IPAレプリカインストール
ではレプリカにする.その前に, /etc/hosts, /etc/resolv.conf に生きているIPAサーバーを記入しておく:
/etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.249.229.225 h225.229.249.10.1016485.vlan.kuins.net ib2007-3.229.249.10.1016485.vlan.kuins.net 10.249.229.111 h111.229.249.10.1016485.vlan.kuins.net sun1.229.249.10.1016485.vlan.kuins.net 10.249.229.223 h223.229.249.10.1016485.vlan.kuins.net ib2007-1.229.249.10.1016485.vlan.kuins.net /etc/resolv.conf search 229.249.10.1016485.vlan.kuins.net nameserver 10.249.229.111 nameserver 10.249.229.225
緑は自分自身,青は生きているサーバーである.ではreplicaをインストールする. --setup-ca オプションをつけると動かないので,後でやる.
# kinit admin Password for admin@229.249.10.1016485.VLAN.KUINS.NET:いつものいつもの ←場合によっては必要 # ipa-replica-install --setup-dns --forwarder 10.224.253.1 --forwarder 10.224.254.1 Lookup failed: Preferred host h223.229.249.10.1016485.vlan.kuins.net does not provide DNS. ↑↓どうやらこれらはバグで出ているだけみたいだ Could not resolve hostname h225.229.249.10.1016485.vlan.kuins.net using DNS. Clients may not function properly. Please
check your DNS setup. (Note that this check queries IPA DNS directly and ignores /etc/hosts.) Continue? [no]: yes Checking DNS forwarders, please wait ... Run connection check to master Connection check OK Disabled p11-kit-proxy Configuring directory server (dirsrv). Estimated time: 30 seconds [1/38]: creating directory server instance [2/38]: tune ldbm plugin [3/38]: adding default schema [4/38]: enabling memberof plugin [5/38]: enabling winsync plugin [6/38]: configure password logging [7/38]: configuring replication version plugin [8/38]: enabling IPA enrollment plugin [9/38]: configuring uniqueness plugin [10/38]: configuring uuid plugin [11/38]: configuring modrdn plugin [12/38]: configuring DNS plugin [13/38]: enabling entryUSN plugin [14/38]: configuring lockout plugin [15/38]: configuring topology plugin [16/38]: creating indices [17/38]: enabling referential integrity plugin [18/38]: configuring certmap.conf [19/38]: configure new location for managed entries [20/38]: configure dirsrv ccache and keytab [21/38]: enabling SASL mapping fallback [22/38]: restarting directory server [23/38]: creating DS keytab [24/38]: ignore time skew for initial replication [25/38]: setting up initial replication Starting replication, please wait until this has completed. Update in progress, 6 seconds elapsed Update succeeded [26/38]: prevent time skew after initial replication [27/38]: adding sasl mappings to the directory [28/38]: updating schema [29/38]: setting Auto Member configuration [30/38]: enabling S4U2Proxy delegation [31/38]: initializing group membership [32/38]: adding master entry [33/38]: initializing domain level [34/38]: configuring Posix uid/gid generation [35/38]: adding replication acis [36/38]: activating sidgen plugin [37/38]: activating extdom plugin [38/38]: configuring directory to start on boot Done configuring directory server (dirsrv). Replica DNS records could not be added on master: Insufficient access: Insufficient 'add' privilege to add the entry 'idnsname=h223
,idnsname=229.249.10.1016485.vlan.kuins.net.,cn=dns,dc=229,dc=249,dc=10,dc=1016485,dc=vlan,dc=kuins,dc=net'. Configuring Kerberos KDC (krb5kdc) [1/5]: configuring KDC [2/5]: adding the password extension to the directory [3/5]: creating anonymous principal [4/5]: starting the KDC [5/5]: configuring KDC to start on boot Done configuring Kerberos KDC (krb5kdc). Configuring kadmin [1/2]: starting kadmin [2/2]: configuring kadmin to start on boot Done configuring kadmin. Configuring directory server (dirsrv) [1/3]: configuring TLS for DS instance [2/3]: importing CA certificates from LDAP [3/3]: restarting directory server Done configuring directory server (dirsrv). Configuring the web interface (httpd) [1/21]: stopping httpd [2/21]: backing up ssl.conf [3/21]: disabling nss.conf [4/21]: configuring mod_ssl certificate paths [5/21]: setting mod_ssl protocol list [6/21]: configuring mod_ssl log directory [7/21]: disabling mod_ssl OCSP [8/21]: adding URL rewriting rules [9/21]: configuring httpd Nothing to do for configure_httpd_wsgi_conf [10/21]: setting up httpd keytab [11/21]: configuring Gssproxy [12/21]: setting up ssl [13/21]: configure certmonger for renewals [14/21]: publish CA cert [15/21]: clean up any existing httpd ccaches [16/21]: configuring SELinux for httpd [17/21]: create KDC proxy config [18/21]: enable KDC proxy [19/21]: starting httpd [20/21]: configuring httpd to start on boot [21/21]: enabling oddjobd Done configuring the web interface (httpd). Configuring ipa-otpd [1/2]: starting ipa-otpd [2/2]: configuring ipa-otpd to start on boot Done configuring ipa-otpd. Custodia uses 'h225.229.249.10.1016485.vlan.kuins.net' as master peer. Configuring ipa-custodia [1/4]: Generating ipa-custodia config file [2/4]: Generating ipa-custodia keys [3/4]: starting ipa-custodia [4/4]: configuring ipa-custodia to start on boot Done configuring ipa-custodia. Configuring certificate server (pki-tomcatd) [1/2]: configure certmonger for renewals [2/2]: Importing RA key Done configuring certificate server (pki-tomcatd). Configuring Kerberos KDC (krb5kdc) [1/1]: installing X509 Certificate for PKINIT Done configuring Kerberos KDC (krb5kdc). Applying LDAP updates Upgrading IPA:. Estimated time: 1 minute 30 seconds [1/10]: stopping directory server [2/10]: saving configuration [3/10]: disabling listeners [4/10]: enabling DS global lock [5/10]: disabling Schema Compat [6/10]: starting directory server [7/10]: upgrading server [8/10]: stopping directory server [9/10]: restoring configuration [10/10]: starting directory server Done. Finalize replication settings Restarting the KDC dnssec-validation yes Configuring DNS (named) [1/8]: generating rndc key file [2/8]: setting up our own record [3/8]: adding NS record to the zones [4/8]: setting up kerberos principal [5/8]: setting up named.conf created new /etc/named.conf created named user config '/etc/named/ipa-ext.conf' created named user config '/etc/named/ipa-options-ext.conf' created named user config '/etc/named/ipa-logging-ext.conf' [6/8]: setting up server configuration [7/8]: configuring named to start on boot [8/8]: changing resolv.conf to point to ourselves Done configuring DNS (named). Restarting the web server to pick up resolv.conf changes Configuring DNS key synchronization service (ipa-dnskeysyncd) [1/7]: checking status [2/7]: setting up bind-dyndb-ldap working directory [3/7]: setting up kerberos principal [4/7]: setting up SoftHSM [5/7]: adding DNSSEC containers DNSSEC container exists (step skipped) [6/7]: creating replica keys [7/7]: configuring ipa-dnskeysyncd to start on boot Done configuring DNS key synchronization service (ipa-dnskeysyncd). Restarting ipa-dnskeysyncd Restarting named Updating DNS system records Global DNS configuration in LDAP server is empty You can use 'dnsconfig-mod' command to set global DNS options that would override settings in local named.conf files The ipa-replica-install command was successful # ipactl status Directory Service: RUNNING krb5kdc Service: RUNNING kadmin Service: RUNNING named Service: RUNNING httpd Service: RUNNING ipa-custodia Service: RUNNING ipa-otpd Service: RUNNING ipa-dnskeysyncd Service: RUNNING ipa: INFO: The ipactl command was successful
よっしゃ.ここまででどうなったかというと:
--setup-ca を省略したので, CAは繋がってない.
# ipa-ca-install Directory Manager (existing master) password: いつものとちょっと違う方 Run connection check to master Connection check OK Configuring certificate server (pki-tomcatd). Estimated time: 3 minutes [1/27]: creating certificate server db [2/27]: setting up initial replication Starting replication, please wait until this has completed. Update in progress, 8 seconds elapsed Update succeeded [3/27]: creating ACIs for admin [4/27]: creating installation admin user [5/27]: configuring certificate server instance ipaserver.install.dogtaginstance: CRITICAL Failed to configure CA instance ipaserver.install.dogtaginstance: CRITICAL See the installation logs and the following files/directories for more information: ipaserver.install.dogtaginstance: CRITICAL /var/log/pki/pki-tomcat [error] RuntimeError: CA configuration failed. Your system may be partly configured. Run /usr/sbin/ipa-server-install --uninstall to clean up. CA configuration failed.
こうして一度失敗すると,なぜか二度と ipa-ca-install ができない.なぜだ?
IPAバージョンを一致させる
IPAクライアントの場合,IPAサーバーとバージョンが一致していなくても動作する.が,IPAサーバー同士では,バージョンが一致していなければならない.
ib2007-1 # ipa --version VERSION: 4.9.2, API_VERSION: 2.240 ib2007-1 # pki --version PKI Command-Line Interface 10.12.0-2.module_el8.6.0+1089+63e53b72 ib2007-3 # ipa --version VERSION: 4.9.6, API_VERSION: 2.242 ib2007-3 # pki --version PKI Command-Line Interface 10.11.2-2.module_el8.5.0+945+a81e57da ib2007-3 # rpm -qa |grep ipa-server ipa-server-4.9.6-6.module_el8.5.0+948+b8187ba6.x86_64
これぢゃダメ!で,どうやって直すのかな.要するにmoduleとかいうので ipa V4.9.6 および pki V10.11.2 をib2007-1にインストールしたいのだが.これは,
ib2007-1 # dnf module list
を行って,それっぽいのを探すしかないのね.
ib2007-1 # dnf module install idm:DL1/dns 問題 1: パッケージ ipa-server-4.9.8-7.module_el8.6.0+1103+a004f6a8.x86_64 には 389-ds-base >= 1.4.3.16-12 が必要ですが、どのプロバイダーからもインストールできません ib2007-1 # dnf install ipa-server-4.9.6 問題: パッケージ ipa-server-4.9.6-6.module_el8.5.0+948+b8187ba6.x86_64 には 389-ds-base >= 1.4.3.16-12 が必要ですが、どのプロバイダーからもインストールできませ
おいおい,どうしたらいいんだ. 稼働中のものには 389-ds-base は何が入っているのか?
ib2007-3 # rpm -qa |grep 389-ds-base 389-ds-base-1.4.3.23-10.module_el8.5.0+946+51aba098.x86_64 389-ds-base-libs-1.4.3.23-10.module_el8.5.0+946+51aba098.x86_64 389-ds-base-legacy-tools-1.4.3.23-10.module_el8.5.0+946+51aba098.x86_64
これインストールしとけば良いのではないか.https://centos.pkgs.org から個別にインストールしてやろう.ここでみつけた.これはCentOS8Streamのスナップショットを保存しておいてくれるらしい.ありがたい話だ.結局
389-ds-base-1.4.3.23-10.module_el8.5.0+946+51aba098.x86_64.rpm 389-ds-base-legacy-tools-1.4.3.23-10.module_el8.5.0+946+51aba098.x86_64.rpm 389-ds-base-libs-1.4.3.23-10.module_el8.5.0+946+51aba098.x86_64.rpm perl-Mozilla-LDAP-1.5.3-25.el8.x86_64.rpm perl-NetAddr-IP-4.079-7.el8.x86_64.rpm perl-Socket6-0.28-6.el8.x86_64.rpm python3-lib389-1.4.3.23-10.module_el8.5.0+946+51aba098.noarch.rpm
これだけをサイトからダウンロードし,
ib2007-1 # rpm -Uvh *
で,なんとかなったっぽいな.で
ib2007-1 # dnf install ipa-server-4.9.6 アップグレード: ipa-client x86_64 4.9.6-6.module_el8.5.0+948+b8187ba6 appstream 281 k ipa-client-common noarch 4.9.6-6.module_el8.5.0+948+b8187ba6 appstream 184 k ipa-common noarch 4.9.6-6.module_el8.5.0+948+b8187ba6 appstream 796 k ipa-server x86_64 4.9.6-6.module_el8.5.0+948+b8187ba6 appstream 526 k ipa-server-common noarch 4.9.6-6.module_el8.5.0+948+b8187ba6 appstream 612 k ipa-server-dns noarch 4.9.6-6.module_el8.5.0+948+b8187ba6 appstream 191 k python3-ipaclient noarch 4.9.6-6.module_el8.5.0+948+b8187ba6 appstream 688 k python3-ipalib noarch 4.9.6-6.module_el8.5.0+948+b8187ba6 appstream 755 k python3-ipaserver noarch 4.9.6-6.module_el8.5.0+948+b8187ba6 appstream 1.6 M ib2007-1 # dnf install pki-server-10.11.2 ダウングレード: pki-acme noarch 10.11.2-2.module_el8.5.0+945+a81e57da appstream 1.0 M pki-base noarch 10.11.2-2.module_el8.5.0+945+a81e57da appstream 295 k pki-base-java noarch 10.11.2-2.module_el8.5.0+945+a81e57da appstream 667 k pki-ca noarch 10.11.2-2.module_el8.5.0+945+a81e57da appstream 1.3 M pki-kra noarch 10.11.2-2.module_el8.5.0+945+a81e57da appstream 289 k pki-server noarch 10.11.2-2.module_el8.5.0+945+a81e57da appstream 2.6 M pki-symkey x86_64 10.11.2-2.module_el8.5.0+945+a81e57da appstream 57 k pki-tools x86_64 10.11.2-2.module_el8.5.0+945+a81e57da appstream 795 k python3-pki noarch 10.11.2-2.module_el8.5.0+945+a81e57da appstream 165 k
こんな感じになった.