Kerberos används för att autentisera användare över ett osäkert nätverk . För att göra detta , måste servern och klienten har en gemensam nyckel används för att kryptera och dekryptera lösenord . Nyckeln distributionen utförs av en Master Key Distribution Center ( KDC ) . Redundans är inbyggt i systemet genom att inrätta en eller flera slav- KDC: er . Konfigurera Master
Innan du börjar konfigurera Kerberos på ditt system , bör du känna till namnet på din Kerberos , värdnamnet för master och slave Key Distribution Center ( KDC ) och hur du ska kartlägga dina värdnamn i Kerberos-område . Du kommer att behöva bestämma vilka portar som de KDC: er och databasåtkomst ( kadmin ) tjänster kommer att använda . Du kommer också att veta hur ofta master och slav KDC: er kommer att fylla databasen .
Du kommer att använda ovanstående information för att konfigurera huvud-KDC . Huvud-KDC konfigurationsfiler kommer att hittas på " /etc/krb5.conf " och " /usr/local/var/krb5kdc/kdc.conf " och kan redigeras i valfri textredigerare . Den " krb5.conf " filen innehåller information om var du hittar de KDC: er och admin-servrarna , samt värdnamn kartinformation . Den " kdc.conf " filen innehåller standardinformation används vid utfärdande av Kerberos-biljetter . Öppna " /etc/krb5.conf " och redigera "Login , " " riken " och " domain_realm " värden så att de är korrekta för ditt system . Ändra " /usr/local/var/krb5kdc/kdc.conf " så att den visar rätt information för KDC -servern .
Nästa steg är att skapa databasen . Öppna en terminal och skriv kommandot " kdb5_util . " Du kommer bli ombedd att lämna en huvudnyckel . Detta bör vara en sträng av bokstäver, siffror och specialtecken som liknar ett lösenord . Denna knapp kommer att lagras i en stash fil på KDC hårddisk . Om du hellre vill bli tillfrågad om nyckeln när Kerberos startar , kan du välja att inte skapa stash filen .
Slutligen , kommer du att skapa åtkomstlistorna ( ACL ) och lägga till minst en administratör till den . ACL är ett användarskapat textfil som heter " /usr/local/var/krb5kdc/kadm5.acl . " Filen ska ha administratören anges i formuläret : Kerberos_principal behörigheter [ target_principal ] [ begränsningar ] När ACL listan skapas , utfärda kommandot " kadmin.local " och lägga till varje huvudman till databasen . Starta Kerberos demonerna med kommandot " /usr/local/sbin/krb5kdc ; . /Usr /local /sbin /kadmin " Addera Skapa nyckeltabellfilen
keytab filen används för att dekryptera Kerberos biljetter och avgöra om användaren ska ha tillgång till databasen . För att skapa denna fil , skriv kommandot " kadmin.local " igen . Detta kommer att ge dig en prompt där du skriver in kommandot : " ktadd - k /usr/local/var/krb5kdc/kadm5.keytab kadmin /admin kadmin /changepw " för att skapa nyckeltabellfilen . Ersätt avsnittet " /usr/local/var/krb5kdc/kadm5.keytab " med keytab plats som angavs i " /usr/local/var/krb5kdc/kdc.conf " filen . Typ " quit " för att avsluta " kadmin " utility .
Konfigurera Slave KDC: erna
att skapa slav KDC: er , kommer ni utfärda " kadmin . lokal " kommandot en tredje gång . Vid prompten , ange kommandot " addprinc - randkey host /example.com " för Master och varje slav . Använd värdnamnet på varje KDC i stället för " example.conf . " Detta kommer att skapa värdnycklar för varje KDC: erna . Därefter extrahera tangenterna på var och en av slav- KDC: er genom att starta " kadmin " verktyget på var och en av slavarna och ge kommandot " ktadd värd /MasterKDC.com . " Ersätt " MasterKDC.com " med värdnamnet på huvud-KDC .
För den databas som ska fortplantas från huvud-KDC till slav KDC: erna du måste skapa en fil som heter " /usr /local /var /krb5kdc/kpropd.acl . " Denna fil ska innehålla huvudmännen för varje KDC: er i form " host /example.com . " . Varje huvudman bör placeras på en egen rad
Nästa , redigera " /etc /inetd.conf " fil på varje KDC: er och lägg till följande rader : krb5_prop stream tcp nowait root /usr /local /sbin /kpropd kpropdeklogin stream tcp nowait root /usr /local /sbin /klogind klogind - k - c - e
Redigera " /etc /services " -fil på varje KDC: er och lägg till följande rader : kerberos 88/udp KDC # Kerberos -autentisering ( udp ) kerberos 88/tcp KDC # Kerberos -autentisering ( tcp ) krb5_prop 754/tcp # Kerberos slav propagationkerberos - adm 749/tcp # Kerberos 5 admin /changepw ( tcp ) kerberos - adm 749/udp # Kerberos 5 admin /changepw ( udp ) eklogin 2105/tcp # Kerberos krypterade rlogin
fortplanta Database
främjande av databasen sker från Master KDC . Utfärda kommandot " /usr/local/sbin/kdb5_util dump /usr/local/var/krb5kdc/slave_datatrans " för att skapa en dump av databasen . Nästa , ange kommandot " /usr /local /sbin /kprop - f /usr/local/var/krb5kdc/slave_datatrans Slav - 1.example.com " att manuellt propagera databasen på varje slavar .
Dessa steg kommer att behöva kompletteras på en regelbunden basis . Det enklaste sättet att göra detta är att skapa så manus och köra skriptet som ett cron-jobb . Manuset ska se ut : # /bin /sh
kdclist = " slav - 1.example.com slav - 2.example.com "
/usr/local/sbin/kdb5_util " dump = > /usr/local/var/krb5kdc/slave_datatrans "
för KDC i $ kdclistdo /usr /local /sbin /kprop - f /usr/local/var/krb5kdc/slave_datatrans $ kdcdone
Naturligtvis ändrar värdnamn för att återspegla de värden för ditt system .
Skapa Stash Filer på Slaves
det sista steget för att inrätta Kerberos är att skapa stash filer på slav KDC: erna . På varje slav KDC: er utfärda kommandot " kdb5_util stash " och förse befälhavaren nyckel när du ombeds . När det är klar , kan du starta " krb5kdc " demonen på varje slav med kommandot " /usr/local/sbin/krb5kdc /. " Addera