Product SiteDocumentation Site

2.6. Kerberos

Systeem beveiliging en integriteit binnen een netwerk kan onhandelbaar zijn. Het kan verschillende beheerders bezighouden om alleen maar in de gaten te houden welke services op een netwerk draaien en hoe deze services gebruikt worden.
Verder kan de authenticatie van gebruikers voor netwerk services gevaarlijk blijken als de methode gebruikt in het protocol inherent onveilig is, zoals aangetoond wordt door het versturen van onversleutelde wachtwoorden over een netwerk met FTP en Telnet protocollen.
Kerberos is een manier om de noodzaak voor protocollen die onveilige authenticatie methodes toestaan te elimineren, en op die manier de netwerk beveiliging verbeteren.

2.6.1. Wat is Kerberos?

Kerberos is een netwerk authenticatie protocol gemaakt door MIT, wat symmetrische sleutel cryptografie[14] gebruikt om gebruikers te authenticeren voor netwerk services, wat betekent dat wachtwoorden nooit echt over het netwerk verstuurd worden.
Als gevolg hiervan zullen gebruikers die authenticeren voor netwerk services met gebruik van Kerberos, ongeoorloofde gebruikers die proberen wachtwoorden te verzamelen door het bekijken van het netwerk verkeer effectief dwarsbomen.

2.6.1.1. Voordelen van Kerberos

De meeste conventionele netwerk services gebruiken een op wachtwoorden gebaseerd authenticatie schema. Zulke schema's vereisen dat een gebruiker zich authentiseert bij een bepaalde service door een gebruikersnaam en wachtwoord op te geven. Helaas gebeurt het versturen van deze authenticatie informatie voor veel services onversleuteld. Om zo'n schema veilig te laten zijn, moet het netwerk ontoegankelijk voor buitenstaanders zijn, en moeten alle computers en gebruikers op het netwerk vertrouwd en betrouwbaar zijn.
Zelfs als dit het geval is, kan een netwerk dat verbonden is met het Internet niet langer als veilig verondersteld worden. Elke aanvaller die toegang krijgt tot het netwerk kan een eenvoudig pakket analyse programma, ook bekend als pakket snuffelaar, gebruiken om gebruikersnamen en wachtwoorden te onderscheppen, en gebruikersaccounts en de integriteit van de gehele beveiligings infrastructuur in gevaar brengen.
Het belangrijkste ontwerp doel van Kerberos is om het versturen van onversleutelde wachtwoorden over het netwerk te elimineren. Als het juist gebruikt wordt, zal Kerberos de bedreiging, die pakket snuffelaars anders op een netwerk zijn, effectief te elimineren.

2.6.1.2. Nadelen van Kerberos

Hoewel Kerberos een algemene en ernstige beveiligings bedreiging verwijdert, kan het om een aantal redenen moeilijk te implementeren zijn:
  • Het verhuizen van gebruikers wachtwoorden van een standaard UNIX wachtwoorden database, zoals /etc/passwd of /etc/shadow, naar een Kerberos wachtwoord database kan vervelend zijn, omdat er geen geautomatiseerd mechanisme is om deze taak uit te voeren. Refereer naar Vraag 2.23 in de online Kerberos FAQ:
  • Kerberos is slechts gedeeltelijk compatibel met het Pluggable Authentication Modules (PAM) systeem die door de meeste Fedora servers gebruikt wordt. Refereer naar Paragraaf 2.6.4, “Kerberos en PAM” voor meer informatie over dit probleem.
  • Kerberos neemt aan dat elke gebruiker vertrouwd is, maar dat deze een onvertrouwde host op een onvertrouwd netwerk gebruikt. Zijn belangrijkste doel is om te voorkomen dat onversleutelde wachtwoorden over dat netwerk verstuurd worden. Als echter iemand anders dan de werkelijke gebruiker toegang heeft tot de host die kaartjes voor authenticatie uitgeeft — het sleutel distributie centrum (KDC) genaamd — is het hele Kerberos authenticatie systeem in gevaar.
  • Om een toepassing Kerberos te laten gebruiken, moet zijn broncode veranderd worden om de juiste aanroepen naar de Kerberos bibliotheken te maken. Toepassingen die op deze manier veranderd zijn worden bewust van Kerberos, of kerberized genoemd. Voor sommige toepassingen kan dit een heel probleem zijn door de grootte van de toepassing of zijn ontwerp. Voor andere niet-compatibele toepassingen moeten veranderingen gemaakt worden in de manier waarop de server en cliënt communiceren. Dit kan nogal wat werk zijn. Gesloten bron toepassingen die standaard geen Kerberos ondersteuning hebben zijn vaak de meest problematische.
  • Kerberos is een alles of niets oplossing. Als Kerberos op het netwerk gebruikt wordt, is elk onversleuteld wachtwoord verstuurd naar een service die zich niet bewust is van Kerberos een gevaar. Dus het netwerk heeft geen voordeel van het gebruik van Kerberos. Om een netwerk met Kerberos te beveiligen, moet men of zich van Kerberos bewuste versies van alle cliënt/server toepassingen die wachtwoorden onversleuteld versturen gebruiken, of geen enkele van zulke cliënt/server toepassingen gebruiken.


[14] Een systeem waarbij zowel de cliënt als de server een gemeenschappelijke sleutel delen die gebruikt wordt voor het versleutelen en ontsleutelen van netwerk communicatie.