#The Broker side of the configuration requires the mod_auth_kerb package to be #installed.

#Apart from that you must also have a kerberos kdc setup. The service host #needs to have a service principle added for the OpenShift broker proxy (httpd) #server. Once a service principle is created, you’ll want to add it to the kdc #keytab file. Once added to the kdc keytab file, you’ll want to extract the #keytab file to the OpenShift broker proxy and point to this extracted keytab #file in the OpenShift broker proxy httpd configuration file.

Steps to perform on the kdc: 1) #install the krb packages yum install krb5-workstation krb5-server krb5-libs

2) #create the principle db kdb5_util create -s

3) #add the service principle kadmin.local -q “addprinc HTTP/www.example.com

4) #add a user principle kadmin kadmin: addprinc [email protected]

5) #add the service principle to the kdc keytab kadmin kadmin: ktadd HTTP/www.example.com

6) #configure the OpenShift broker proxy krb5 client, you can use something similar to the following:

logging

default = FILE:/var/log/krb5libs.log kdc = FILE:/var/log/krb5kdc.log admin_server = FILE:/var/log/kadmind.log

libdefaults

default_realm = EXAMPLE.COM dns_lookup_realm = false dns_lookup_kdc = false ticket_lifetime = 24h forwardable = yes allow_weak_crypto = yes default_keytab_name = FILE:/var/www/openshift/broker/http/conf.d/http.keytab

realms

EXAMPLE.COM =

kdc = kerberos.example.com
admin_server = kerberos.example.com
default_domain = EXAMPLE.COM

domain_realm

example.com = EXAMPLE.COM .example.com = EXAMPLE.COM

7) #make sure you can run kinit HTTP/www.example.com successfully. If you can, it’s time to extract the keytab file for the service principle on the OpenShift broker. kadmin kadmin: ktadd -k /var/www/openshift/broker/httpd/conf.d/http.keytab HTTP/www.example.com

8) #change the ownership of the keytab so it’s readable by the httpd process chown apache.apache /var/www/openshift/broker/httpd/conf.d/http.keytab

9) #use the provided openshift-origin-auth-remote-user-kerberos.conf.sample file (change if necessary to reflect your service principle service name), rename the sample file (take off the .sample extension) mv openshift-origin-auth-remote-user-kerberos.conf.sample openshift-origin-auth-remote-user-kerberos.conf

10) #restart the OpenShift broker service service openshift-broker restart