Using Binaries
This guide explains how to install and configure Nauthilus using pre-compiled binary packages. This method is recommended for production environments where you want a straightforward installation process.
Binary Availability
Nauthilus binaries are available for various platforms:
- Linux (x86_64, ARM64)
- FreeBSD (x86_64)
- macOS (x86_64, ARM64)
You can download the latest release from the GitHub Releases page.
If binaries are not yet available for your platform, you can compile Nauthilus from source instead.
Installation Steps
1. Download the Binary
# Example for Linux x86_64
curl -LO https://github.com/croessner/nauthilus/releases/latest/download/nauthilus-linux-amd64.tar.gz
tar -xzf nauthilus-linux-amd64.tar.gz
2. Move the Binary to a System Directory
sudo mv nauthilus /usr/local/sbin/
sudo chmod +x /usr/local/sbin/nauthilus
3. Create a Dedicated User (Recommended)
For security reasons, it's recommended to run Nauthilus as a dedicated non-privileged user:
sudo useradd -r -s /bin/false nauthilus
4. Create Configuration Directory
sudo mkdir -p /etc/nauthilus
sudo chown nauthilus:nauthilus /etc/nauthilus
5. Create a Basic Configuration File
Create a file at /etc/nauthilus/nauthilus.yml
with your configuration. See the Configuration Reference for details.
Systemd Integration
For Linux systems using systemd, you can set up Nauthilus as a service for automatic startup and management.
Create a Systemd Unit File
Create the file /etc/systemd/system/nauthilus.service
:
[Unit]
Description=Central authentication server
After=network.target nss-lookup.target syslog.target
[Service]
Type=simple
EnvironmentFile=-/etc/sysconfig/nauthilus
ExecStart=/usr/local/sbin/nauthilus
Restart=on-failure
User=nauthilus
Group=nauthilus
[Install]
WantedBy=multi-user.target
Enable and Start the Service
sudo systemctl daemon-reload
sudo systemctl enable nauthilus
sudo systemctl start nauthilus
Check Service Status
sudo systemctl status nauthilus
Configuration Options
Nauthilus can be configured in multiple ways:
- YAML Configuration File: The primary method, using
/etc/nauthilus/nauthilus.yml
- Environment Variables: As shown in the environment file above
- Command-Line Flags: For overriding specific settings
See the Configuration Reference for a complete list of options.
Upgrading
To upgrade Nauthilus to a newer version:
- Download the new binary
- Replace the existing binary
- Restart the service:
sudo systemctl restart nauthilus
Troubleshooting
Checking Logs
View service logs:
sudo journalctl -u nauthilus
Common Issues
- Permission problems: Ensure the nauthilus user has access to the configuration directory
- Configuration errors: Verify your configuration file syntax
- Port conflicts: Check if another service is using the same port
Next Steps
After installation, you might want to: