Réseau@elaboratoire

De Breizh-Entropy
Aller à la navigation Aller à la recherche

Architecture physique

Une première proposition pourrait ressembler à ça:

Elabo.png


Architecture logique

Adressage IP

  • Réseau: 10.42.0.0/20


    • Infrastructure : 10.42.0.0/23
      • Serveurs etc : 10.42.0.0 /24
        • Routeur: 10.42.0.1
        • Serveurs: 10.42.0.2-254
      • Reservé : 10.42.0.0 /24


    • Hackerspace : 10.42.2.0/23
      • Normal : 10.42.2.0/24
        • Routeur : 10.42.2.1
        • Clients : 10.42.3.2-254
      • Anonyme : 10.42.3.0/24
        • Routeur : 10.42.3.1
        • Clients : 10.42.3.2-254


    • 48 : 10.42.4.0/23
      • Normal : 10.42.4.0/24
        • Routeur : 10.42.4.1
        • Clients : 10.42.4.2-254
      • Anonyme : 10.42.5.0/24
        • Routeur : 10.42.5.1
        • Clients : 10.42.5.2-254


    • Chardonet : 10.42.6.0/23
      • Normal : 10.42.6.0/24
        • Routeur : 10.42.6.1
        • Clients : 10.42.6.2-254
      • Anonyme : 10.42.7.0/24
        • Routeur : 10.42.7.1
        • Clients : 10.42.7.2-254


    • Reservé: 10.42.8.0/23
      • Reservé: 10.42.8.0/24
      • Reservé: 10.42.9.0/24


    • Reservé: 10.42.10.0/23
      • Reservé: 10.42.10.0/24
      • Reservé: 10.42.11.0/24


    • Reservé: 10.42.12.0/23
      • Reservé: 10.42.12.0/24
      • Reservé: 10.42.13.0/24


    • Reservé: 10.42.14.0/23
      • Reservé: 10.42.14.0/24
      • Reservé: 10.42.15.0/24


  • DN42: 172.22.108.0/23
    • Infra: 172.22.108.0/24
      • Routeur: 172.22.108.1
        Réservé: 172.22.108.2-254
        TODO: /25 ?
    • Clients hackerspace: 172.22.109.0/24
      • Routeur: 172.22.109.1
      • Clients: 172.22.109.2-254

Topologie

  • 2 Vlan / SSIDs proposés sur le wifi:
    • 1 vlan pour les clients normaux
    • 1 vlan pour les clients anonymes.

Notes

  • Connexion anonyme via VPN toile-libre.
  • Accès IPv6 pour clients normaux.
  • Accès DN42 pour les clients normaux.
  • Chardonnet et 48 relié par pont wifi + VPN en backup (limité à 1Mb/s)
  • Pourquoi un/des serveur(s): Pour proposer quelques services, typiquement partage de fichier, boot réseaux vers des livecds etc
  • Pourquoi plein d'adresses reservées ? Pour prévoir une config un peu large permettant de ne pas avoir à tout casser en cas de nouveau besoin (typiquement, interco avec un autre site)

TODO

  • Documenter, documenter, documenter, documenter ...
  • Inventaire matos
  • Mise en place routeur
  • Mise en place premier AP wifi

Inventaire materiel

  • 1x Firebox x550: PC 1ghz 512 Mb ram 8 ports réseau
  • 1x poweredge 1950: PC 2x Xeon 3Ghz , 2 go de ram , 2x36Go SCSI.
  • 2x NSLU2

Configurations

Routeur 1

OS

Interfaces

auto lo
iface lo inet loopback

#infra normal etc
auto eth0
iface eth0 inet statis
    address 10.42.0.1
    netmask 255.255.255.0

# Hackerspace normal
auto eth2
iface eth2 inet statis
    address 10.42.2.1
    netmask 255.255.255.0

# Hackerspace anonyme
auto eth3
iface eth3 inet statis
    address 10.42.3.1
    netmask 255.255.255.0

# 48 normal
auto eth4
iface eth4 inet statis
    address 10.42.4.1
    netmask 255.255.255.0

# 48 anonyme
auto eth5
iface eth5 inet statis
    address 10.42.5.1
    netmask 255.255.255.0

# Chardonet normal
auto eth6
iface eth6 inet statis
    address 10.42.6.1
    netmask 255.255.255.0

# Chardonet anonyme
auto eth7
iface eth7 inet statis
    address 10.42.7.1
    netmask 255.255.255.0

IPv6

VPN

Firewall

(work in progress)

###########################################
#		FUNCTIONS
###########################################
ip46tables () {
    iptables $@
    ip6tables $@
}

###########################################
#		FILTER
###########################################

#################################
# RAZ
################################
ip46tables -F
ip46tables -X

#################################
# UTILITY
#################################

ip46tables -N LOGDROP
ip46tables -A LOGDROP -j LOG
ip46tables -A LOGDROP -j DROP

ip46tables -N LOGACCEPT
ip46tables -A LOGACCEPT -j LOG
ip46tables -A LOGACCEPT -j ACCEPT

#################################
# DEFAULT POLICY
#################################
ip46tables -P INPUT DROP
ip46tables -P FORWARD DROP
ip46tables -P OUTPUT ACCEPT

ip46tables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
ip46tables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

#################################
# CHAINS
#################################
ip46tables -N CLIENTS
ip46tables -N SERVEURS
ip46tables -N INTERNET 
ip46tables -N INTERNET6
ip46tables -N CLIENTS 
ip46tables -N CLIENTS_ANO
ip46tables -N VPN

ip46tables -A INPUT -i eth0 -j INTERNET
ip6tables -A INPUT -i 6in4 -j INTERNET6
ip46tables -A INPUT -i eth1 -j SERVEURS
ip46tables -A INPUT -i eth2 -j CLIENTS
ip46tables -A INPUT -i eth2 -j CLIENTS_ANO
ip46tables -A INPUT -i tap0 -j VPN

#################################
# INPUT DEPUIS INTERNET
#################################

ip46tables -A INTERNET -J LOGACCEPT
ip6tables -A INTERNET6 -J LOGACCEPT

#################################
# INPUT DEPUIS VPN
#################################

ip46tables -A VPN -J LOGACCEPT

#################################
# INPUT DEPUIS SERVEURS
#################################

ip46tables -A SERVEURS -J LOGACCEPT

#################################
# INPUT DEPUIS CLIENTS
#################################

ip46tables -A SERVEURS -J LOGACCEPT

#################################
# INPUT DEPUIS CLIENTS_ANO
#################################

ip46tables -A SERVEURS -J LOGACCEPT

#################################
# FWD DEPUIS INTERNET
#################################

ip46tables -A INTERNET -J LOGACCEPT
ip6tables -A INTERNET6 -J LOGACCEPT

#################################
# FWD DEPUIS VPN
#################################

ip46tables -A VPN -J LOGACCEPT

#################################
# FWD DEPUIS SERVEURS
#################################

ip46tables -A SERVEURS -J LOGACCEPT

#################################
# FWD DEPUIS CLIENTS
#################################

ip46tables -A SERVEURS -J LOGACCEPT

#################################
# FWD DEPUIS CLIENTS_ANO
#################################

ip46tables -A SERVEURS -J LOGACCEPT

DHCP

ddns-update-style none;
update-static-leases on;

option domain-name "@DOMAIN";
option domain-name-servers @DNSIP1, @DNSIP2;

default-lease-time 600;
max-lease-time 7200;

authoritative;
log-facility local7;

subnet 10.42.0.0 netmask 255.255.255.0 {
  option routers 10.42.0.1;

  pool {
     range 10.42.0.2 10.42.0.254;
  }
}

subnet 10.42.2.0 netmask 255.255.255.0 {
  option routers 10.42.2.1;

  pool {
     range 10.42.2.2 10.42.2.254;
  }
}

subnet 10.42.3.0 netmask 255.255.255.0 {
  option routers 10.42.3.1;

  pool {
     range 10.42.3.2 10.42.3.254;
  }
}

subnet 10.42.4.0 netmask 255.255.255.0 {
  option routers 10.42.4.1;

  pool {
     range 10.42.4.2 10.42.4.254;
  }
}

subnet 10.42.5.0 netmask 255.255.255.0 {
  option routers 10.42.5.1;

  pool {
     range 10.42.5.2 10.42.5.254;
  }
}

subnet 10.42.6.0 netmask 255.255.255.0 {
  option routers 10.42.6.1;

  pool {
     range 10.42.6.2 10.42.6.254;
  }
}

subnet 10.42.7.0 netmask 255.255.255.0 {
  option routers 10.42.7.1;

  pool {
     range 10.42.7.2 10.42.7.254;
  }
}

DNS

 apt-get install bind 

Serveur

Samba

NFS

FTPD

TFTP