diff options
author | Rob Crittenden <rcritten@redhat.com> | 2011-03-17 10:22:33 -0400 |
---|---|---|
committer | Rob Crittenden <rcritten@redhat.com> | 2011-03-18 14:54:01 -0400 |
commit | 15e213d0258f69feaf6031a8721902f63c864ac2 (patch) | |
tree | d2951cc9b7020d5f0f569e7c2521a8535aac2dbb | |
parent | 861d1bbdca4793fb45fb233d236d3793cc23da36 (diff) | |
download | freeipa-15e213d0258f69feaf6031a8721902f63c864ac2.tar.gz freeipa-15e213d0258f69feaf6031a8721902f63c864ac2.tar.xz freeipa-15e213d0258f69feaf6031a8721902f63c864ac2.zip |
Ensure that the system hostname is lower-case.
ticket 1080
-rwxr-xr-x | ipa-client/ipa-install/ipa-client-install | 13 | ||||
-rw-r--r-- | ipaserver/install/installutils.py | 3 |
2 files changed, 11 insertions, 5 deletions
diff --git a/ipa-client/ipa-install/ipa-client-install b/ipa-client/ipa-install/ipa-client-install index 4ff4c458e..4e29fa988 100755 --- a/ipa-client/ipa-install/ipa-client-install +++ b/ipa-client/ipa-install/ipa-client-install @@ -681,6 +681,13 @@ def main(): if options.unattended and (options.password is None and options.principal is None and options.prompt_password is False) and not options.on_master: sys.exit("One of password and principal are required.") + if options.hostname: + hostname = options.hostname + else: + hostname = socket.getfqdn() + if hostname != hostname.lower(): + sys.exit('Invalid hostname \'%s\', must be lower-case.' % hostname) + # Create the discovery instance ds = ipaclient.ipadiscovery.IPADiscovery() @@ -756,6 +763,7 @@ def main(): logging.debug("will use cli_basedn: %s\n", cli_basedn) subject_base = "O=%s" % ds.getRealmName() + print "Hostname: "+hostname print "Realm: "+cli_realm print "DNS Domain: "+cli_domain print "IPA Server: "+cli_server @@ -876,11 +884,6 @@ def main(): # Add the CA to the default NSS database and trust it run(["/usr/bin/certutil", "-A", "-d", "/etc/pki/nssdb", "-n", "IPA CA", "-t", "CT,C,C", "-a", "-i", "/etc/ipa/ca.crt"]) - if options.hostname: - hostname = options.hostname - else: - hostname = socket.getfqdn() - # If on master assume kerberos is already configured properly. if not options.on_master: # Configure krb5.conf diff --git a/ipaserver/install/installutils.py b/ipaserver/install/installutils.py index 9f4bd615b..b3402440a 100644 --- a/ipaserver/install/installutils.py +++ b/ipaserver/install/installutils.py @@ -101,6 +101,9 @@ def verify_fqdn(host_name,no_host_dns=False): if len(host_name.split(".")) < 2 or host_name == "localhost.localdomain": raise RuntimeError("Invalid hostname '%s', must be fully-qualified." % host_name) + if host_name != host_name.lower(): + raise RuntimeError("Invalid hostname '%s', must be lower-case." % host_name) + try: hostaddr = socket.getaddrinfo(host_name, None) except: |