No description
Find a file
Andreas B. Mundt aa8bc09ce6 Implement time stamp and improve reporter syntax.
The directory access time used so far is modified on every
ansible run and independent of the ansible module/playbook.
2024-01-16 11:59:18 +01:00
host_vars Fix some ansible-lint complaints. 2023-02-07 19:17:53 +01:00
roles Implement time stamp and improve reporter syntax. 2024-01-16 11:59:18 +01:00
tools Implement time stamp and improve reporter syntax. 2024-01-16 11:59:18 +01:00
cloudbox.yml kerberize nextcloud 2023-08-11 18:16:04 +02:00
edubox.yml Generate more containers. 2023-02-07 19:18:57 +01:00
fvs-desktop.yml Fix renamed role. 2023-02-07 19:18:57 +01:00
fvs-home-server.yml Fix renamed role. 2023-02-07 19:18:57 +01:00
fvs-homex-server.yml Implement home exam server. 2023-02-07 19:18:57 +01:00
fvs-vm-server.yml Fix renamed role. 2023-02-07 19:18:57 +01:00
fvs-www-server.yml Fix renamed role. 2023-02-07 19:18:57 +01:00
installbox.yml Rename some roles to make ansible-lint happy. 2023-02-07 19:18:57 +01:00
installbox6.yml Experimental IPv6 installbox. 2023-02-07 19:18:57 +01:00
inventory.yml host added 2024-01-15 10:53:03 +01:00
kerberox-client.yml Rename some roles to make ansible-lint happy. 2023-02-07 19:18:57 +01:00
kerberox.yml Fix kerberox. 2023-02-07 19:18:57 +01:00
kiosk.yml Rename some roles to make ansible-lint happy. 2023-02-07 19:18:57 +01:00
livebox.yml Find latest ISO images automatically. 2023-02-07 19:18:57 +01:00
lmn-client.yml Implement time stamp and improve reporter syntax. 2024-01-16 11:59:18 +01:00
lmn-teacher.yml Fix unattended-upgrades. 2023-10-04 13:42:01 +02:00
lmn-vault printerservers vaulted 2023-11-09 16:51:09 +01:00
minimal-krb5.yml Fix renamed role. 2023-02-07 19:18:57 +01:00
minimal.yml Fix renamed role. 2023-02-07 19:18:57 +01:00
README Fix sambox-client. 2023-02-07 19:18:57 +01:00
README.kerberox Fix kerberox. 2023-02-07 19:18:57 +01:00
sambox-client.yml Rename some roles to make ansible-lint happy. 2023-02-07 19:18:57 +01:00
sambox.yml Fix sambox. 2023-02-07 19:18:57 +01:00

        Run Debian in your Local Area Network
       =======================================

The goal of the "Debian Local Area Network"-project is to make setting
up Debian in a local area network as easy as possible.  This repository
offers ansible playbooks and instructions for the following machines:

 • installbox:  orchestration of automatic installs in the LAN
     - set up as gateway to some external network (WAN)
     - provides TFTP installations on the LAN interface
     - automatic installs: preseeding and ansible playbooks
     - package cache

 • kerberox:  serving a minimalistic kerberized LAN
     - automatic TFTP installation of clients
     - centralized home directories on kerberized NFS
     - simple script to manage users and machines

 • kerberox-client:  the client for the kerberized LAN

 • sambox and -client:  comparable to the kerberox setup, but
   home directories are shared via sshfs or the smb protocol. 

 • cloudbox:  nextcloud server in the basement
     - setup of a home cloud server
     - dynamic DNS name
     - nextcloud
     - backup with borg
     - …

 • kiosk:  school's computer, hackerspace, …
     - auto login user
     - reasonable defaults
     - temporary home directory on tmpfs, reset at boot

 • edubox:  deploy a set of containers for training/teaching

Contributions like patches, suggestions, pull requests and/or further
profiles are highly appreciated!

----------------------------

 Instructions
==============

Installbox
~~~~~~~~~~
 • standard Debian installation:
   - user 'ansible' in sudo group
   - WAN interface configured and connected
   - LAN interface not configured/managed

 • optional:  customize installbox.yml

 • run ansible:
     ssh-copy-id ansible@1.2.3.4
     ansible-playbook installbox.yml -v --become --ask-become-pass -u ansible -i 1.2.3.4,

 • the installbox can be used to install all other profiles

Kerberox, Sambox
~~~~~~~~~~~~~~~~
 • standard Debian installation:
   - user 'ansible' in sudo group
   - WAN interface configured and connected
   - LAN interface not configured/managed

 • optional:  customize kerberox.yml

 • run ansible:
     ssh-copy-id ansible@1.2.3.4
     ansible-playbook kerberox.yml -v --become --ask-become-pass -u ansible -i 1.2.3.4,

Kerberox and installbox provide a local ansible configuration space
which can be used to install clients and/or to check/modify the local
installation.  To do the latter, cd into 'debian-lan' and run:

   'ansible-playbook --ask-become-pass -v  -i localhost, -c local  kerberox.yml'

The kerberox-clients are automatically installed using the included TFTP netboot
installer within the LAN.

Cloudbox
~~~~~~~~
 • Debian installation:
   - user 'ansible' in sudo group

 • check/customize cloudbox.yml

 • download latest nextcloud-*.*.*.tar.bz2 archive and place it as nextcloud.tar.bz2
   in your debian-lan-ansible directory

 • run ansible:
     ssh-copy-id ansible@1.2.3.4
     ansible-playbook cloudbox.yml -v --become --ask-become-pass -u ansible -i 1.2.3.4,

 • use 'nc-admin' with password in '/root/nc-admin.pwd' to log into nextcloud.

Kiosk
~~~~~
 • Debian installation:
   - user 'ansible' in sudo group

 • customize kiosk.yml:
   - WiFi parameters
   - package selection: extra_pkgs and extra_pkgs_bpo for backports
   - desktop environment

 • run ansible:
     ssh-copy-id ansible@1.2.3.4
     ansible-playbook kiosk.yml -v --become --ask-become-pass -u ansible -i 1.2.3.4,

Edubox
~~~~~~
 • Debian installation:
   - user 'ansible' in sudo group

 • customize edubox.yml

 • run ansible:
     ssh-copy-id ansible@1.2.3.4
     ansible-playbook edubox.yml -v --become --ask-become-pass -u ansible -i 1.2.3.4,