Skip to content

Deploy Kerberos GSSAPI environment

erisesoft edited this page May 14, 2018 · 30 revisions

Example Environment(based on Ubuntu)

  • KDC Server: kdc.example.com
  • Realm: EXAMPLE.COM
  • Mail Server: mail.example.com
  • Mail Client: auth by kinit test1

Prepare

KDC Server

sudo apt-get install krb5-admin-server
sudo apt-get install krb5-kdc

KDC Client (Mail Server and Mail Client)

sudo apt-get install krb5-user
sudo apt-get install gsasl 

Setup

KDC Server

sudo vim /etc/krb5.conf
sudo vim /etc/krb5kdc/kdc.conf
sudo scp /etc/krb5.conf root@mail.example.com:/etc/krb5.conf

sudo krb5_newrealm

sudo /etc/init.d/krb5-admin-server restart
sudo /etc/init.d/krb5-kdc restart

sudo kadmin.local -q 'addprinc -randkey imap/mail.example.com@EXAMPLE.COM'
sudo kadmin.local -q 'addprinc -randkey pop/mail.example.com@EXAMPLE.COM'
sudo kadmin.local -q 'addprinc -randkey smtp/mail.example.com@EXAMPLE.COM'
sudo kadmin.local -q 'addprinc -randkey xmpp/mail.example.com@EXAMPLE.COM'

sudo kadmin.local -q 'ktadd -keytab /tmp/krb5-mail.keytab imap/mail.example.com@EXAMPLE.COM'
sudo kadmin.local -q 'ktadd -keytab /tmp/krb5-mail.keytab pop/mail.example.com@EXAMPLE.COM'
sudo kadmin.local -q 'ktadd -keytab /tmp/krb5-mail.keytab smtp/mail.example.com@EXAMPLE.COM'
sudo kadmin.local -q 'ktadd -keytab /tmp/krb5-mail.keytab xmpp/mail.example.com@EXAMPLE.COM'

sudo kadmin.local -q 'addprinc test1@EXAMPLE.COM'

sudo scp /tmp/krb5-mail.keytab root@mail.example.com:/etc/erisemail/krb5.keytab

Mail Server

export KRB5_KTNAME=/etc/krb5.keytab
klist -k -t /etc/krb5.keytab

Mail Client

kinit test1

Test via gsasl in Client

gsasl --connect mail.example.com:143 -a test1@example.com -d
gsasl --connect mail.example.com:25 -a test1@example.com -d

Clone this wiki locally