No description
Find a file
Andreas B. Mundt b920bdf52b Provide playbook and role to deploy containers.
The containers are deployed for educational purposes with
user 'ansible' in the sudo group and an empty password.
SSH login is available via ports 10000 upwards on the host.
Port 80 is forwarded as well (ssh port + 100).
The container's rootfs is read only with an overlay:  After
restart of the container, modifications are lost.
2023-02-07 19:15:50 +01:00
host_vars Add host-specific variables for backup dirs and options. 2020-01-21 15:41:11 +01:00
roles Provide playbook and role to deploy containers. 2023-02-07 19:15:50 +01:00
cloudbox.yml Combined playbook for cloudboxes and separate (nextcloud) hosts. 2023-02-07 19:15:50 +01:00
edubox.yml Provide playbook and role to deploy containers. 2023-02-07 19:15:50 +01:00
fvs-desktop.yml Add packages. 2022-03-13 10:27:15 +01:00
fvs-home-server.yml Clean up FvS playbooks and add VM server playbook. 2021-10-14 19:25:27 +02:00
fvs-vm-server.yml Prepare shared directory for ISO images. 2022-03-13 10:27:57 +01:00
fvs-www-server.yml Web server playbook. 2021-10-20 17:11:06 +02:00
installbox.yml Improved DHCP configuration, no static IP addresses. 2019-11-29 14:38:07 +01:00
kerberox-client.yml Fix for missing 'python-apt' package. 2023-02-07 19:15:50 +01:00
kerberox.yml Restructuring/renaming DNS, DHCP, TFTP and netboot installer. 2023-02-07 19:15:50 +01:00
kiosk.yml Use provided ansible variable to determine debian release. 2019-11-24 21:08:08 +01:00
minimal-krb5.yml Implement basic LAN client. 2019-11-20 20:41:52 +01:00
minimal.yml Add minimal role to test only preseeding. 2019-10-20 17:20:37 +02:00
README Minor improvements, nextcloud maintenance task. 2020-02-29 18:26:20 +01:00
README.kerberox Add README to explain the deployment of the keytabs. 2023-02-07 19:15:50 +01:00
sambox-client.yml Draft implementation of sambox-client. 2023-02-07 19:15:50 +01:00
sambox.yml Restructuring/renaming DNS, DHCP, TFTP and netboot installer. 2023-02-07 19:15:50 +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

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

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

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
~~~~~~~~
 • 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.

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,

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.