
You’ve got the hard parts done—TrueNAS is installed, your pool is configured, and the basics are working. Now let’s finish the essentials in three focused areas: getting backups INTO TrueNAS from your machines, adding HTTPS to the web interface, and a quick hardening checklist so you don’t get caught out later.
Part A: Send Backups to TrueNAS
The goal here is simple and quiet—automated backups from your daily machines to TrueNAS, with snapshots providing rollback capability if you accidentally delete something.
Create Dedicated Datasets
Start by creating a dataset for each machine you’ll back up:
- Navigate to Storage → Datasets → Add dataset under your pool
- Create datasets like
backups/michal-laptoporbackups/desktop - Set Share Type to SMB
- Optional but recommended: enable encryption on these child datasets and store the recovery key safely
Create Backup Users
Keep things secure with dedicated backup users:
- Go to Accounts → Users → Add
- Create a user (e.g.,
michal) with a strong password - Home directory configuration is optional for backup-only users
Configure SMB Shares
Set up shares that your machines can access:
- Navigate to Sharing → Windows (SMB) Shares → Add
- Set Path to your dataset (e.g.,
/mnt/pool/backups/michal-laptop) - Choose Purpose: “Multi-user SMB” or “Private SMB”
- In Advanced settings, ensure Enable SMB2/3 durable handles is checked
- If you plan to use Windows “Previous Versions” feature, make sure Enable SMB Shadow Copies is enabled (automatic on recent SCALE versions when snapshots exist)
Enable Snapshots for Point-in-Time Recovery
Snapshots are what make TrueNAS backups powerful—they give you the “Previous Versions” feature in Windows Explorer:
- Go to Data Protection → Periodic Snapshot Tasks → Add
- Select your Dataset (either
backupsparent or individual children) - Set Schedule to hourly or daily based on your needs
- Configure Lifetime to 30–90 days for backup targets
- Don’t forget to add a monthly boot-pool scrub under System → Boot
Configure Each Machine
Now point your machines at these shares.
Windows: Robocopy with Task Scheduler
Windows users should use Robocopy—it’s built-in, reliable, and handles network interruptions gracefully:
- Map the network drive:
\\truenas\michal-laptop - Create a batch script with this Robocopy command:
robocopy "C:\Users\Michal" "\\truenas\michal-laptop" /MIR /R:1 /W:3 /XJ /FFT /XD "AppData\Local\Temp" /LOG:C:\backup\robocopy.log
The /MIR flag mirrors your source (including deletions), but TrueNAS snapshots provide rollback if you need it. Schedule this via Task Scheduler to run nightly.
macOS: Native Time Machine Support
TrueNAS works beautifully with Time Machine:
- In your SMB share’s Advanced settings, enable Time Machine support
- On your Mac, open Time Machine → Select Disk and choose the SMB share
- Optional: set a quota on the dataset to prevent Time Machine from consuming unlimited space
Linux: rsync Over SMB
For Linux machines, mount the share and use rsync:
rsync -aHAX --delete --info=progress2 /home/USER/ /mnt/truenas/michal-laptop/
Schedule this with a systemd timer or cron job for automated backups.
Alternative approach: If you want client-side deduplication and encryption, consider using restic or borg to TrueNAS via SFTP or SMB.
Part B: Add HTTPS to the Web Interface
Running the TrueNAS web UI over plain HTTP exposes your credentials. Let’s fix that with one of three approaches.
Option 1: Self-Signed Certificate (Fastest, LAN-Only)
Best for purely local access with no external domain:
- Go to Credentials → Certificates → Add and create an Internal CA
- Add → Certificate (Internal) signed by your new CA (use a CN like
truenas.local) - Navigate to System Settings → General → GUI
- Set Web Interface HTTPS Certificate to your new certificate
- Enable Redirect HTTP to HTTPS
- Export the CA certificate and import it into your computers’ trust stores to eliminate browser warnings
Option 2: Let’s Encrypt via DNS-01 (No Port Forwarding Required)
This gives you a valid, trusted certificate without opening any ports:
- You’ll need a domain you control (e.g.,
nas.mydomain.com) - Go to Credentials → Certificates → ACME DNS-Authenticator → Add
- Select your DNS provider and paste your API token
- Add → ACME Certificate with FQDN
nas.mydomain.comand select your authenticator - Configure your local DNS (router override or hosts file) so
nas.mydomain.comresolves to the NAS’s LAN IP - Select this certificate in System Settings → General → GUI
The DNS-01 challenge means Let’s Encrypt verifies ownership through DNS records, not HTTP, so no port 80/443 exposure required.
Option 3: Import Existing Certificate
If you already manage certificates elsewhere, simply use Certificates → Import and upload your cert and key, then select it for the GUI.
Part C: Hardening and Housekeeping
These quick wins will save you headaches down the road.
Network Configuration
- Assign a static IP to your NAS under Network → Interfaces
- Never expose the TrueNAS UI to the internet—keep your Wasabi cloud sync outbound-only
Access Control
- Enable two-factor authentication: Credentials → 2FA (TOTP) for the web UI
- Keep datasets private to their respective users
- Avoid guest access unless absolutely necessary
Monitoring and Alerts
- Verify your SMTP configuration by sending a test alert
- Ensure you’re receiving scheduled task notifications
System Maintenance
- Configure a monthly scrub for boot environments: System → Boot
- Keep a couple of previous boot environments for rollback capability
- If you have a UPS, configure Services → UPS (NUT) for graceful shutdown on power loss
Cloud Backup Best Practices
Since you’re using Wasabi:
- Enable bucket versioning on the Wasabi side
- Consider lifecycle rules to expire old versions automatically and prevent cost creep
ZFS Tuning
The defaults are sensible for most use cases:
- LZ4 compression is enabled by default—keep it
- Disabling
atimeis beneficial for backup datasets - Avoid deduplication unless you have specific needs and 5GB RAM per TB of deduplicated storage
Ready-Made Scripts
Need help automating these tasks? I can provide:
- Windows Task Scheduler XML for the Robocopy job
- Systemd timer and service units for Linux rsync
- Step-by-step ACME DNS configuration for your specific DNS provider
Conclusion
With automated backups flowing to TrueNAS, HTTPS securing your web interface, and basic hardening in place, you’ve got a solid foundation. TrueNAS snapshots give you point-in-time recovery, and the combination of local backups plus cloud sync to Wasabi provides good data protection.
The beauty of this setup is that it’s quiet—once configured, it runs in the background while you focus on other things. Just keep an eye on those email alerts and verify your backups occasionally.
Have questions about your TrueNAS setup? Found this guide helpful? Leave a comment below or reach out on social media.