Difference between revisions of "Heimdal"
From WPKG | Open Source Software Deployment and Distribution
(Created page with "This is a silent installer for the Secure Endpoints distribution of Heimdal for Windows and Network Identity Manager. Heimdal is a prerequisite of OpenAFS == Populating %SO...") |
m |
||
Line 137: | Line 137: | ||
.example.com = EXAMPLE.COM | .example.com = EXAMPLE.COM | ||
</pre> | </pre> | ||
+ | |||
+ | |||
+ | [[Category: Silent Installers]] |
Revision as of 23:07, 10 June 2014
This is a silent installer for the Secure Endpoints distribution of Heimdal for Windows and Network Identity Manager.
Heimdal is a prerequisite of OpenAFS
Populating %SOFTWARE%/secure_endpoints_heimdal/
- From https://www.secure-endpoints.com/heimdal/ obtain Heimdal 1.6.0pre2 (64-bit and 32-bit versions).
- From https://www.secure-endpoints.com/netidmgr/v2/ obtain Network Identity Manager 2.0.102.907 (both 32-bit and 64-bit MSIs).
- Create an appropriate krb5.conf file
Configuration
The package configuration looks like:
<!--
As of 2014-05-29 this file has been tested, and appears to work with:
Windows XP 32-bit SP3 [English]
Windows 7 32-bit SP1 [English]
Windows 7 64-bit SP1 [English]
-->
<package
id="secure_endpoints_heimdal"
name="Secure Endpoints Heimdal Kerberos for Windows"
revision="%version%"
reboot="false"
priority="100">
<!-- 1.6.0pre2 full version number is 1.6.2.0. -->
<variable name="version" value="1.6.2.0" />
<variable name="filename_version" value="1-6-2-0" />
<variable architecture="x86" name="heimdal_msi" value="secure_endpoints_heimdal\Heimdal-i386-%filename_version%.msi" />
<variable architecture="x64" name="heimdal_msi" value="secure_endpoints_heimdal\Heimdal-AMD64-full-%filename_version%.msi" />
<check type="uninstall" condition="exists" path="Heimdal %version%"/>
<install cmd='msiexec /qn /norestart /i "%SOFTWARE%\%heimdal_msi%"' >
<exit code='0'/>
<exit code='3010' />
</install>
<!--
Apparently krb5.conf lives in %PROGDATA% on Windows 7, %ALLUSERSPROFILE%/Application Data(or the appropriate localisation) on Windows XP.
Interestingly heimdal appears to set KRB5_CONFIG, but only if it creates the config itself.
So, in order of increasing preference:
-->
<variable name="KRB5_CONFIG" value="%ALLUSERSPROFILE%\Application Data\Kerberos\krb5.conf">
<condition>
<check type="host" condition="environment" value="ALLUSERSPROFILE=^.+$" />
</condition>
</variable>
<variable name="KRB5_CONFIG" value="%PROGDATA%\Kerberos\krb5.conf">
<condition>
<check type="host" condition="environment" value="PROGDATA=^.+$" />
</condition>
</variable>
<variable name="KRB5_CONFIG" value="%KRB5_CONF%">
<condition>
<check type="host" condition="environment" value="KRB5_CONF=^.+$" />
</condition>
</variable>
<install cmd='cmd /C copy /Y "%SOFTWARE%\secure_endpoints_heimdal\krb5.conf" "%KRB5_CONFIG%" '>
</install>
<upgrade include="install"/>
<remove cmd='msiexec /qn /norestart /x {0DC697B0-CC56-4459-84E8-7493F10DA948}' >
<exit code='0'/>
<exit code='1605' />
<exit code='3010' />
</remove>
</package>
<package
id="netidmgr"
name="Network Identity Manager"
revision="%version%"
reboot="false"
priority="100">
<depends package-id="secure_endpoints_heimdal" />
<variable name="version" value="2.0.102.907" />
<variable name="filename_version" value="2_0_102_907" />
<!-- There seems to be a mismatch between the number in the installer and that shown on the website. A second number scheme? -->
<variable name="uninstall_version" value="2.0.1.903" />
<variable architecture="x86" name="netidmgr_msi" value="secure_endpoints_heimdal\netidmgr-i386-rel-%filename_version%.msi" />
<variable architecture="x64" name="netidmgr_msi" value="secure_endpoints_heimdal\netidmgr-AMD64-rel-%filename_version%.msi" />
<check type="uninstall" condition="versiongreaterorequal" path="Network Identity Manager" value="%uninstall_version%" />
<install cmd='msiexec /qn /norestart /i "%SOFTWARE%\%netidmgr_msi%"' >
<exit code='0'/>
<exit code='3010' />
</install>
<upgrade include="install"/>
<remove cmd='msiexec /qn /x {84F4BEC6-0953-4687-A7E2-D6A42C141FD5}' >
<exit code='0'/>
<exit code='1605' />
<exit code='3010' />
</remove>
</package>
An appropriate krb5.conf may look like:
[libdefaults] default_realm = EXAMPLE.COM allow_weak_crypto = true forwardable = true proxiable = true clockskew = 300 v4_instance_resolve = false v4_name_convert= { host = { rcmd = host ftp = ftp } plain = { something = something-else } } [realms] EXAMPLE.COM = { kdc = a.kdc.example.com kdc = b.kdc.example.com admin_server = a.kdc.example.com default_domain = example.com } [domain_realm] example.com = EXAMPLE.COM .example.com = EXAMPLE.COM