Campus Network-as-a-Service (CNaaS) is a project within SUNET with the goal of providing a fully managed service for LAN/WLAN networks at university campuses.

Blog Posts

CNaaS Documentation

There are three parts to the documentation of CNaaS at SUNET:

  1. Product documentation - Documents the different products we use. For NMS and NAC documentation, see below. (Public access)
  2. Service documentation - Documents the SUNET specific processes. (Mixed public/private access)
  3. Customer documentation - Documents specific details of one customer implementation (Private access)


As part of this project a network management system called CNaaS-NMS is being developed to automate the management of the campus networks, the software is open source and can be used by anyone outside of SUNET as well.

Blog can be found here: Campus Networking Automation - Introduction

Source code available at Github


Modules / VMs

Dev / test environment setup

Lab Setup


Software Architecture (Google docs)

Code coverage status (

CNaas - NAC (Network Access Control)

In order to provide end users with an authentication mechanism CNaaS NAC was invented. It relies on freeradius ( for user authentication using 802.1X with MAB as fallback for clients not being able to use 802.1X.

Source code is available on GitHub:

Freeradius can either be integrated towards the existing user database (LDAP, Active Directory etc) or use Postgres to store credentials. CNaaS NAC provides both an API and a web interface to handle users if Postgres is chosen for storing credentials.

CNaaS NAC API reference.

CNaaS NAC Web interface


NI How-to guide
15.11.2022 14:35 CET Mikael Ottosson
Service Documentation
09.11.2022 15:25 CET Johan Marcusson
Transfer of personal data to CNaaS Graylog when using federated login
12.10.2022 13:58 CEST Kristofer Hallin
03.10.2022 11:12 CEST Mikael Ottosson
Modules / VMs
21.09.2022 11:04 CEST Johan Marcusson
Hardware options
21.09.2022 10:43 CEST Johan Marcusson
FW CNaaS and IP-VPN Service
01.07.2022 12:21 CEST Rikard Johansson
01.07.2022 12:14 CEST Rikard Johansson
01.07.2022 11:16 CEST Rikard Johansson
  • No labels