Skip to content
Tech News
← Back to articles

Using Tailscale with an OrbStack VM on macOS

read original get Tailscale VPN for Mac → more articles
Why This Matters

This guide highlights how integrating Tailscale with OrbStack on macOS enables seamless, secure remote access to Linux VMs without exposing host ports. It emphasizes the importance of leveraging native kernel networking for reliable VPN connectivity, enhancing both security and usability for developers and IT professionals. The process demonstrates how macOS-specific security measures can be effectively managed to streamline VM provisioning and access control in a modern tech environment.

Key Takeaways

Using Tailscale with an OrbStack VM on macOS

This repository demonstrates how to use OrbStack on macOS to provision an Ubuntu virtual machine (VM), and then add it to your tailnet.

Unlike minimal container runtimes that lack native kernel modules, OrbStack provides a fully capable Linux kernel environment. This allows Tailscale to leverage standard kernel networking ( /dev/net/tun ) rather than relying on userspace-networking workarounds.

OrbStack first spins up a temporary VM instance which allows cloud-init to pull its configuration from dev-server.yml and then stops the VM. Then OrbStack wakes up the pre-configured VM, adds it to your tailnet using an auth key and enables Tailscale SSH. You can then SSH to your VM from anywhere, without exposing host ports.

This example also demonstrates a macOS-specific method for securely storing your Tailscale auth key in Apple Keychain. Due to macOS security sandbox restrictions, the guest VM cannot directly execute security find-generic-password to pull secrets from the host. Instead, the credential must be injected from the host macOS environment during provisioning, as shown in run.sh .

Modify access controls

Before launching the VM, configure your Tailscale Access Control Lists (ACLs) to handle the automated registration and permissions.

Create a tag

Go to Access controls > Tags and define a server tag:

Tag name: myservers

... continue reading