Windows Preparation for Participants
This training course is intended for people with limited to no experience with Shibboleth, but having some other fundamental skills will let you focus on learning Shibboleth.
You will be able to use these VMs with the InCommon Training SP from anywhere for at least 2 weeks following your training, such as if you want to revisit the training materials or tinker with it. You will need to update any manual hostname mapping if your VM acquires a new IP address.
- Basic understanding of XML, specifically how to correctly nest elements and properly close tags
- Knowledge of your favorite XML Editor (we recommend Notepad++ for the course; it is pre-installed on the VMs)
- Basic understanding of Internet Information Services (IIS) for the SP part of the training
- Basic understanding of authentication, how it's done at your organization, and familiarity with single sign-on concepts
- Basic knowledge of Windows Server 2012 administration
Helpful Knowledge to have:
- Basic familiarity with Java, Active Server Pages (ASP) and optionally PHP
- Basic knowledge regarding how to find and use log files to troubleshoot issues with applications
- Basic understating of LDAP, specifically your LDAP or Active Directory server, its structure, and who to contact for access (especially if it isn't you ☺ )
- Experience using the Windows Command Prompt / PowerShell
Shibboleth requires that messages passed between the IdP and the SP are in close synchronization time-wise. Please ensure that Windows Time Service is running. If the VM clock falls far out of synch with reality, you may need to manually synchronize the clock:
- Right-click on the clock (lower right of VM screen)
- Select "Adjust Date/Time"
- Click on "Internet Time" tab
- Click "Change Settings"
- Click "Update now"
Installation on an InCommon-hosted Amazon AWS Instance
You will need administrator (or root) access in your host environment to edit the hosts file. You will be able to use the AWS instances we provide with the InCommon Training SP from anywhere for 2 weeks following your training, such as if you want to revisit the training materials or tinker with it. Make sure you save anything you want to keep within 2 weeks of the workshop, as we do not back up the instances before we spin them down.
Choose a unique, fully-qualified hostnameof the form
host.domain.tld. For best results, the hostname should be at least 3 components (two dots). For example, you might choose something like
mytestidp.mycompany.com, etc. Throughout this workshop, the instructions will refer to this as
The hostname you choose for your VM does not need to resolve anywhere except your own host environment, but it must be unique within the class and it will be visible to the rest of the class. If someone else uses the same hostname as you, bad things will happen™. Please do not use any of the previous example hostnames (in particular, my.special.name) verbatim! Be creative and choose a hostname that you are sure will be unique.
- Find out the external IP address of your assigned AWS instance. Typically, the IP address will be part of the instance's DNS name; for example,
ec2-220.127.116.11.us-west-2.compute.aws.comwould correspond to an IP address of
18.104.22.168. If desired, you can confirm this by looking up the DNS name via a command-line utility like
nslookup, or any other tool of your choosing.
Edit the hosts file on your local laptop, and assign the hostname you chose in step 1 to your AWS instance's external IP address. For Mac or Linux hosts, the file is located at
/etc/hosts; for Windows, it is typically located at
C:\WINDOWS\system32\drivers\etc\hosts. Add a line similar to the following, substituting your custom hostname and your instance's IP address:
If you get permission errors on a Windows host, try right-clicking on the hosts file and select "Open as administrator".
- Use the Microsoft Remote Desktop client to connect to your instance via RDP, and login as user
Administrator. Check with the instructors for the Administrator password.
Installation in a customized environment
If you choose to use a VM hosted in your own environment, please be aware that you will be responsible for addressing any unique environment- or host-related issues. We will try to help but we may be unable to. Participants without sysadmin experience are encouraged to use a provided AWS instance instead.
Select an OS that is supported by the Shibboleth project(or a distribution that is similar) after reading the SP installation instructions for that OS so you know what you're up against. The installers should work with all common versions of Windows, but your mileage may vary. Building from source during the class is a tedious, slow, perilous, and solitary adventure. The instructors are only knowledgeable about supported versions of Windows.
- You will need Administrator-level access to a VM with sufficient disk(at least 2GB) and memory(at least 1GB).
- Ensure your VM has a reasonably stable IP address and DNS mapping. You may want to define a custom hostname by assigning your VM a unique, creative fully-qualified hostname of the form
host.domain.tldby editing the
hostsfile in your host environment.
- Especially if you are using a different version of Windows Server, you may need to interpret the instructions, which are written specifically for the Windows Server 2012 AWS instances we provide.
MySpecialNamewill be your VM's hostname.
- Your VM will need to accept inbound TCP requests from your host machine on 443 (https for users), 8443 (https for services), and 22 (ssh). It will need to do outbound ldap(389), ldaps(636), https(443) and ntp(123). Ensure that both your network environment and your host environment permit this from the training on-site. Obviously, the easiest way to accomplish this is to treat the VM as disposable and open to the world.
- Connect to your VM via RDP and get started. Install your favorite JDK distribution, but only the official Oracle Java releases are recommended for production by the Shibboleth project.
- If all else fails, the trainers will be happy to provision an instance for you. Please ask.