Slide 1

Slide 1 text

© JAMF Software, LLC Off-boarding in a Modern Deployment 4:00 - 4:45 PM UP NEXT

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

© JAMF Software, LLC Mischa van der Bent Chief Technical Officer 275x275 head shot

Slide 4

Slide 4 text

© JAMF Software, LLC Off-boarding in a Modern Deployment

Slide 5

Slide 5 text

© JAMF Software, LLC scriptingosx.com/offboarding

Slide 6

Slide 6 text

© JAMF Software, LLC YES and NO!

Slide 7

Slide 7 text

© JAMF Software, LLC Let me explain…

Slide 8

Slide 8 text

© JAMF Software, LLC Deployment: User Perspective 1. Open box 2. Power on MacBook 3. There is no step 3 ❤IT

Slide 9

Slide 9 text

© JAMF Software, LLC Deployment: User Perspective Leverage out-of-box experience

Slide 10

Slide 10 text

© JAMF Software, LLC Deployment: User Perspective Empower users to setup their devices

Slide 11

Slide 11 text

© JAMF Software, LLC Deployment: Admin Perspective Zero-touch effort for IT Streamline setup assistant for users Automatically enroll Deliver important apps and policies 
 during and after enrollment

Slide 12

Slide 12 text

© JAMF Software, LLC Keep applications up to date Address emerging security concerns Support multiple generations of hardware Prompt to download and 
 install updates through MDM Ongoing Maintenance

Slide 13

Slide 13 text

© JAMF Software, LLC Off-boarding Reset to factory defaults Remove MDM Framework/License Securely Wipe User Data

Slide 14

Slide 14 text

© JAMF Software, LLC Off-boarding: User Data Securely Wipe User Data General Data Protection Regulation (GDPR) Responsibility: User or IT??

Slide 15

Slide 15 text

© JAMF Software, LLC Maintenance Off-boarding Deployment

Slide 16

Slide 16 text

© JAMF Software, LLC What is Apple providing?

Slide 17

Slide 17 text

© JAMF Software, LLC iOS, iPadOS 
 and tvOS

Slide 18

Slide 18 text

© JAMF Software, LLC Quickly erase device from Settings All user data is securely removed Option can be restricted on 
 supervised devices Remote wipe MDM command User Driven Erase All Contents and Settings

Slide 19

Slide 19 text

© JAMF Software, LLC Apple Provisioning Utility Apple Configurator 2 GroundControl Jamf Reset Other Solutions TM

Slide 20

Slide 20 text

© JAMF Software, LLC macOS

Slide 21

Slide 21 text

© JAMF Software, LLC macOS Recovery Option-⌘-R Upgrade to the latest macOS that is compatible with your Mac. Shift-Option-⌘-R Install the macOS that came with your Mac, or the closest version still available. Command (⌘)-R Install the latest macOS that was installed on your Mac. Internet Recovery

Slide 22

Slide 22 text

© JAMF Software, LLC Installer App

Slide 23

Slide 23 text

© JAMF Software, LLC Installer App Manual Upgrade Create External Install Media Command Line Tool 
 /Applications/Install macOS Catalina.app/Contents/Resources/startosinstall

Slide 24

Slide 24 text

© JAMF Software, LLC Automated upgrade Automate with 
 startosinstall Requires Mac that supports Catalina 
 and is running at least OS X 10.9

Slide 25

Slide 25 text

© JAMF Software, LLC Automated Erase and Install Automate with 
 startosinstall --eraseinstall Requires APFS and installer 10.13.4+ No built-in UI option

Slide 26

Slide 26 text

© JAMF Software, LLC What if….. Erase All Content and Settings

Slide 27

Slide 27 text

© JAMF Software, LLC Erase All Contents and Settings Quickly erase device from 
 System Preferences All user data is securely removed Option can be restricted on 
 supervised devices Remote wipe MDM command User Driven Erase All Content and Settings This doesn’t exist..YET!! ??????????

Slide 28

Slide 28 text

© JAMF Software, LLC Same workflow across all devices

Slide 29

Slide 29 text

© JAMF Software, LLC Reconsider Your off-boarding workflows with Catalina

Slide 30

Slide 30 text

© JAMF Software, LLC Apple is tightening security

Slide 31

Slide 31 text

© JAMF Software, LLC Security changes in Catalina + macOS Recovery

Slide 32

Slide 32 text

© JAMF Software, LLC

Slide 33

Slide 33 text

© JAMF Software, LLC Starting Internet Recovery. This may take a while.

Slide 34

Slide 34 text

© JAMF Software, LLC Easy to forget…

Slide 35

Slide 35 text

© JAMF Software, LLC Availability Apple Business Manager Apple School Manager

Slide 36

Slide 36 text

© JAMF Software, LLC Countries 69 https://support.apple.com/en-us/HT207305 Apple Business Manager Availability

Slide 37

Slide 37 text

© JAMF Software, LLC Maintenance Off-boarding Deployment

Slide 38

Slide 38 text

© JAMF Software, LLC Reality — What we see in practice Your return to service workflows

Slide 39

Slide 39 text

© JAMF Software, LLC

Slide 40

Slide 40 text

© JAMF Software, LLC

Slide 41

Slide 41 text

© JAMF Software, LLC What do we want to achieve?

Slide 42

Slide 42 text

© JAMF Software, LLC What do we want to achieve? We want to provide a user driven off-boarding which is supported by Apple.

Slide 43

Slide 43 text

© JAMF Software, LLC Available Tools Community

Slide 44

Slide 44 text

© JAMF Software, LLC Bill Smith 
 Jamf https://www.jamf.com/blog/reinstall-a- clean-macos-with-one-button/ Reinstall with Self Service

Slide 45

Slide 45 text

© JAMF Software, LLC Graham Pugh
 grahampugh Blogpost: https://grahamrpugh.com/ 2018/03/26/reinstall-macos-from-system- volume.html Github: https://github.com/grahampugh/ erase-install Erase and reinstall macOS

Slide 46

Slide 46 text

© JAMF Software, LLC Tim Perfitt
 Twocanoes Software https://twocanoes.com/products/mac/mac- deploy-stick/ MDS - MacDeployStick

Slide 47

Slide 47 text

© JAMF Software, LLC What we created Pro Warehouse

Slide 48

Slide 48 text

© JAMF Software, LLC Based on startosinstall --eraseinstall --agreetolicense

Slide 49

Slide 49 text

© JAMF Software, LLC Perspectives End-User Administrator Developer

Slide 50

Slide 50 text

© JAMF Software, LLC End-User Command Line Tool UI Design

Slide 51

Slide 51 text

© JAMF Software, LLC Human Interface Guidelines https://developer.apple.com/design/ human-interface-guidelines/macos/ overview/themes/ End-User

Slide 52

Slide 52 text

© JAMF Software, LLC Based on startosinstall --eraseinstall Logging Bring your own Installer Add packages to install pre-erase hooks Error Handling Validation checks • Installer app in any location • Find My • Internet connection Administrator

Slide 53

Slide 53 text

© JAMF Software, LLC Start Application flow © JAMF Software, LLC

Slide 54

Slide 54 text

© JAMF Software, LLC Start APFS & OS Version? No Minimum OS 10.13 Quit App No Yes Yes Application flow © JAMF Software, LLC

Slide 55

Slide 55 text

© JAMF Software, LLC Developer

Slide 56

Slide 56 text

© JAMF Software, LLC Shredder.app EraseInstall.app

Slide 57

Slide 57 text

© JAMF Software, LLC

Slide 58

Slide 58 text

© JAMF Software, LLC EraseInstall.app

Slide 59

Slide 59 text

© JAMF Software, LLC +

Slide 60

Slide 60 text

Fast forward 4x

Slide 61

Slide 61 text

© JAMF Software, LLC About 7 minutes remaining

Slide 62

Slide 62 text

© JAMF Software, LLC Native support startosinstall

Slide 63

Slide 63 text

© JAMF Software, LLC startosinstall --usage --license
 prints the user license agreement only. --agreetolicense
 agree to the license you printed with --license. --rebootdelay
 how long to delay the reboot at the end of preparing. This delay is in seconds and has a maximum of 300 (5 minutes). --pidtosignal
 Specify a PID to which to send SIGUSR1 upon completion of the prepare phase. To bypass "rebootdelay" send SIGUSR1 back to startosinstall. --installpackage
 the path of a package (built with productbuild(1)) to install after the OS installation is complete; this option can be specified multiple times. --eraseinstall 
 (Requires APFS) Erase all volumes and install to a new one. Optionally specify the name of the new volume with --newvolumename. --newvolumename
 the name of the volume to be created with -- eraseinstall. --preservecontainer
 preserves other volumes in your APFS container when using --eraseinstall. --forcequitapps
 on restart applications are forcefully quit. 
 This is the default if no users are logged in. --usage
 prints this message. --agreetolicense
 agree to the license you printed with --license. --eraseinstall 
 (Requires APFS) Erase all volumes and install to a new one. Optionally specify the name of the new volume with --newvolumename. --installpackage
 the path of a package (built with productbuild(1)) to install after the OS installation is complete; this option can be specified multiple times.

Slide 64

Slide 64 text

© JAMF Software, LLC Add packages to install --installpackage
 the path of a package (built with productbuild(1)) to install after the OS installation is complete; this option can be specified multiple times. productbuild --identifier com.myorg.uniqueid --version 1.0 \
 --package input_component.pkg output_distribution.pkg https://scriptingosx.com/2019/04/eraseinstall-update-version-1-2/

Slide 65

Slide 65 text

© JAMF Software, LLC Maintenance Off-boarding Deployment

Slide 66

Slide 66 text

© JAMF Software, LLC WiFi.mobileconfig postinstall QuickAdd.pkg Custom_QuickAdd.pkg

Slide 67

Slide 67 text

© JAMF Software, LLC EraseInstall application will look for package installers (pkg) files /Library/Application Support/EraseInstall/Packages/

Slide 68

Slide 68 text

© JAMF Software, LLC Maintenance Off-boarding Deployment Custom_QuickAdd.pkg

Slide 69

Slide 69 text

© JAMF Software, LLC Better Feedback logging

Slide 70

Slide 70 text

© JAMF Software, LLC Better Feedback ⌘ + L

Slide 71

Slide 71 text

© JAMF Software, LLC Deployment Deploy with Jamf Pro

Slide 72

Slide 72 text

© JAMF Software, LLC Erase & Install
 bitbucket.org https://bitbucket.org/prowarehouse-nl/ erase-install/src/master/ Download

Slide 73

Slide 73 text

© JAMF Software, LLC Deploy Installer App VPP PKG with management system External Drive 
 softwareupdate --fetch-full-installer --full-installer-version 10.15 Available in macOS 10.15 Catalina

Slide 74

Slide 74 text

© JAMF Software, LLC Preparations +

Slide 75

Slide 75 text

© JAMF Software, LLC Preparations + +

Slide 76

Slide 76 text

© JAMF Software, LLC About 7 minutes remaining

Slide 77

Slide 77 text

© JAMF Software, LLC

Slide 78

Slide 78 text

© JAMF Software, LLC Maintenance Off-boarding Deployment

Slide 79

Slide 79 text

© JAMF Software, LLC YES there is

Slide 80

Slide 80 text

© JAMF Software, LLC What is next…. Not done yet….

Slide 81

Slide 81 text

© JAMF Software, LLC Future plans Pre-erase hooks Manage EraseInstall workflow with profile Localization: ✓English ✓Dutch • ……we need help VERSION 2.0

Slide 82

Slide 82 text

© JAMF Software, LLC Customization + +

Slide 83

Slide 83 text

© JAMF Software, LLC Customization + + +

Slide 84

Slide 84 text

© JAMF Software, LLC Erase & Install
 bitbucket.org https://bitbucket.org/prowarehouse-nl/ erase-install/src/master/ Open Source Contribute!

Slide 85

Slide 85 text

© JAMF Software, LLC MacAdmins on Slack Join us at #eraseinstall macadmins.org

Slide 86

Slide 86 text

© JAMF Software, LLC scriptingosx.com/offboarding

Slide 87

Slide 87 text

© JAMF Software, LLC Mischa van der Bent Chief Technical Officer 275x275 head shot mvdbent scriptingosx.com/offboarding

Slide 88

Slide 88 text

THANK YOU!

Slide 89

Slide 89 text

© JAMF Software, LLC Thank you for listening! Give us feedback by completing the 2-question session survey in the JNUC 2019 app.