Det här kapitlet riktar sig till användare på ett system som redan har SEAM installerat. Här beskrivs hur man använder de "Kerberos"-kommandon som finns i SEAM: ftp, rcp, rlogin, rsh och telnet. Du bör känna till dessa kommandon (i sina icke Kerberos-anpassade versioner) innan du läser om dem här. Du kommer att märka att Kerberos-versionen av kommandona är i stort sett identisk med den vanliga versionen. I själva verket kan du oftast använda dessa kommandon utan att veta eller bry dig om att de är Kerberos-anpassade. Skillnaden ligger i de funktioner som utnyttjar Kerberos (till exempel att vidarebefordra en biljett när du använder rlogin).
Eftersom det här kapitlet riktar sig till den allmänne läsaren, innehåller den även information om biljetter: hur man hämtar, visar och förstör dem. Här finns också information om att välja eller byta lösenord för Kerberos.
En översikt över SEAM finns i Kapitel 1.
Här följer en lista med de avsnitt som ingår i kapitlet:
I det här avsnittet beskrivs hur man hämtar, visar och förstör biljetter. En introduktion till biljetter finns i "Så fungerar SEAM".
Med SEAM installerat finns Kerberos inbyggt i kommandot login vilket innebär att du får biljetter automatiskt när du loggar in. Kerberos-versionen av kommandona rsh, rcp, telnet och rlogin är normalt inställda till att vidarebefordra kopior av dina biljetter till övriga maskiner så att du inte behöver be om ytterligare biljetter för att få tillgång till dessa maskiner. (Det kan tänkas att automatisk vidarebefordran inte ingår i din SEAM-konfiguration, men det ingår i standardkonfigurationen.) Mer information om vidarebefordran av biljetter finns i "Översikt över Kerberos-anpassade kommandon".
De flesta Kerberos-anpassade kommandon förstör dina biljetter automatiskt när de avslutas. Du kan också, för säkerhets skull, förstöra dina Kerberos-biljetter explicit med kommandot kdestroy när du är färdig med dem. Mer information om kommandot kdestroy finns i "Så här förstör du biljetter".
Mer information om biljetters giltighetstid finns i "Giltighetstid för biljetter".
Normalt skapas en biljett automatiskt när du loggar in och du behöver inte göra något särskilt för att hämta den. Du kan däremot behöva skapa en biljett i följande fall:
Biljettens giltighetstid går ut.
Du måste använda en principal skild från standardprincipalen. (Om du till exempel loggar in på en maskin som någon annan med kommandot rlogin -l.)
Använd kommandot kinit för att skapa en biljett.
% /usr/krb5/bin/kinit |
Du kommer att uppmanas att ange ditt lösenord för att få använda kinit. En fullständig syntaxbeskrivning för kommandot kinit finns i direkthjälpsavsnittet kinit(1).
Här är ett exempel på hur användaren karin skapar en biljett på sitt eget system:
% kinit Lösenord för karin@ENG.ACME.COM: <ange lösenord> |
Här skapar användaren david en biljett som gäller i tre timmar genom att använda alternativet -l:
% kinit -l 3h david@ACME.ORG Lösenord för david@ACME.ORG: <ange lösenord> |
Här är ett exempel på hur david skapar en vidarebefordringsbar biljett (med -f) åt sig själv. Med denna vidarebefordringsbara biljett kan han till exempel logga in på ett andra system för att sedan utföra telnet till ett tredje system.
% kinit -l 3h david@ACME.ORG Lösenord för david@ACME.ORG: <ange lösenord> |
Mer information om vidarebefordran av biljetter finns i "Vidarebefordra biljetter med -f och -F" och i "Biljettyper".
Det finns flera olika sorters biljetter. En biljett kan till exempel vara vidarebefordringsbar , en annan efterdateradmedan en tredje kan vara både och. Du kan se vilka biljetter du har samt deras attribut genom att använda kommandot klist med alternativet -f:
% /usr/krb5/bin/klist -f |
Följande symboler anger de attribut som är associerade med varje biljett såsom de visas med kommandot klist:
F |
Vidarebefordringsbar |
f |
Vidarebefordrad |
P |
Proxybiljett |
p |
Proxy |
D |
Efterdateringsbar |
d |
Efterdaterad |
R |
Förnyelsebar |
I |
Ursprunglig |
i |
Ogiltigt |
"Biljettyper" beskriver vilka olika attribut en biljett kan ha.
I det här exemplet visas hur användaren karin har en ursprunglig biljett som är vidarebefordringsbar (F) och efterdaterad (d) men inte verifierad än (i):
% /usr/krb5/bin/klist -f Biljettcache: /tmp/krb5cc_74287 Standardprincipal: karinm@ENG.ACME.COM Giltig fr o m Upphör att gälla Tjänstprincipal 9 mar 99 15:09:51 9 mar 99 21:09:51 nfs/ACME.SUN.COM@ACME.SUN.COM förnyas senast 10 mar 99 15:12:51, Flaggor: Fdi |
I exemplet nedan visas hur användaren david har två biljetter som har vidarebefordrats (f) till den här värden från en annan värd. Biljetterna är alltså vidarebefordringsbara (F):
% klist -f Biljettcache: /tmp/krb5cc_74287 Standardprincipal: david@ACME.SUN.COM Giltig fr o m Upphör att gälla Tjänstprincipal 7 mar 99 06:09:51 9 mar 99 23:33:51 nfs/ACME.SUN.COM@ACME.SUN.COM förnyas senast 10 mar 99 17:09:51, Flaggor: fF Giltig fr o m Upphör att gälla Tjänstprincipal 8 mar 99 08:09:51 9 mar 99 12:54:51 nfs/ACME.COM@ACME.COM förnyas senast 10 mar 99 15:22:51, Flaggor: fF |
Biljetter förstörs i allmänhet automatiskt när de kommandon som skapat dem avslutas. Det kan dock tänkas att du vill förstöra dina Kerberos-biljetter explicit när du är klar med dem för att vara på den säkra sidan. Det går att stjäla biljetter och om det skulle inträffa kan den person som har dem använda dem tills de upphör att gälla (stulna biljetter måste dock avkrypteras).
Du kan förstöra dina biljetter med kommandot kinit.
% usr/krb5/bin/kdestroy |
kdestroy förstör alla dina biljetter. Du kan inte använda detta kommando för att endast förstöra en utvald biljett.
Om du kommer att lämna systemet utan tillsyn och vill undvika att någon annan utnyttjar din behörighet bör du använda antingen kdestroy eller en skärmsläckare som låser skärmen.
Ett sätt att vara säker på att biljetter alltid förstörs är att lägga till kommandot kdestroy i filen .logout i din hemkatalog.
Om PAM-modulen har konfigurerats (vilket är det normala fallet) förstörs biljetter automatiskt vid utloggning varför det inte är nödvändigt att lägga till något anrop till kdestroy i filen .login. Om däremot PAM-modulen inte har konfigurerats eller om du inte är säker på vilket, kan det vara bra att lägga till kdestroy i din .login-fil för att säkerställa att alla biljetter förstörs när du avslutar systemet.
Med SEAM installerat har du nu två lösenord: ditt normala Solaris-lösenord och ett Kerberos-lösenord. Du kan låta de båda lösenorden vara antingen samma eller olika.
Ej Kerberos-anpassade kommandon som till exempel login anges normalt via PAM så att de verifieras av både Kerberos och UNIX. Om lösenorden är olika måste du ange båda för att bli inloggad med rätt verifiering. Om däremot båda lösenorden är samma, kommer det första lösenordet som du anger för UNIX också att accepteras av Kerberos.
Tyvärr kan det innebära minskad säkerhet att använda samma lösenord i båda fallen. Om någon avslöjar ditt Kerberos-lösenord innebär det ju att även UNIX-lösenordet är avslöjat. Att använda samma lösenord för UNIX och Kerberos är ändå säkrare än att använda en anläggning utan Kerberos, eftersom lösenord aldrig skickas via nätverket i en Kerberos-miljö. Ofta finns det en policy på arbetsplatsen som hjälper dig att ta ställning till dessa frågor.
Ditt Kerberos-lösenord är det enda sättet för Kerberos att verifiera din identitet. Om någon avslöjar ditt Kerberos-lösenord, blir all Kerberos-säkerhet meningslös eftersom den personen fullt ut kan låtsas vara du - skicka e-post som kommer från "dig", läsa, redigera eller ta bort dina filer eller logga in som dig på andra värdar - och ingen kommer att kunna märka någon skillnad. Därför är det av största betydelse att du väljer ett bra lösenord och sedan håller det hemligt. Om du behöver ge någon annan åtkomst till ditt konto, kan du göra detta med Kerberos utan att avslöja ditt lösenord (Se "Bevilja åtkomst till ditt konto"). Du bör aldrig avslöja ditt lösenord till någon annan, inte ens till systemadministratören. Du bör dessutom ändra ditt lösenord med jämna mellanrum, särskilt om du skulle misstänka att någon kan ha kommit på det.
Lösenordet kan innehålla nästan vilka tecken som helst som går att skriva (med undantag av styrtangenter och Retur-tangenten). Ett bra lösenord är ett som du enkelt kan komma ihåg, men som ingen annan kan gissa sig till. Exempel på dåliga lösenord:
Ord som finns i en ordlista
Vanliga personnamn
Namnet på en berömd person eller rollfigur
Ditt eget namn eller användarnamn i någon form (till exempel baklänges, repeterat två gånger etc)
Namnet på din fru, ditt barn eller ett husdjur
Ditt eller någon närståendes födelsedatum
Personnummer, passnummer, kontonummer eller liknande identitetsnummer
Exempel på lösenord tagna ifrån den här eller övriga handböcker
Ett bra lösenord är minst åtta tecken långt. Dessutom bör ett lösenord innehålla en blandning av tecken, dvs stora och små bokstäver, siffror och skiljetecken. Exempel på lösenord som hade varit bra om de inte funnits med i den här handboken:
Akronymer som "I2LMHinSF" (koms ihåg som "I too left my heart in San Francisco")
Nonsensord som är lätta att uttala, till exempel "BlampiDuns" eller "TjolaBomp!"
Medvetet felstavade fraser, till exempel "klåkkan6" eller "HejjjaBlåååvittt!"
Använd inte ovanstående exempel. Lösenord som står i en handbok är de första en inkräktare provar.
Du kan byta ditt Kerberos-lösenord på två sätt:
Med det vanliga kommandot passwd i UNIX. Med SEAM installerat frågar kommandot passwd i Solaris också automatiskt efter ett nytt Kerberos-lösenord.
Fördelen med att använda passwd istället för kpasswd är att du kan ange båda lösenorden (för UNIX och Kerberos) samtidigt. I allmänhet måste du inte byta båda lösenorden med passwd. Ofta räcker det med att du byter enbart UNIX-lösenordet och låter Kerberos-lösenordet vara oförändrat eller vice-versa.
Funktionen hos passwd beror på hur PAM-modulen är konfigurerad. Det kan krävas att du byter båda lösenorden för vissa konfigurationer. För vissa anläggningar krävs det att UNIX-lösenordet byts, medan det i andra fall kan vara ett byte av Kerberos-lösenordet som är obligatoriskt.
Med kommandot kpasswd. Kommandot kpasswd är väldigt likt passwd. En skillnad är att kpasswd bara byter Kerberos-lösenord. Du måste använda passwd för att byta UNIX-lösenordet.
En annan skillnad är att du med kpasswd kan byta lösenord för en Kerberos-principal som inte är en giltig UNIX-användare. Antag till exempel att david/admin är en Kerberos-principal utan att vara en UNIX-användare. I så fall måste du använda kpasswd istället för passwd.
Efter att du bytt lösenord tar det en viss tid innan ändringen har överförts genom systemet (särskilt i ett stort nätverk). Beroende på hur systemet är konfigurerat kan detta ta allt ifrån fem minuter till en timme eller mer. Om du behöver nya Kerberos-biljetter efter att nyligen ha bytt lösenord försöker du med det nya lösenordet först. Om det nya lösenordet inte fungerar försöker du igen med det gamla.
Med Kerberos V5 kan systemadministratörer ange kriterier för vilka lösenord som är tillåtna för varje användare. Sådana kriterier definieras av den policy som anges för varje användare (eller av en standardpolicy). Mer information om policies finns i "Administrera policies". Antag till exempel att karins policy (kalla den karpol) kräver att lösenord ska vara åtminstone åtta tecken långa och bestå av en blandning av åtminstone två sorters tecken. Därför kommer kpasswd att neka ett försök att använda "cykel" som lösenord:
% kpasswd kpasswd: Ändrar lösenord för karin@ENG.ACME.COM: Gammalt lösenord: <karin anger sitt befintliga lösenord> kpasswd: lösenordet för karin@ENG.ACME.COM styrs av policyn karpol som kräver minst 8 tecken från minst 2 klasser (de fem klasserna är gemener, VERSALER, siffror, skiljetecken samt alla andra tecken). Nytt lösenord: <karin skriver in "cykel"> Nytt lösenord (upprepa): <karin skriver in "cykel" en gång till> kpasswd: Det nya lösenordet är för kort. Välj ett lösenord med som är åtminstone 4 tecken långt. |
Här använder karin "cykelväg49" som lösenord. "cykelväg49" uppfyller kriteriet eftersom det är mer än åtta tecken långt och innehåller två olika typer av tecken (siffror och små bokstäver):
% kpasswd kpasswd: Ändrar lösenord för karin@ENG.ACME.COM. Gammalt lösenord: <karin anger sitt befintliga lösenord> kpasswd: lösenordet för karin@ENG.ACME.COM styrs av policyn karpol som kräver minst 8 tecken från minst 2 klasser (de fem klasserna är gemener, VERSALER, siffror, skiljetecken samt alla andra tecken). Nytt lösenord: <karin skriver in "cykelväg49"> Nytt lösenord (upprepa): <karin skriver in "cykelväg49" en gång till> Kerberos-lösenordet har ändrats. |
I följande exempel visas hur david byter både sitt UNIX- och sitt Kerberos-lösenord med passwd.
% passwd passwd: Ändrar lösenord för david Ange lösenordet för inloggning (NIS+): <ange det befintliga UNIX-lösenordet> Nytt lösenord: <ange det nya UNIX-lösenordet> Ange lösenordet en gång till: <bekräfta det nya UNIX-lösenordet> Gammalt lösenord för KRB5: <ange det befintliga Kerberos-lösenordet> Nytt lösenord för KRB5: <ange det nya Kerberos-lösenordet> Ange lösenordet för KRB5 en gång till: <bekräfta det nya Kerberos-lösenordet> |
I exemplet ovan frågar passwd efter både UNIX- och Kerberos-lösenordet. Om däremot try_first_pass har angetts i PAM-modulen, kommer Kerberos-lösenordet att automatiskt anges till samma som UNIX-lösenordet. (Detta är standardkonfigurationen.) I så fall måste david använda kpasswd för att ange sitt Kerberos-lösenord till något annat enligt nästa exempel.
I det här exemplet visas hur han byter enbart sitt Kerberos-lösenord med kpasswd:
% kpasswd kpasswd: Ändrar lösenord för david@ENG.ACME.COM. Gammalt lösenord: <ange det befintliga Kerberos-lösenordet> Nytt lösenord: <ange det nya Kerberos-lösenordet> Nytt lösenord (upprepa): <bekräfta det nya Kerberos-lösenordet> Kerberos-lösenordet har ändrats. |
I det här exemplet byter david lösenord för Kerberos-principalen david/admin (som inte är en giltig UNIX-användare). För att kunna göra det måste han använda kpasswd.
% kpasswd david/admin kpasswd: Ändrar lösenord för david/admin. Gammalt lösenord: <ange det befintliga Kerberos-lösenordet> Nytt lösenord: <ange det nya Kerberos-lösenordet> Nytt lösenord (upprepa): <bekräfta det nya Kerberos-lösenordet> Kerberos-lösenordet har ändrats. |
Om du behöver ge någon möjlighet att logga in på ditt konto (som du) kan du göra detta i Kerberos utan att avslöja ditt lösenord genom att lägga en .k5login-fil i din hemkatalog. En .k5login-fil består av en lista med en eller flera Kerberos-principaler motsvarande varje person som du vill ge åtkomst. (Varje principal måste anges på en egen rad.)
Antag att användaren david har en .k5login-fil som ser ut så här i sin hemkatalog:
karin@ENG.ACME.COM johan@ACME.ORG |
Den här filen gör det möjligt för karin och johan att anta davids identitet förutsatt att de redan har Kerberos-biljetter för sina respektive användarkategorier. Karin kan till exempel använda rlogin för att logga in på davids maskin (boston), som honom, utan att behöva ange hans lösenord:
(Om davids hemkatalog skulle vara NFS-monterad måste karin ha en vidarebefordringsbar biljett för att kunna komma åt hans hemkatalog med Kerberos V5-protokoll från en annan (tredje) maskin. Ett exempel på hur man använder en vidarebefordringsbar biljett finns i "Så här skapar du en biljett".)
Om du kommer att logga in på andra maskiner via ett nätverk bör du inkludera din egen Kerberos-principal i .k5login-filerna på dessa maskiner.
Att använda en .k5login-fil är mycket säkrare än att dela ut ditt lösenord:
Du kan ta bort åtkomstmöjligheten när som helst genom att ta bort principalen eller principalerna från din .k5login-fil.
Trots att de användare som anges i .k5login-filen i din hemkatalog har fullständig åtkomst till ditt konto på maskinen (eller på mängden maskiner om .k5login-filen är delad, till exempel i ett NFS-system), så ärver de inte dina nätverksrättigheter. Alla Kerberos-anpassade tjänster kommer att verifiera åtkomst baserat på respektive användares identitet och inte på din identitet. Det betyder att karin kan logga in på johans maskin och utföra uppgifter där, men om hon använder ett Kerberos-anpassat program, som till exempel ftp eller rlogin, gör hon det som sig själv.
Kerberos sparar en logg över vilka som hämtar biljetter så att en systemadministratör, om så erfordras, kan ta reda på vem som kan använda din användaridentitet vid ett visst tillfälle.
Ett vanligt sätt att använda .k5login-filen är att lägga den i hemkatalogen för root vilket ger root åtkomst till de angivna Kerberos-principalerna för den maskinen. Detta gör det möjligt för systemadministratörer att bli root lokalt eller att logga in från en fjärrmaskin som root utan att behöva dela ut lösenordet för root och utan att någon behöver ange det över nätverket.
Antag att karin bestämmer sig för att logga in på maskinen boston.acme.com som root. Eftersom det finns en post för hennes principalnamn i .k5login i hemkatalogen för root på boston.acme.com, behöver hon inte ange sitt lösenord på nytt:
% rlogin boston.acme.com -l root -x Denna rlogin-session använder DES-kryptering för all dataöverföring. Senaste inloggning: tor 20 jun 16:20:50 från daffodil SunOS version 5.7 (GENERIC) #2: tis 14 nov 18:09:31 GMT 1998 boston[root]% |
Kerberos V5 är ett separat inloggningssystem. Det innebär att du bara behöver ange ditt lösenord en gång och sedan tar Kerberos V5-programmen hand om verifieringen (och den valfria krypteringen) åt dig. Detta eftersom Kerberos har byggts in i en svit av befintliga, välkända nätverksprogram. Kerberos V5-programmen är versioner av befintliga UNIX-nätverksprogram med tillagda Kerberos-funktioner.
När du till exempel använder ett Kerberos-anpassat program för att ansluta till en fjärrvärd kommer programmet, KDC:n och fjärrvärden att utföra en serie snabba förhandlingar. När dessa förhandlingar slutförts har programmet styrkt din identitet åt dig för fjärrvärden och fjärrvärden har beviljat åtkomst för dig.
De Kerberos-anpassade kommandona försöker först utföra verifieringen med hjälp av Kerberos. Om Kerberos-verifieringen misslyckas uppstår ett fel eller så görs ett försök med UNIX-verifiering beroende på vilka alternativ som användes med kommandot. Mer information finns i avsnittet Kerberos-säkerhet i direkthjälpen för Kerberos-kommandon.
De Kerberos-anpassade nätverkstjänsterna är de program som ansluter till en annan maskin någonstans på Internet. Dessa program finns i /usr/krb5/bin. Ange variabeln PATH så att dessa kommer före de icke Kerberos-anpassade versionerna. Dessa program är:
ftp
rcp
rlogin
rsh
telnet
Dessa program har alla de ursprungliga funktionerna från motsvarande icke Kerberos-kommandon. De har dessutom tilläggsfunktioner som helt transparent använder dina Kerberos-biljetter för att förhandla om verifiering (och valfri kryptering) med fjärrvärden. I de flesta fall kommer du att märka att du inte längre behöver ange ditt lösenord för att använda dem, eftersom Kerberos kommer att styrka din identitet åt dig.
Med nätverksprogrammen i Kerberos V5 kan du:
Vidarebefordra dina biljetter till en annan värd (om du hämtat vidarebefordringsbara biljetter)
Kryptera de data som överförs mellan dig och fjärrvärden
I det här avsnittet förutsätts att du redan känner till icke Kerberos-versionerna av dessa program. Betoningen läggs på de Kerberos-funktioner som lagts till med Kerberos V5-paketet. Detaljerade beskrivningar av de kommandon som nämnts här finns i respektive direkthjälpsavsnitt.
Följande Kerberos-alternativ har lagts till för ftp, rcp, rlogin, rsh och telnet:
Försök att logga in automatiskt med dina befintliga biljetter. Använder det användarnamn som returnerats av getlogin() såvida det inte skiljer sig ifrån aktuellt användar-ID. (Mer information finns i direkthjälpsavsnittet telnet(1).)
Vidarebefordra en icke återvidarebefordringsbar biljett till en fjärrvärd. Det här alternativet utesluter alternativet -F (se nedan). De kan inte användas tillsammans i samma kommando.
Du kommer att vilja vidarebefordra en biljett om du har skäl att tro att du kommer att behöva verifiera dig själv för andra Kerberos-baserade tjänster på en tredje värd - till exempel, om du vill utföra rlogin till en annan maskin och sedan utföra rlogin från denna till en tredje maskin.
Du bör definitivt använda en vidarebefordringsbar biljett om din hemkatalog på fjärrvärden är NFS-monterad med Kerberos V5. Annars kommer du inte att kunna komma åt hemkatalogen. (Antag att du först loggar in på System 1. Från System 1 utför du rlogin till din hemmaskin, System 2, vilken i sin tur monterar din hemkatalog från System 3. Om du inte använt -f eller - F tillsammans med rlogin, kommer du inte att kunna komma åt hemkatalogen, eftersom din biljett inte kan vidarebefordras till System 3.)
Som standard hämtar kinit vidarebefordringsbara TGT-biljetter (ticket-granting tickets). Det kan dock tänkas att din SEAM-konfiguration kan vara annorlunda i detta avseende.
Mer information om vidarebefordran av biljetter finns i "Vidarebefordra biljetter med -f och -F".
Vidarebefordra en återvidarebefordringsbar kopia av din TGT-biljett till en fjärrvärd. Liknar -f (se ovan), men tillåter åtkomst till ytterligare en maskin (den fjärde eller femte). alternativet -F kan därför anses vara en överordnad mängd till alternativet -f. alternativet -F utesluter alternativet -f. De kan inte användas tillsammans i samma kommando.
Mer information om vidarebefordran av biljetter finns i "Vidarebefordra biljetter med -f och -F".
Begär biljetter till fjärrvärden för angiven användarkategori. Istället för att bestämma användarkategorin själv använder du filen krb5.conf.
Använd dina biljetter för att verifiera dig hos fjärrvärden men logga inte in automatiskt.
Ange vilken GSS-API-säkerhetsmekanism som ska användas enligt listan i filen /etc/gss/mech. Standardvärdet är kerberos_v5.
Kryptera den här sessionen.
Deaktivera verifieringstypen verif_typ.
I Tabell 6-1 visas vilka kommandon som har vilka alternativ (ett "X" anger att kommandot har alternativet).
Tabell 6-1 Kerberos-alternativ för nätverkskommandon
|
ftp |
rcp |
rlogin |
rsh |
telnet |
---|---|---|---|---|---|
- a |
|
|
|
|
X |
-f |
X |
|
X |
X |
X |
-F |
|
|
X |
X |
X |
-k |
|
X |
X |
X |
X |
-K |
|
|
|
|
X |
-m |
X |
|
|
|
|
-x |
|
X |
X |
X |
X |
- X |
|
|
|
|
X |
Dessutom kan skyddsnivån för en session anges direkt på kommandoraden för ftp:
Ange skyddsnivån till "clear" (ingen säkerhet). Detta är standardvärdet.
Anger skyddsnivån till "private". Dataöverföringar skyddas av kryptering. Tjänsten privacy är troligen inte tillgänglig för alla SEAM-användare.
Anger skyddsnivån till "safe". Dataöverföringar integritetsskyddas med en kryptografisk kontrollsumma.
Du kan också ange skyddsnivå vid ftp-ledtexten genom att ange protect följt av någon av skyddsnivåerna ovan (clear, private eller safe).
I "Översikt över Kerberos-anpassade kommandon" beskrevs hur du med vissa kommandon kan vidarebefordra biljetter med något av alternativen -f eller -F. Genom att vidarebefordra biljetter kan du "länka" dina nätverkstransaktioner. Du kan till exempel utföra rlogin till en maskin för att sedan utföra rlogin från den maskinen till en annan. Med alternativet -f kan du vidarebefordra en biljett, medan alternativet -F även tillåter att du återvidarebefordrar en redan vidarebefordrad biljett.
I Figur 6-2 visas hur david hämtar en icke vidarebefordringsbar TGT-biljett (ticket-granting ticket) med kinit. (Den är icke vidarebefordringsbar eftersom han inte angav alternativet -f.) I scenario 1 kan han utföra rlogin till maskinen B, men han kan inte komma längre. I scenario 2 misslyckas kommandot rlogin -f eftersom han försöker vidarebefordra en biljett som är icke vidarebefordringsbar.
(I själva verket är konfigurationsfilerna för SEAM inställda så att kinit hämtar vidarebefordringsbara biljetter som standard. Konfigurationen kan dock variera från fall till fall. För att bättre kunna förklara funktionen har vi antagit att kinit inte hämtar vidarebefordringsbara TGT-biljetter så länge inte kinit -f används. Lägg förresten märke till att kinit saknar alternativet -F. TGT-biljetter är antingen vidarebefordringsbara eller inte.)
I Figur 6-3 hämtar david vidarebefordringsbara TGT-biljetter med kinit -f. I scenario 3 kan han nå maskinen C eftersom han använder en vidarebefordringsbar biljett tillsammans med rlogin. I scenario 4 misslyckas rlogin eftersom biljetten inte är återvidarebefordringsbar. Genom att istället använda alternativet -F, som i scenario 5, lyckas det andra rlogin-kommandot och biljetten kan vidarebefordras till maskin D.
Följande exempel ger en inblick i hur alternativen för de Kerberos-anpassade kommandona fungerar.
I det här exemplet har användaren david redan loggat in och vill använda telnet till maskinen denver.acme.com. Han använder alternativet -f för att vidarebefordra sina befintliga biljetter, alternativet -x för att kryptera sessionen och alternativet -a för att inloggningen ska utföras automatiskt. Eftersom han inte planerar att använda några tjänster på en tredje värd, kan han använda -f istället för -F.
% telnet -a -f -x denver.acme.com Försöker med 128.0.0.5... Ansluten till denver.acme.com. Esc-tecknet är "^]". [ Kerberos V5 accepterar dig som "david@eng.acme.com" ] [ Kerberos V5 accepterar vidarebefordrade referenser ] SunOS 5.7: tis 21 may 00:31:42 GMT 1998 Välkommen till SunOS % |
Lägg märke till att davids maskin använde Kerberos för att verifiera honom för denver.acme.com för att sedan logga in honom automatiskt som sig själv. Han fick en krypterad session med en kopia av sina biljetter väntande och klara, och han behövde aldrig ange sitt lösenord. Om han hade använt en icke Kerberos-anpassad version av telnet skulle han ha fått ange sitt lösenord som sedan hade skickats okrypterat över nätverket - om en inkräktare hade övervakat nätverkstrafiken just då, skulle inkräktaren fått reda på davids lösenord.
Om du vidarebefordrar dina Kerberos-biljetter förstörs de av telnet (precis som av övriga kommandon som nämns här) när kommandot avslutas.
Här vill användaren karin logga in på sin egen maskin, boston.acme.com. Hon vidarebefordrar sina befintliga biljetter med -F och krypterar sessionen med -x. Hon väljer -F snarare än -f eftersom det kan tänkas att hon vill utföra andra nätverkstransaktioner som kräver att biljetterna vidarebefordras igen efter att hon loggat in på boston. Dessutom, eftersom hon vidarebefordrar sina befintliga biljetter, behöver hon inte ange sitt lösenord.
% rlogin boston.acme.com -l root -x Denna rlogin-session använder DES-kryptering för all dataöverföring. Senaste inloggning mån 19 may 15:19:49 från daffodil SunOS version 5.7 (GENERIC) #2 tis 14 nov 18:09:3 GMT 1998 % |
Antag att johan vill använda ftp för att hämta sin e-post från katalogen ~johan/MAIL på maskinen denver.acme.com med en krypterad session. Det skulle i så fall kunna se ut så här:
% ftp -f denver.acme.com Ansluten till denver.acme.com 220 denver.acme.org FTP-server (Version 6.0) klar. 334 Använder verifiering av typen GSSAPI. ADAT måste följa den GSSAPI som accepterats som verifieringstyp GSSAPI-verifieringen lyckades Namn (daffodil.acme.org:johan) 232 GSSAPI user johan@MELPOMENE.ACME.COM har verifierats som johan 230 Användaren johan har loggats in. Fjärrsystemtypen är UNIX. Använder BINARY-läget för överföring av filer. ftp> protect private 200 Skyddsnivån har angetts till Private ftp> cd ~johan/MAIL 250 CWD-kommandot lyckades. ftp> get RMAIL 227 Påbörjar passivt läge (128,0,0,5,16,49) 150 Öppnar en dataförbindelse i BINARY-läge för RMAIL (158336 bytes). 226 Överföringen klar. 158336 byte togs emot på 1,9 sekunder (1,4e+02 kbyte/s) ftp> quit % |
johan angav skyddsnivån till private för att få en krypterad session.