AFP548 Changing the world one server at a time.

802.1x Login Window Profile..

Home › Forums › Software › InstaDMG › 802.1x Login Window Profile..

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #375733
    johnmcl1
    Participant

    I’m attempting to create a package that I can install at image time that will deploy all settings (keychains, eap plist, airport plist, etc) in order to have a machine authenticate to AD and RADIUS at the login window and get onto our wireless network. Right now, we have everyone making a user profile. Ideally, I want to be able to send out a package either through InstaDMG or our Casper server (software management system). That way, nobody has to create their own profile and we can set up a machine when we image it to let the user just log in and be on our wireless lan. It seems that 10.4 had NetworkAuthConfigList in the loginwindow but I can’t figure out how 10.5 exports these settings to the loginwindow. It’s not within that plist. Does anyone have any ideas?

    #375776
    Patrick Fergus
    Participant

    I don’t have experience doing what you’re talking about, but letting fseventer watch while you set your changes should at least let you know what files are being modified.

    – Patrick

    #377699
    sggr57a
    Participant

    This is something I set up for my district to enable clients to authenticate to machines using their ad credentials. We use peap, ttls and md5 for authentication though this may be too much encryption than you need. We use wpa2 enterprise for our security type and a root ca to doll out the cert. Apple mentioned that the certificate must be in pem format when it copies to the machine or it won’t work. Note that I’ve changed some variables so you can use your own ssid and cert. I hope this helps everyone. I’m also known as johnmcl1 on this forum if anyone needs to contact me.

    #!/bin/sh

    # Set up some variables…
    wireless=wifissid
    uuid=`uuidgen`
    netuuid=`uuidgen`
    setuuid=`cat /Library/Preferences/SystemConfiguration/preferences.plist | grep /Sets/ | cut -c 16-51`

    # Define the plist files for easier reference…
    EAPLoginWindow=/Library/Preferences/SystemConfiguration/preferences.plist

    # Configuring the Login Window settings…
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:Airport dict” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:Airport:JoinMode string Automatic” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:Airport:JoinModeFallback array” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:Airport:JoinModeFallback:0 string Prompt” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:Airport:PowerEnabled bool Yes” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:Airport:PreferredNetworks array” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:Airport:PreferredNetworks:0 dict” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:Airport:PreferredNetworks:0:SSID_STR string $wireless” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:Airport:PreferredNetworks:0:SecurityType string WPA2\ Enterprise” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:Airport:PreferredNetworks:0:Unique\ Network\ ID string $netuuid” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:Airport:RememberRecentNetworks bool Yes” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:EAPOL.LoginWindow dict” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:EAPOL.LoginWindow:$uuid dict” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:EAPOL.LoginWindow:$uuid:EAPClientConfiguration dict” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:EAPOL.LoginWindow:$uuid:EAPClientConfiguration:AcceptEAPTypes array” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:EAPOL.LoginWindow:$uuid:EAPClientConfiguration:AcceptEAPTypes:0 integer 4” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:EAPOL.LoginWindow:$uuid:EAPClientConfiguration:AcceptEAPTypes:0 integer 25” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:EAPOL.LoginWindow:$uuid:EAPClientConfiguration:AcceptEAPTypes:0 integer 21” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:EAPOL.LoginWindow:$uuid:UniqueIdentifier string $uuid” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:EAPOL.LoginWindow:$uuid:UserDefinedName string $wireless” $EAPLoginWindow
    /usr/libexec/PlistBuddy -c “Add :Sets:$setuuid:Network:Interface:en1:EAPOL.LoginWindow:$uuid:Wireless\ Network string $wireless” $EAPLoginWindow

    # Add certificate to trusted list
    security add-trusted-cert -d -r trustRoot -p eap -k “/Library/Keychains/System.keychain” “/private/var/tmp/cert.some.domain.pem”

    exit 0

Viewing 3 posts - 1 through 3 (of 3 total)
  • You must be logged in to reply to this topic.