Repository navigation
Home
Welcome to the Krampus wiki!
Krampus is a Python sync server for Santa. Krampus is written with modularity in mind, meaning the server can work with different database backends. Currently implemented are integrations for Postgres, MySQL and Firestore.
To use Krampus, you must first setup and run the Krampus server. Server setup is described in depth here, with example configurations found here. Once you have Krampus up and running, Santa clients will be able to perform syncs, but they won't get any rules or host configurations until you've added some to the database. To this end, you can use krampusctl to apply YAML files containing your rules and host configurations to the Krampus server. Usage of the krampusctl tool is described here.
The bare minimum Santa configuration profile keys you'll need to set for Krampus are as follows:
<dict>
<key>SyncBaseURL</key>
<string>https://my.sync.server/</string>
</dict>However, this assumes that you have no authentication set up, and that you're also not passing the machine owner through to Krampus. A more complete setup (with a machine owner variable pushed from your MDM, and Krampus sync authentication) looks like this:
<dict>
<key>MachineOwner</key>
<string>$USERNAME</string>
<key>SyncBaseURL</key>
<string>https://my.sync.server/</string>
<key>SyncExtraHeaders</key>
<dict>
<key>Krampus-Auth</key>
<string>MySyncSecret</string>
</dict>
</dict>