From Fedora Project Wiki
Description
Join the current machine to a FreeIPA domain using GNOME's initial setup tool. Domain accounts are available on the local machine once this is done.
Setup
- This test case assumes you have already set up a FreeIPA domain (named "ipa.example.org" in this example - adjust as appropriate for your local configuration). If you haven't, you can set one up. QA:Testcase_freeipav3_installation can function as an instruction set for this purpose; also see the FreeIPA Guide.
- Your machine must have a fully-qualified host name. Do not proceed if the output of
hostname
islocalhost
orlocalhost.localdomain
or similar. It should be something liketest-system.example.org
. - Make sure you have realmd-0.13.3-2 or later installed:
rpm -q realmd
How to test
- Install Fedora Workstation (or, for releases older than Fedora 21, do a standard Fedora GNOME desktop install), using all defaults where possible and sensible settings elsewhere. Do not create a local user account during installation.
- Boot the installed system.
- On the About You page of the wizard, click Set Up Enterprise Login.
- Enter the FreeIPA domain name (for e.g. example.org) for Domain (it should be available as a choice from the drop-down box if your test system's hostname is as suggested above), and a valid username and password for a user account on the domain, and click Next.
- If prompted for administrator credentials, enter the username and password of the FreeIPA domain administrator account and click Continue.
- Complete the wizard, and try to log in with the user account you configured.
- Check whether you can run
getent passwd someuser@example.org
and other commands that would require correct authentication with the FreeIPA domain.
Expected Results
- Installation should run successfully. If it does not, you have made a mistake or encountered a failure of one of the Installer Test Cases.
- The GNOME initial setup wizard should appear before any login screen. If it does not, consider this a failure of QA:Testcase_base_initial_setup.
- The user creation step should switch to an 'Enterprise Login' mode when you click the Set Up Enterprise Login button.
- If the user account you chose to set up has the power to enrol new client systems in the domain, the joining process should start as soon as you enter the account details and click Next. If not, a dialog requesting the credentials of an account with the necessary powers should appear.
- If the admin credentials prompt is necessary, it should appear and the join process should start when you enter correct admin credentials and click Continue.
- You should be able to log in as the FreeIPA user configured during this test.
- You should be able to do things that
- Make sure the domain is listed.
- Make sure you have a
configured: kerberos-member
line in the output. - Make note of the login-formats line for the next command.
- Check that you can resolve domain accounts on the local computer.
$ getent passwd admin@ipa.example.org
- You should see an output line that looks like passwd(5) output. It should contain an appropriate home directory, and a shell.
- Use the login-formats you saw above, to build a remote user name. It will be in the form of $user@$fqdn, where fqdn is your fully qualified IPA domain name (e.g. ipa.example.org).
- Check that you have an appropriate entry in your hosts keytab.
sudo klist -k
- You should see several lines, with your host name. For example
1 host/$hostname@$FQDN
- Check that you can use your keytab with kerberos
sudo kinit -k host/client.ipa.example.org@IPA.EXAMPLE.ORG
- Make sure the domain name is capitalized.
- Use the principal from the output of the
klist
command above. Use the one that's capitalized and looks likehost/$hostname@$FQDN
. - There should be no output from this command.
- If you have set up the FreeIPA Web UI, you can use it to see that the computer account was created under the Hosts section.
Troubleshooting
Use the --verbose
argument to see details of what's being done during a join. Include verbose output in any bug reports.
$ realm join --verbose ipa.example.org