Efter att programvaran för SEAM installerats måste du konfigurera KDC-servrarna. Genom att konfigurera en huvud-KDC och minst en slav-KDC erhålls tjänsten som utfärdar referenser. Dessa referenser utgör grunden för SEAM varför KDC-servrarna måste installeras innan andra uppgifter utförs.
Den mest relevanta skillnaden mellan en huvud-KDC och en slav-KDC är att endast huvudservern kan hantera databasadministration. Att byta lösenord eller lägga till en ny principal måste till exempel göras på huvud-KDC-servern. Dessa ändringar kan sedan överföras till slav-servrarna. Både slav- och huvud-KDC-servrarna genererar referenser, vilket ger redundans i de fall huvud-KDC-servern inte kan svara.
Ett fullständigt exempel får vi om vi antar att du inte kört förkonfigureringsproceduren. Om du använde förkonfigureringsproceduren när du installerade programvaran, behöver många av filerna i den här proceduren inte redigeras. Du bör dock kontrollera filernas innehåll.
I den här proceduren används följande konfigureringsparametrar:
användarkategori = ACME.COM
DNS-domän = acme.com
huvud-KDC = kdc1.acme.com
slav-KDC = kdc2.acme.com
principal för admin = kws/admin
webbadress för onlinehjälp = http://denver:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956
Ändra webbadressen så att den pekar på avsnittet "Administrationsverktyget för SEAM" som det beskrivs i Installations- och tilläggsinformation för SEAM.
Förutsättningar för konfigurering av en huvud-KDC.
Den här proceduren förutsätter att programvaran för huvud-KDC:n är installerad. Dessutom måste DNS-tjänsten köra. Se även namngivningsinstruktionerna i "Växla huvud- och slav-KDC:er" om huvudservern ska vara växlingsbar.
Bli superanvändare på huvud-KDC:n.
Redigera konfigurationsfilen för Kerberos(krb5.conf).
Du måste byta namn på användarkategorierna och servrarna. En fullständig beskrivning av denna fil finns i direkthjälpsavsnittet krb5.conf(4). Om du installerade programvaran för SEAM med hjälp av konfigurationsfilerna verifierar du innehållet i filen istället för att redigera den.
kdc1 # cat /etc/krb5/krb5.conf [libdefaults] default_realm = ACME.COM [realms] ACME.COM = { kdc = kdc1.acme.com kdc = kdc2.acme.com admin_server = kdc1.acme.com } [domain_realm] .acme.com = ACME.COM # # om domänen och användarkategorin har samma namn, # behövs inte den här posten # [logging] default = FILE:/var/krb5/kdc.log kdc = FILE:/var/krb5/kdc.log [appdefaults] gkadmin = { help_url = http://denver:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956 } |
I det här exemplet ändrades raderna för posternadefault_realm, kdc, admin_server, och alla domain_realm. Raden för default_realm har inkluderats för att göra exemplet fullständigt, men denna post skapas inte under installationen om namnen för användarkategori och domän är samma. Dessutom har raden med definitionen av help_url redigerats.
Redigera KDC-konfigurationsfilen (kdc.conf).
Du måste byta namn på användarkategorin. En fullständig beskrivning av denna fil finns i direkthjälpsavsnittet kdc.conf(4). Om du installerade programvaran för SEAM med hjälp av konfigurationsfilerna verifierar du innehållet i filen istället för att redigera den.
kdc1 # cat /etc/krb5/kdc.conf [kdcdefaults] kdc_ports = 88,750 [realms] ACME.COM = { profile = /etc/krb5/krb5.conf database_name = /var/krb5/principal admin_keytab = /var/krb5/kadm5.keytab acl_file = /var/krb5/kadm5.acl kadmind_port = 749 max_life = 8h 0m 0s max_renewable_life = 7d 0h 0m 0s } |
I det här exemplet ändrades definitionen av användarkategorinamnet i avsnittet realms.
Skapa KDC-databasen med kdb5_util.
Kommandot kdb5_util skapar KDC-databasen och, tillsammans med alternativet -s, även en lagringsfil som används för att verifiera KDC:n till sig själv innan bakgrundsprogrammen kadmind och krb5kdc startas.
kdc1 # /usr/krb5/sbin/kdb5_util create -r ACME.COM -s Initierar databasen "/var/krb5/principal" för användarkategorin "ACME.COM" med huvudnyckeln "K/M@ACME.COM". Du kommer att uppmanas att ange huvudlösenordet för databasen. Det är viktigt att du INTE GLÖMMER detta lösenord. Ange huvudnyckeln för KDC-databasen: <skriv nyckeln> Ange huvudnyckeln för KDC-databasen en gång till för verifiering: <skriv det igen> |
Alternativet -r följt av användarkategorinamnet behövs inte om namnet på användarkategorin är samma som domännamnet för serverns namnutrymme.
Redigera filen med behörighetslistan för Kerberos (kadm5.acl).
När den är fylld innehåller /etc/krb5/kadm5.acl namnen på alla principaler som tillåts administrera KDC:n. Den först tillagda posten kan se ut så här:
kws/admin@ACME.COM * |
Den här posten ger principalen kws/admin i användarkategorin ACME.COM möjlighet att ändra principaler eller policies i KDC-databasen. Vid standardinstallationen läggs en "*" till för att matcha alla admin -principaler. Detta kan innebära en säkerhetsrisk och det är säkrare att istället lägga till en lista med alla admin-principaler.
Starta kadmin.local.
Följande steg skapar de principaler som används av SEAM.
kdc1 # /usr/krb5/sbin/kadmin.local kadmin.local: |
Lägg till administrationsprincipaler till databasen med kadmin.local.
Du kan lägga till så många admin-principaler som du behöver. Du måste lägga till åtminstone en admin-principal för att slutföra KDC-konfigureringen. I det här exemplet läggs en kws/admin-principal till. Du kan använda valfritt principalnamn istället för "kws".
kadmin.local: addprinc kws/admin Ange lösenord för principalen kws/admin@ACME.COM: <skriv lösenordet> Ange lösenord för principalen kws/admin@ACME.COM en gång till: <skriv det igen> Principalen "kws/admin@ACME.COM" har skapats. kadmin.local: |
Skapa en keytab-fil för kadmin genom att använda kadmin.local.
Den här kommandosekvensen skapar en särskild keytab-fil med principalposter för kadmin och changepw. Dessa principaler behövs för tjänsten kadmind.
kadmin.local: ktadd -k /etc/krb5/kadm5.keytab kadmin/kdc1.acme.com En post för principalen kadmin/kdc1.acme.com med kvno 3, krypteringstyp DES-CBC-CRC har lagts till i keytab-filen WRFILE:/etc/krb5/kadm5.keytab. kadmin.local: ktadd -k /etc/krb5/kadm5.keytab changepw/kdc1.acme.com En post för principalen changepw/kdc1.acme.com med kvno 3, krypteringstyp DES-CBC-CRC har lagts till i keytab-filen WRFILE:/etc/krb5/kadm5.keytab. kadmin.local: |
Avsluta kadmin.local
Du har lagt till de principaler som behövs för nästa steg.
kadmin.local: avsluta |
Starta bakgrundsprogrammen för Kerberos.
kdc1 # /etc/init.d/kdc start kdc1 # /etc/init.d/kdc.master start |
Starta kadmin.
Nu kan du lägga till principaler med Administrationsverktyget för SEAM. Kommandoradsexemplet visas för enkelhets skull. Du måste logga in med ett av de principalnamn för admin som du skapade tidigare i denna procedur.
kdc1 # /usr/krb5/sbin/kadmin -p kws/admin Ange lösenord: <Skriv lösenord för kws/admin> kadmin: |
Skapa värdprincipalen för huvud-KDC:n med kadmin.
Värdprincipalen används av Kerberos-anpassade program (som till exempel klist och kprop) och Kerberos-anpassade tjänster (som till exempel ftp och telnet).
kadmin: addprinc -randkey host/kdc1.acme.com Principalen "host/kdc1.acme.com@ACME.COM" har skapats. kadmin: |
Valfritt: Skapa principalen för root på huvud-KDC:n med kadmin.
Den här principalen används för verifierad NFS-montering och behövs eventuellt inte på en huvud-KDC.
kadmin: addprinc root/kdc1.acme.com Ange lösenord för principalen root/kdc1.acme.com@ACME.COM: <skriv lösenordet> Ange lösenord för principalen root/kdc1.acme.com@ACME.COM på nytt: <skriv det igen> Principalen "root/kdc1.acme.com@ACME.COM" har skapats. kadmin: |
Lägg till huvud-KDC:ns värdprincipal till keytab-filen för huvud-KDC:n.
Genom att lägga till värdprincipalen i keytab-filen kan den sedan användas automatiskt.
kadmin: ktadd host/kdc1.acme.com kadmin: En post för principalen host/kdc1.acme.com med kvno 3, krypteringstyp DES-CBC-CRC har lagts till i keytab-filen WRFILE:/etc/krb5/krb5.keytab kadmin: avsluta |
Avsluta kadmin
kadmin: avsluta |
Lägg till en post för varje KDC i överföringskonfigureringsfilen (kpropd.acl).
En fullständig beskrivning av denna fil finns i direkthjälpsavsnittet kprop(1M). Om du installerade programvaran för SEAM med hjälp av konfigurationsfilerna verifierar du innehållet i filen istället för att redigera den.
kdc1 # cat /etc/krb5/kpropd.acl host/kdc1.acme.com@ACME.COM host/kdc2.acme.com@ACME.COM |
Valfritt: Synkronisera huvud-KDC:ns klocka med hjälp av NTP eller annan klocksynkroniseringsmekanism.
Det är inte nödvändigt att installera och använda NTP, men tiden hos varje klocka måste ligga inom den standardtid som definierats i avsnittet libdefaults i filen krb5.conf för att verifieringen ska lyckas. Mer information om NTP finns i "Synkronisera klockor mellan KDC:er och SEAM-klienter"
I den här proceduren konfigureras en ny slav-KDC med namnet kdc3. För att göra exemplet fullständigt antar vi att du inte använde förkonfigureringsproceduren när du installerade programvaran eller att du inte definierade kdc3 som en slav när du körde förkonfigureringsproceduren. Om du använde förkonfigureringsproceduren och identifierade kdc3 som en slav, behöver många av filerna i den här proceduren inte redigeras. Du bör dock kontrollera filernas innehåll.
I den här proceduren används följande konfigureringsparametrar:
användarkategori = ACME.COM
DNS-domän = acme.com
huvud-kdc = kdc1.acme.com
slav-kdc = kdc2.acme.com och kdc3.acme.com
principal för admin = kws/admin
webbadress för onlinehjälp = http://denver:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956
Ändra webbadressen så att den pekar på avsnittet "Administrationsverktyget för SEAM" som det beskrivs i Installations- och tilläggsinformation för SEAM.
Förutsättningar för konfigurering av en slav-KDC.
Den här proceduren förutsätter att huvud-KDC:n har konfigurerats och att slav-KDC-programvaran för SEAM har installerats på kdc3. Se även instruktionerna i "Växla huvud- och slav-KDC:er" om den här slaven ska vara växlingsbar.
På huvud-KDC:n: Bli superanvändare.
På huvud-KDC:n: Starta kadmin.
Du måste logga in med ett av de principalnamn för admin som du skapade när du konfigurerade huvud-KDC:n.
kdc1 # /usr/krb5/sbin/kadmin -p kws/admin Ange lösenord: <Skriv lösenord för kws/admin> kadmin: |
På huvud-KDC:n: Lägg till värdprincipaler för slavar till databasen med kadmin.local om det inte gjorts tidigare.
För att slaven ska fungera måste den ha en värdprincipal.
kadmin: addprinc -randkey host/kdc3.acme.com Principalen "host/kdc3@ACME.COM" har skapats. kadmin: |
Valfritt: Skapa slav-KDC:ns principal för root på huvud-KDC:n med kadmin.
Den här principalen behövs endast om slaven kommer att NFS-montera ett verifierat filsystem.
kadmin: addprinc root/kdc3.acme.com Ange lösenord för principalen root/kdc3.acme.com@ACME.COM: <skriv lösenordet> Ange lösenord för principalen root/kdc3.acme.com@ACME.COM på nytt: <skriv det igen> Principalen "root/kdc3.acme.com@ACME.COM" har skapats. kadmin: |
Avsluta kadmin
kadmin: avsluta |
På huvud-KDC:n: Redigera konfigurationsfilen för Kerberos (krb5.conf).
Du måste lägga till en post för varje slav. En fullständig beskrivning av denna fil finns i direkthjälpsavsnittet krb5.conf(4) . Om du definierade kdc3 som en slavserver vid förkonfigureringen verifierar du innehållet i filen istället för att redigera den.
kdc1 # cat /etc/krb5/krb5.conf [libdefaults] default_realm = ACME.COM [realms] ACME.COM = { kdc = kdc1.acme.com kdc = kdc2.acme.com kdc = kdc3.acme.com admin_server = kdc1.acme.com } [domain_realm] .acme.com = ACME.COM # # om domänen och användarkategorin har samma namn, # behövs inte den här posten # [logging] default = FILE:/var/krb5/kdc.log kdc = FILE:/var/krb5/kdc.log [appdefaults] gkadmin = { help_url = http://denver:8888/ab2/coll.384.1/SEAM/@AB2PageView/6956 |
På huvud-KDC:n: Lägg till en post för varje slav-KDC i konfigureringsfilen för databasöverföringen (kpropd.acl).
En fullständig beskrivning av denna fil finns i direkthjälpsavsnittet kprop(1M). Om du definierade kdc3 som en slavserver vid förkonfigureringen verifierar du innehållet i filen istället för att redigera den.
kdc1 # cat /etc/krb5/kpropd.acl host/kdc1.acme.com@ACME.COM host/kdc2.acme.com@ACME.COM host/kdc3.acme.com@ACME.COM |
På alla slavservrar: Kopiera administrationsfilerna för KDC från huvud-KDC-servern.
Det här steget måste genomföras på samtliga slav-KDC:er eftersom huvud-KDC-servern har uppdaterad information som behövs på varje KDC-server. Om du definierade kdc3 som en slavserver vid förkonfigureringen verifierar du innehållet i filerna istället för att redigera dem. Du kan använda ftp eller liknande överföringsmekanism för att hämta kopior av följande filer från huvudservern:
/etc/krb5/krb5.conf
/etc/krb5/kdc.conf
/etc/krb5/kpropd.acl
På den nya slavservern: Lägg till slavens värdprincipal till dess keytab-fil med kadmin.
Du måste logga in med ett av de principalnamn för admin som du skapade när du konfigurerade huvud-KDC:n. Den här sekvensen behövs för att kprop och andra Kerberos-anpassade program ska fungera.
kdc3 # /usr/krb5/sbin/kadmin -p kws/admin Ange lösenord: <Skriv lösenord för kws/admin> kadmin: ktadd host/kdc3.acme.com kadmin: En post för principalen host/kdc3.acme.com med kvno 3, krypteringstyp DES-CBC-CRC har lagts till i keytab-filen WRFILE:/etc/krb5/krb5.keytab kadmin: avsluta |
På huvud-KDC:n: Lägg till slav-KDC-namn till det cron-jobb som automatiskt utför säkerhetskopiering, genom att köra crontab -e.
Lägg till namnet på varje slav-KDC-server i slutet på kprop_script-raden. Om du definierade kdc3 som en slavserver vid förkonfigureringen verifierar du innehållet i filen istället för att redigera den.
10 3 * * * /usr/krb5/lib/kprop_script kdc2.acme.com kdc3.acme.com |
Det kan också tänkas att du vill ändra tiden för säkerhetskopieringen. Med den här konfigurationen startar säkerhetskopieringen varje dag kl 03:10.
På huvud-KDC:n: Säkerhetskopiera och överför databasen med kprop_script.
Om det redan finns en säkerhetskopia av databasen är det inte nödvändigt att genomföra ytterligare en säkerhetskopiering. Mer information finns i "Så här överför du Kerberos-databasen till slav-KDC:erna manuellt".
kdc1 # /usr/krb5/lib/kprop_script kdc3.acme.com Databasöverföring till kdc3.acme.com: LYCKADES |
På den nya slavservern: Skapa en lagringsfil med kdb5_util.
kdc3 # /usr/krb5/sbin/kdb5_util stash kdb5_util: Det går inte att hitta/läsa den lagrade huvudnyckeln vid läsning av huvudnyckeln kdb5_util: Varning! Fortsätter utan huvudnyckeln Ange huvudnyckeln för KDC-databasen: <skriv nyckeln> |
På den nya slavservern: Starta bakgrundsprogrammet för KDC (krb5kdc).
kdc3 # /etc/init.d/kdc start |
Valfritt: Synkronisera huvud-KDC:ns klocka från den nya slavservern med hjälp av NTP eller annan klocksynkroniseringsmekanism.
Det är inte nödvändigt att installera och använda NTP, men tiden hos varje klocka måste ligga inom den standardtid som definierats i avsnittet libdefaults i filen krb5.conf för att verifieringen ska lyckas. Mer information om NTP finns i "Synkronisera klockor mellan KDC:er och SEAM-klienter"