What this is, and what it is not
CIPP is a community-maintained tool for administering many Microsoft 365 tenants from one place. The engineering here is deployment and operations, not product design. I evaluated it, stood it up on infrastructure we control, and kept it running.
Initial deployment
The first build ran on a Windows VM in our own Azure subscription. That got the platform into production and under our own identity controls rather than someone else's hosting.
- Application registration scoped to the permissions actually used rather than the permissive default set.
- Administrative access placed behind identity controls, with the audit trail retained on infrastructure we control.
- Backup and restore path defined and tested, so a bad upgrade is a recovery rather than a rebuild.
Why it moved to Linux
The workload did not need Windows. It needed a runtime, a reverse proxy, and somewhere to keep state. Paying for a Windows VM to host that meant paying for licensing the application never used.
The conversion followed a documented procedure rather than being improvised, and the existing configuration and tenant connections carried over. Same platform, same team workflow, a smaller and cheaper VM underneath it.
- Backup taken and the restore path confirmed before the move, since the rollback plan matters more than the migration steps.
- Tenant connections verified after the cutover rather than assumed intact.
- Monthly cost for the workload went from roughly $60 to about $20.
Ongoing
Upstream releases are staged and validated before they reach the live instance. Applying updates blind to a system with this reach is not a maintenance policy, and it matters more with a tool you do not control the release cadence of.