{"slug":"deploy-tailscale-with-iru","title":"Deploy Tailscale with Iru","tags":["tailscale"],"agent_summary":"Last validated: Dec 2, 2025","trigger_phrases":[],"runnable":false,"markdown":"\r\n# Deploy Tailscale with Iru\r\n\r\nLast validated: Dec 2, 2025\r\n\r\nThis integrationis available for [the Standard, Premium, and Enterprise plans](https://tailscale.com/pricing).\r\n\r\nIru is formerly known as Kandji. Several references to Kandji may still be found in instructions, code examples, and user interfaces.\r\n\r\nYou can use the Iru mobile device management (MDM) solution to deploy Tailscale in your organization. You can use Iru to remotely install the Tailscale client, configure a number of [system policies](https://tailscale.com/docs/features/tailscale-system-policies), and deploy these policies across devices in your organization. Tailscale system policies with Iru are supported on macOS and iOS.\r\n\r\nIf you need help deploying Tailscale using Iru, or would like to suggest any feature enhancements, contact our [support](https://tailscale.com/contact/support#support-form) or [sales](https://tailscale.com/contact/sales) teams.\r\n\r\n## [Deploying Tailscale using Kandji Auto Apps](https://tailscale.com/docs/integrations/mdm/iru\\#deploying-tailscale-using-kandji-auto-apps)\r\n\r\nSee [Deploy Tailscale on macOS using MDM](https://tailscale.com/docs/integrations/mdm/mac) for general best practices and [Approve the Tailscale system extension automatically](https://tailscale.com/docs/integrations/mdm/mac#approve-the-tailscale-system-extension-automatically) to ensure the best end-user experience.\r\n\r\nThe [Auto Apps](https://www.iru.com/products/endpoint/endpoint-management) feature in Kandji lets you automatically install Tailscale on any Mac in your fleet. Optionally, Kandji can also keep track of new Tailscale versions and automatically install them based on rules you define. To get started, follow these steps:\r\n\r\n01. Login to your Kandji admin console at `<companyName>.kandji.io`.\r\n\r\n02. Select the Library tab, and then add a new item by selecting the **Add Item** button.\r\n\r\n03. Scroll down the page to the **Auto Apps** section. Choose **Tailscale**, then **Add and Configure**, which will add Tailscale to your Kandji library.\r\n    ![Choose Tailscale to add to your Kandji library.](https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-1.a2c45fab.png&w=1080&q=75)\r\n04. Choose one or more blueprints you want Tailscale to be added to. Blueprints are a set of library items and other configurations that can be deployed to a group of devices. For instance, to deploy Tailscale to all devices in your fleet, select the **All Blueprints** option. You can also add additional optional rules to restrict the assignment within the blueprint.\r\n    ![Choose the blueprints you want Tailscale to be added to.](https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-2.398609ef.png&w=1080&q=75)\r\n05. Select an installation method. You can choose to install and continuously enforce the Tailscale installation on devices, or allow your users to install Tailscale on-demand from your Kandji Self Service app.\r\n\r\n06. In the **Enforcement** section, choose whether Kandji should automatically update the Tailscale client for you or not. Refer to [Managing Tailscale updates with Kandji](https://tailscale.com/docs/integrations/mdm/iru#managing-tailscale-updates-with-kandji) later in this topic for more information.\r\n    ![Specify whether Kandji should automatically update the Tailscale client.](https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-3.bc51e13e.png&w=1080&q=75)\r\n07. Turn on the **Notifications** switch to enable notification permissions for the client automatically. This will allow Tailscale to notify your users when their device key is about to expire, if their internet connection is down, or if other actions are required.\r\n\r\n08. Tailscale runs as a menu bar app with no Dock icon, so you can safely uncheck the **Add to Dock during install** option.\r\n\r\n09. Choose **Save** to continue.\r\n\r\n10. The deployment of the Tailscale client will begin according to the options you selected. You can use the **Status** tab to track its status.\r\n    ![View the status of the Tailscale deployment.](https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-4.53840c2b.png&w=1080&q=75)\r\n\r\n### [Managing Tailscale updates with Kandji](https://tailscale.com/docs/integrations/mdm/iru\\#managing-tailscale-updates-with-kandji)\r\n\r\nBy default, Tailscale will automatically update on its own by using the Sparkle framework built into the app. We provide several [system policies](https://tailscale.com/docs/features/tailscale-system-policies) to configure the auto-updater settings, including whether or not these settings are visible to end-users. If you prefer to use the built-in auto-updater in Tailscale, you should choose **Do not manage updates** when setting up Tailscale in the Kandji library.\r\n\r\nIf you prefer to centralize management of your app updates, you might want to have Kandji install updates for you. To enable this, choose either one of the **Automatically enforce new updates** or **Manually enforce a new version** options. Then, set up the following system policy values to ensure the Tailscale auto-updater won't run and won't be visible to users:\r\n\r\n- `SUAutomaticallyUpdate` = `false`\r\n- `SUEnableAutomaticChecks` = `false`\r\n- `ApplyUpdates` = `hide`\r\n\r\n## [Deploying Tailscale system policies using Kandji](https://tailscale.com/docs/integrations/mdm/iru\\#deploying-tailscale-system-policies-using-kandji)\r\n\r\nTailscale [system policies](https://tailscale.com/docs/features/tailscale-system-policies) let you customize the behavior of the Tailscale client on the devices in your fleet. You can force Tailscale to always be enabled, enforce the use of a given exit node, hide specific parts of the user interface, and so on. For more information about the available options, refer to the [system policies topic](https://tailscale.com/docs/features/tailscale-system-policies).\r\n\r\nTo get started deploying Tailscale system policies with Kandji, you'll first need to determine which policies you wish to impose on your devices. Once you know which system policies to impose and the value for each, you'll then need to create an Apple configuration profile (`.mobileconfig` file) to define them, and upload the profile to the Kandji admin console.\r\n\r\n1. Paste the contents of our [configuration profile template](https://tailscale.com/docs/integrations/mdm/mac#deploying-system-policies-in-a-configuration-profile), which provides preset values for the **ManagedByOrganizationName** and **IPAddressCopiedAlertSuppressed** policies into a new XML file called `Tailscale.mobileconfig`. This XML file with the `.mobileconfig` extension will become your configuration profile.\r\n\r\n2. Login to your Kandji admin console at `<companyName>.kandji.io`.\r\n\r\n3. Select the Library tab, and then add a new item by selecting the **Add Item** button.\r\n\r\n4. Select the **Custom Profile** and then **Add and Configure**.\r\n![Add and configure a custom profile.](https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-5.ab01887d.png&w=1080&q=75)\r\n5. Assign a descriptive name to the profile. For instance, `Tailscale System Policies for macOS`.\r\n![Assign a name for the profile.](https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-6.20055dc9.png&w=1080&q=75)\r\n6. Upload the `.mobileconfig` file you previously created to the admin console.\r\n![Upload the .mobileconfig file.](https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-7.af0770ea.png&w=1080&q=75)\r\n7. Choose **Save**.\r\n\r\n8. The deployment of the system policies will begin according to the options you selected. You can use the **Status** tab to track its status.\r\n![View the status of the system policies deployment.](https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-8.2dcb67fd.png&w=1080&q=75)\r\n9. Restart the Tailscale client on your devices to ensure the policies are fully applied. If you deployed the **ManagedByOrganizationName** policy, you can quickly verify the success of the deployment by checking a **Managed by CompanyName** menu item in the Tailscale client.\r\n\r\n\r\n![Project Logo](https://cdn.brandfetch.io/tailscale.com/fallback/lettermark/theme/dark/h/256/w/256/icon?c=1bfwsmEH20zzEfSNTed)\r\n\r\nAsk AI\r\n\r\nreCAPTCHA\r\n\r\nRecaptcha requires verification.\r\n\r\nprotected by **reCAPTCHA**\r\n","html":"<h1>Deploy Tailscale with Iru</h1>\n<p>Last validated: Dec 2, 2025</p>\n<p>This integrationis available for <a href=\"https://tailscale.com/pricing\">the Standard, Premium, and Enterprise plans</a>.</p>\n<p>Iru is formerly known as Kandji. Several references to Kandji may still be found in instructions, code examples, and user interfaces.</p>\n<p>You can use the Iru mobile device management (MDM) solution to deploy Tailscale in your organization. You can use Iru to remotely install the Tailscale client, configure a number of <a href=\"https://tailscale.com/docs/features/tailscale-system-policies\">system policies</a>, and deploy these policies across devices in your organization. Tailscale system policies with Iru are supported on macOS and iOS.</p>\n<p>If you need help deploying Tailscale using Iru, or would like to suggest any feature enhancements, contact our <a href=\"https://tailscale.com/contact/support#support-form\">support</a> or <a href=\"https://tailscale.com/contact/sales\">sales</a> teams.</p>\n<h2><a href=\"https://tailscale.com/docs/integrations/mdm/iru#deploying-tailscale-using-kandji-auto-apps\">Deploying Tailscale using Kandji Auto Apps</a></h2>\n<p>See <a href=\"https://tailscale.com/docs/integrations/mdm/mac\">Deploy Tailscale on macOS using MDM</a> for general best practices and <a href=\"https://tailscale.com/docs/integrations/mdm/mac#approve-the-tailscale-system-extension-automatically\">Approve the Tailscale system extension automatically</a> to ensure the best end-user experience.</p>\n<p>The <a href=\"https://www.iru.com/products/endpoint/endpoint-management\">Auto Apps</a> feature in Kandji lets you automatically install Tailscale on any Mac in your fleet. Optionally, Kandji can also keep track of new Tailscale versions and automatically install them based on rules you define. To get started, follow these steps:</p>\n<ol>\n<li>\n<p>Login to your Kandji admin console at <code>&#x3C;companyName>.kandji.io</code>.</p>\n</li>\n<li>\n<p>Select the Library tab, and then add a new item by selecting the <strong>Add Item</strong> button.</p>\n</li>\n<li>\n<p>Scroll down the page to the <strong>Auto Apps</strong> section. Choose <strong>Tailscale</strong>, then <strong>Add and Configure</strong>, which will add Tailscale to your Kandji library.\r\n<img src=\"https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-1.a2c45fab.png&#x26;w=1080&#x26;q=75\" alt=\"Choose Tailscale to add to your Kandji library.\"></p>\n</li>\n<li>\n<p>Choose one or more blueprints you want Tailscale to be added to. Blueprints are a set of library items and other configurations that can be deployed to a group of devices. For instance, to deploy Tailscale to all devices in your fleet, select the <strong>All Blueprints</strong> option. You can also add additional optional rules to restrict the assignment within the blueprint.\r\n<img src=\"https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-2.398609ef.png&#x26;w=1080&#x26;q=75\" alt=\"Choose the blueprints you want Tailscale to be added to.\"></p>\n</li>\n<li>\n<p>Select an installation method. You can choose to install and continuously enforce the Tailscale installation on devices, or allow your users to install Tailscale on-demand from your Kandji Self Service app.</p>\n</li>\n<li>\n<p>In the <strong>Enforcement</strong> section, choose whether Kandji should automatically update the Tailscale client for you or not. Refer to <a href=\"https://tailscale.com/docs/integrations/mdm/iru#managing-tailscale-updates-with-kandji\">Managing Tailscale updates with Kandji</a> later in this topic for more information.\r\n<img src=\"https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-3.bc51e13e.png&#x26;w=1080&#x26;q=75\" alt=\"Specify whether Kandji should automatically update the Tailscale client.\"></p>\n</li>\n<li>\n<p>Turn on the <strong>Notifications</strong> switch to enable notification permissions for the client automatically. This will allow Tailscale to notify your users when their device key is about to expire, if their internet connection is down, or if other actions are required.</p>\n</li>\n<li>\n<p>Tailscale runs as a menu bar app with no Dock icon, so you can safely uncheck the <strong>Add to Dock during install</strong> option.</p>\n</li>\n<li>\n<p>Choose <strong>Save</strong> to continue.</p>\n</li>\n<li>\n<p>The deployment of the Tailscale client will begin according to the options you selected. You can use the <strong>Status</strong> tab to track its status.\r\n<img src=\"https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-4.53840c2b.png&#x26;w=1080&#x26;q=75\" alt=\"View the status of the Tailscale deployment.\"></p>\n</li>\n</ol>\n<h3><a href=\"https://tailscale.com/docs/integrations/mdm/iru#managing-tailscale-updates-with-kandji\">Managing Tailscale updates with Kandji</a></h3>\n<p>By default, Tailscale will automatically update on its own by using the Sparkle framework built into the app. We provide several <a href=\"https://tailscale.com/docs/features/tailscale-system-policies\">system policies</a> to configure the auto-updater settings, including whether or not these settings are visible to end-users. If you prefer to use the built-in auto-updater in Tailscale, you should choose <strong>Do not manage updates</strong> when setting up Tailscale in the Kandji library.</p>\n<p>If you prefer to centralize management of your app updates, you might want to have Kandji install updates for you. To enable this, choose either one of the <strong>Automatically enforce new updates</strong> or <strong>Manually enforce a new version</strong> options. Then, set up the following system policy values to ensure the Tailscale auto-updater won't run and won't be visible to users:</p>\n<ul>\n<li><code>SUAutomaticallyUpdate</code> = <code>false</code></li>\n<li><code>SUEnableAutomaticChecks</code> = <code>false</code></li>\n<li><code>ApplyUpdates</code> = <code>hide</code></li>\n</ul>\n<h2><a href=\"https://tailscale.com/docs/integrations/mdm/iru#deploying-tailscale-system-policies-using-kandji\">Deploying Tailscale system policies using Kandji</a></h2>\n<p>Tailscale <a href=\"https://tailscale.com/docs/features/tailscale-system-policies\">system policies</a> let you customize the behavior of the Tailscale client on the devices in your fleet. You can force Tailscale to always be enabled, enforce the use of a given exit node, hide specific parts of the user interface, and so on. For more information about the available options, refer to the <a href=\"https://tailscale.com/docs/features/tailscale-system-policies\">system policies topic</a>.</p>\n<p>To get started deploying Tailscale system policies with Kandji, you'll first need to determine which policies you wish to impose on your devices. Once you know which system policies to impose and the value for each, you'll then need to create an Apple configuration profile (<code>.mobileconfig</code> file) to define them, and upload the profile to the Kandji admin console.</p>\n<ol>\n<li>\n<p>Paste the contents of our <a href=\"https://tailscale.com/docs/integrations/mdm/mac#deploying-system-policies-in-a-configuration-profile\">configuration profile template</a>, which provides preset values for the <strong>ManagedByOrganizationName</strong> and <strong>IPAddressCopiedAlertSuppressed</strong> policies into a new XML file called <code>Tailscale.mobileconfig</code>. This XML file with the <code>.mobileconfig</code> extension will become your configuration profile.</p>\n</li>\n<li>\n<p>Login to your Kandji admin console at <code>&#x3C;companyName>.kandji.io</code>.</p>\n</li>\n<li>\n<p>Select the Library tab, and then add a new item by selecting the <strong>Add Item</strong> button.</p>\n</li>\n<li>\n<p>Select the <strong>Custom Profile</strong> and then <strong>Add and Configure</strong>.\r\n<img src=\"https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-5.ab01887d.png&#x26;w=1080&#x26;q=75\" alt=\"Add and configure a custom profile.\"></p>\n</li>\n<li>\n<p>Assign a descriptive name to the profile. For instance, <code>Tailscale System Policies for macOS</code>.\r\n<img src=\"https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-6.20055dc9.png&#x26;w=1080&#x26;q=75\" alt=\"Assign a name for the profile.\"></p>\n</li>\n<li>\n<p>Upload the <code>.mobileconfig</code> file you previously created to the admin console.\r\n<img src=\"https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-7.af0770ea.png&#x26;w=1080&#x26;q=75\" alt=\"Upload the .mobileconfig file.\"></p>\n</li>\n<li>\n<p>Choose <strong>Save</strong>.</p>\n</li>\n<li>\n<p>The deployment of the system policies will begin according to the options you selected. You can use the <strong>Status</strong> tab to track its status.\r\n<img src=\"https://tailscale.com/_next/image?url=%2F_next%2Fstatic%2Fmedia%2Fkandji-8.2dcb67fd.png&#x26;w=1080&#x26;q=75\" alt=\"View the status of the system policies deployment.\"></p>\n</li>\n<li>\n<p>Restart the Tailscale client on your devices to ensure the policies are fully applied. If you deployed the <strong>ManagedByOrganizationName</strong> policy, you can quickly verify the success of the deployment by checking a <strong>Managed by CompanyName</strong> menu item in the Tailscale client.</p>\n</li>\n</ol>\n<p><img src=\"https://cdn.brandfetch.io/tailscale.com/fallback/lettermark/theme/dark/h/256/w/256/icon?c=1bfwsmEH20zzEfSNTed\" alt=\"Project Logo\"></p>\n<p>Ask AI</p>\n<p>reCAPTCHA</p>\n<p>Recaptcha requires verification.</p>\n<p>protected by <strong>reCAPTCHA</strong></p>\n"}