This repository contains an ACAP package that installs the Tailscale VPN client on Axis cameras.
- ✅ Secure remote access to cameras
- ✅ Easy to install via EAP package
- ✅ Works on Axis OS 12+ (non-root version)
- ✅ Based on WireGuard VPN technology
- 📥 Installation
- 🚀 Usage
- 🔄 Updating Tailscale
- 🧪 Testers Needed
- 🎉 Good News
- 🎯 Purpose
- 🔗 Useful Links
- 🖥️ Compatibility
- ⭐ Star History
- 💖 Support
The recommended way is to use the prebuilt .eap file from the Releases page.
- Log into your Axis camera.
- Go to Apps → Add App.
- Upload the
.eapfile.
Once installed:
- Start the app.
- Click Open to view logs and get your Tailscale authentication URL.
- On uninstall, all changes/files are removed.
⚠️ You’ll need a Tailscale account to authenticate.
- Runs a startup script to set permissions and launch Tailscale.
- View logs via the Open button in the app.
- Authenticate using the provided URL.
- New
.eapfiles are auto-built and released weekly (if a new Tailscale version is available). - To update, simply install the new
.eapover the existing one.
Replace the binaries in the lib/ folder:
tailscaletailscaled
Download the latest versions: Tailscale static builds
From the main directory of the version you want (arm / aarch64):
docker build --tag <package_name> .
docker cp $(docker create <package_name>):/opt/app ./buildA new custom version is available:
- Allows setting a custom server and auth key (for Headscale).
- Go to Settings (⋮ → Settings) to add your details.
Please give it a try and share your feedback!
Tailscale ACAP can now run without root privileges, making it compatible with Axis OS 12+.
- Runs in user space networking mode.
For full networking features, use the ROOT version on Axis OS < 12.
Adding a VPN client directly to the camera enables:
- Secure remote access without additional hardware or complex network configuration.
- Easy setup through Tailscale’s lightweight WireGuard-based tunnel.
🔗 Learn more: How Tailscale Works
The Tailscale ACAP is compatible with Axis cameras with ARM and AARCH64-based SoCs.
You can verify your device details using the following command:
curl --anyauth "*" -u <username>:<password> <device_ip>/axis-cgi/basicdeviceinfo.cgi --data '{"apiVersion":"1.0","context":"Client defined request ID","method":"getAllProperties"}'Replace
<device_ip>,<username>, and<password>with your device credentials.
Enclose your password in quotes' 'if it contains special characters.
If you like this project and want to support future updates:
👉 Sponsor Me