Difference between revisions of "Heimdal"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
(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/


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