diff options
author | Simo Sorce <ssorce@redhat.com> | 2007-08-09 14:52:54 -0400 |
---|---|---|
committer | Simo Sorce <ssorce@redhat.com> | 2007-08-09 14:52:54 -0400 |
commit | a59c36b394dba5f8b371c1a6cdab0317a5507486 (patch) | |
tree | 91cbc96560da1e0aebe3b0dda64c8b3191495a0b /ipa-server/ipaserver/krbinstance.py | |
parent | 950bddf2a32b765ee97df5442a1ec9c0a358ccb3 (diff) | |
parent | cf93b1bc642a843242cc9aaf585c08c5475ad632 (diff) | |
download | freeipa-a59c36b394dba5f8b371c1a6cdab0317a5507486.tar.gz freeipa-a59c36b394dba5f8b371c1a6cdab0317a5507486.tar.xz freeipa-a59c36b394dba5f8b371c1a6cdab0317a5507486.zip |
merge in changes from upstream
Diffstat (limited to 'ipa-server/ipaserver/krbinstance.py')
-rw-r--r-- | ipa-server/ipaserver/krbinstance.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/ipa-server/ipaserver/krbinstance.py b/ipa-server/ipaserver/krbinstance.py index 9d9d69be9..df403471a 100644 --- a/ipa-server/ipaserver/krbinstance.py +++ b/ipa-server/ipaserver/krbinstance.py @@ -28,6 +28,7 @@ from time import gmtime import os import pwd import socket +import time from util import * def host_to_domain(fqdn): @@ -78,10 +79,16 @@ class KrbInstance: self.__configure_ldap() + self.__configure_http() + self.__create_instance() self.__create_ds_keytab() + self.__create_http_keytab() + + self.__set_kadmin_changepw_preauth() + self.__create_sample_bind_zone() self.start() @@ -183,3 +190,24 @@ class KrbInstance: kwrite.close() kread.close() kerr.close() + + def __create_http_keytab(self): + (kwrite, kread, kerr) = os.popen3("/usr/kerberos/sbin/kadmin.local") + kwrite.write("addprinc -randkey HTTP/"+self.fqdn+"@"+self.realm+"\n") + kwrite.flush() + kwrite.write("ktadd -k /etc/httpd/conf/ipa.keytab HTTP/"+self.fqdn+"@"+self.realm+"\n") + kwrite.flush() + kwrite.close() + kread.close() + kerr.close() + + while not file_exists("/etc/httpd/conf/ipa.keytab"): + time.sleep(1) + pent = pwd.getpwnam("apache") + os.chown("/etc/httpd/conf/ipa.keytab", pent.pw_uid, pent.pw_gid) + + def __configure_http(self): + http_txt = template_file(SHARE_DIR + "ipa.conf", self.sub_dict) + http_fd = open("/etc/httpd/conf.d/ipa.conf", "w") + http_fd.write(http_txt) + http_fd.close() |