Equipement actuel :

  • Balrog : routeur du hackerspace (noeud tinc)
  • Shelob : paserelle par défaut (noeud tinc)
  • Pinkypie : serveur web etc. (noeud tinc)
  • Applejack : serveur IRC (noeud tinc)
  • Bilbo : switch de la pallette dans le salon
  • Morgoth : switch table
  • TP-Link archer 7 (sans-titre) : AP wifi

Topologie :

Topologie.png
Topologie

Topographie :

Topographie.png

Adresses IP :

LAN : 172.23.42.0/24

Equipement : ip locale ; ip publique (si existante)

  • Balrog : 172.23.42.254 ; 172.23.218.251 ; 164.15.25.201
  • Shelob : 172.23.218.248 ; 178.32.45.66
  • Pinkypie : 172.23.218.253 ; 164.15.0.2 (Donc aussi urlab.be)
  • Applejack : 172.23.218.249 ; 188.165.54.216
  • Frodon : 172.23.42.253
  • Morgoth : /
  • TP-Link archer 7 (sans-titre) : 172.23.42.199

Fonctionnement actuel :

  • Balrog est le routeur Gateway et serveur DHCP/DNS du 131.
  • Balrog fait du source-based-routing vers les noeuds tinc pour faire sortir le trafic internet du lan sur internet
  • Shelob fait le NAT
  • Balrog et Pinkypie obtiennent leur acces à internet par l'ULB ainsi que leur IP publique.
  • Shelob et Applejack obtiennent leur acces à internet par OVH ainsi que leur IP publique.
  • Toutes les machines n'étant pas physiquement présentes sur le réseau du 131 sont connectées par VPN (tun42) sur un subnet séparé.
  • Le DHCP est dnsmasq
  • Le logiciel VPN est tinc
  • Les distrib d'Applejack, Balrog, Shelob, Pinkypie est debian
  • Le firmware de Sauron est Cisco IOS 12.1
  • Le firmware de TP-Link archer 7 (sans-titre) est le firmware de base de TP-Link
  • dnsmasq résout sur 127.0.0.2 sur lequel se trouves : cloudflared
  • cloudflared est un deamon qui écoute sur 127.0.0.2 et résout en DNS over HTTPS

Management:

  • Pinkypie, Shelob, Applejack sont gèrés par Salt Stack
  • Belrog est managé par de gentils administrateurs d'UrLab
  • Sauron dispose d'un acces Telnet et d'un port Console a l'arrière
  • Bilbo dispose d'un acces Telnet et d'un port Console a l'arrière
  • TP-Link archer 7 (sans-titre) se gère entièrement par web GUI

Pamela

Pamela est en 2 parties : pamela-feeder qui doit être sur la machine qui fait dhcp/router (actuellement barlog) et qui push dans un redis (actuellement sur pinkypie) qui est ensuite lu par l'incubator (actuellement sur pinkypie).

Le code du feeder se trouve là bas : https://github.com/urlab/pamela-feeder

Il tourne sous le user pamela-feeder@barlog dont la home est /srv/pamela-feeder.

Le user pamela-feeder@barlog a besoin des droits sudo pour faire arp -a.

Pour améliorer la détection des machine sur le lan, on peut rajouter 2 cron (en root) qui sont :

  • */5 * * * * /bin/ip -s -s neigh flush all pour vider le cache arp et
  • */5 * * * * /usr/bin/nmap -sn 172.23.42.0-255 pour faire du trafic vers un peu toutes les machines.

Le script qui tourne en daemon tourne grâce à systemd et le service pamela-feeder.service (éditable dans /etc/systemd/system/pamela-feeder.service)

Le script crash au reboot ou en cas de chute de tinc. Il faut créer un systemd avec une dépendance sur le tinc.

Monitoring :

on a un smokeping ici

PXE Booting (ou booter linux mint via le réseau au lieu d'une clef) :

Technique :

  • Image de linux mint 18.3 cinnamon 64bit (la 19 ne start pas correctement en netboot)
  • tftpd-hpa
  • dnsmasq indique d'amorcer le pxelinux.0 sur balrog
  • le pxelinux.cfg/default indique de monter l'image par NFS pour accélérer les transferts

Utilisation :

  • Brancher le PC au réseau avec un CABLE (sauf pour les VM ou on peut le faire en wifi tant que l'interface est en mode bridge)
  • ouvrir le boot menu au démarrage du PC (comme pour booter sur une clef USB) mais en lui disant de booter sur le réseau (PXE-boot, network, Nvidia, realtek etc... tout ce qui n'est clairement pas de l'USB ou du SATA)
  • attendre
  • installer comme on le ferait sur une clef USB (ou utiliser en live pour des tests, tout les files seront remis comme avant)