Initial setup
Preparation
Section titled “Preparation”We will install in order:
- a machine (the administrator’s),
- a gateway and other machines in the same zone,
- the tailnet network (coordination server),
- other zones linked to our configuration.
Initial Installation
Section titled “Initial Installation”Creating a Zone
Section titled “Creating a Zone”A zone (subnet) consists of at least a gateway, behind which you can have as many computers as you want.
The Gateway
Section titled “The Gateway”A mini-computer that is always on, with at least 2 network interfaces (one ethernet connected to the ISP box and others that are part of the subnet - ethernet and wifi).
Client Checklist
Section titled “Client Checklist”If the installation is done remotely, here is the information to provide:
- Connect the gateway to the ISP box.
- Put the ISO (provided by the administrator) on a USB key 🡕 and connect it.
- Note the gateway IP address (visible via the ISO or in the box).
- In the ISP box interface, redirect port 22 to the gateway.
- The administrator can now access the gateway and install it.
- Finalize the installation: other devices, wifi, computers, local services.
Administrator Checklist
Section titled “Administrator Checklist”Coming soon…
Other Computers
Section titled “Other Computers”- Any computer, smartphone, tablet connected to the gateway network automatically becomes part of the network (VPN) and can access services with some configurations.
- Available PCs? Pre-configured Linux systems provide many programs and all software and services pre-configured for network users.
Creating a User Account
Section titled “Creating a User Account”3 Important Elements
Section titled “3 Important Elements”- The main password for vaultwarden 🡕, to open their vault.
- The IDM 🡕 authentication key to access all services.
- An additional password in IDM 🡕 in case of key loss.
Account Creation Steps
Section titled “Account Creation Steps”-
Create the system account
A user must have:
- an identifier (lowercase first name)
- an email address (at domain.tld preferably)
Add the user to the configuration file:
usr/config.yaml users:charlie:uid: 1003name: "Charlie"profile: "teenager"groups: ["kids-ag", "global"]Then generate, commit and apply the configuration.
-
Vaultwarden account
In the Vaultwarden administration interface, the previous user must be present (otherwise create it).
- Administrator: send an invitation.
- User: receives an email to enter their main password.
- Administrator: confirm the user in the interface.
-
On HCS (coordination server)
Enable the Kanidm account:
Fenêtre de terminal # Kanidm Onboarding -> transmit the link or qr-codekanidm person credential create-reset-token <login> --name idm_adminThen follow the steps for creating keys and passwords.
-
Bitwarden
Installing and configuring Bitwarden on browsers and smartphones will allow the new user to simplify access to their account and services.
-
Access to Services
SSO allows access to services with a single authentication. Access rules are defined by Kanidm claims.
Creating a Linux Machine
Section titled “Creating a Linux Machine”Creating a Linux machine is a quick operation.
Prerequisites:
- The cloud ISO image to generate with
just iso. - A machine declared in the configuration. Example:
hosts:- hostname: "bob-laptop" name: "Bob's Dell Laptop" zone: "main:2.2" profile: "laptop" groups: ["zone-main", "guests"] features: ["nfs-client"] mac: "f0:1f:af:13:62:23,bc:78:56:25:b8:57"Procedure:
- Burn the cloud ISO image to a USB key.
- Connect the computer to the network and boot from the key.
- Apply the system then restart without the key.
System Application:
# Replace with the machine IPjust full-install bob-laptop nix 10.1.2.34Connecting from Outside
Section titled “Connecting from Outside”To access all services (as well as shares) when not in a zone, a Tailscale VPN client is required. The administrator’s intervention is required for this configuration.
- Install the tailscale client (application).
- Request to join the
headscale.domaine.tldnetwork. - The administrator must then validate this access:
# Connect to the HCSjust enter hcs
# Method 1: create a temporary authentication key on user 1 (nix)# then connect the client with this key. This method allows# accepting several clients at once (reusable).sudo headscale preauthkeys create --reusable --expiration 1h --user 1
# Method 2: connect the client then activate its key.sudo headscale nodes register --key xxx --user nix