31.07.2015 Views

network protocols handbook.pdf

network protocols handbook.pdf

network protocols handbook.pdf

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

103Protocols GuideSecurity and VPN - AAA ProtocolsAAA ProtocolsProtocol NameKerberos: Network AuthenticationProtocolProtocol DescriptionKerberos is a <strong>network</strong> authentication protocol. Kerberos is designedto provide strong authentication for client/server applicationsby using secret-key cryptography. This is accomplishedwithout relying on authentication by the host operating system,without basing trust on host addresses, without requiring physicalsecurity of all the hosts on the <strong>network</strong>, and under the assumptionthat packets traveling along the <strong>network</strong> can be read,modified, and inserted at will. Kerberos performs authenticationunder these conditions as a trusted third-party authenticationservice by using conventional cryptography, i.e., shared secretkey.The authentication process proceeds as follows: A client sendsa request to the authentication server (AS) requesting “credentials”for a given server. The AS responds with these credentials,encrypted in the client’s key. The credentials consist of 1)a “ticket” for the server and 2) a temporary encryption key (oftencalled a “session key”). The client transmits the ticket (whichcontains the client’s identity and a copy of the session key, bothencrypted in the server’s key) to the server. The session key(now shared by the client and server) is used to authenticate theclient, and may optionally be used to authenticate the server. Itmay also be used to encrypt further communication betweenthe two parties or to exchange a separate sub-session key to beused to encrypt further communication.The authentication exchanges mentioned above require readonlyaccess to the Kerberos database. Sometimes, however,the entries in the database must be modified, such as whenadding new principals or changing a principal’s key. This is doneusing a protocol between a client and a third Kerberos server,the Kerberos Administration Server (KADM). The administrationprotocol is not described in this document. There is also a protocolfor maintaining multiple copies of the Kerberos database, butthis can be considered an implementation detail and may vary tosupport different database technologies.Protocol StructureKerberos messages:The Client/Server Authentication ExchangeMessage direction Message type1. Client to Kerberos KRB_AS_REQ2. Kerberos to client KRB_AS_REP or KRB_ERRORThe Client/Server Authentication ExchangeMessage directionMessage typeClient to Application serverKRB_AP_REQ[optional] Application server to client KRB_AP_REPor KRB_ERRORThe Ticket-Granting Service (TGS) ExchangeMessage direction Message type1. Client to Kerberos KRB_TGS_REQ2. Kerberos to client KRB_TGS_REP or KRB_ERRORThe KRB_SAFE ExchangeThe KRB_PRIV ExchangeThe KRB_CRED ExchangeRelated <strong>protocols</strong>RADIUS, TACACS+Sponsor SourceKerberos is defined by MIT.Referencehttp://www.javvin.com/protocol/rfc1510.<strong>pdf</strong>The Kerberos Network Authentication Service (V5)http://www.javvin.com/protocol/rfc1964.<strong>pdf</strong>The Kerberos Version 5 GSS-API Mechanismhttp://web.mit.edu/kerberos/www/Kerberos: The Network Authentication Protocol

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!