major rework

This commit is contained in:
Yann Verry 2022-04-24 16:03:30 +02:00
parent c96aef4500
commit 79b935e5b0
Signed by: yann
GPG key ID: EB9E679A66B8C7A1
48 changed files with 41 additions and 209 deletions

View file

@ -0,0 +1,84 @@
+++
author = "Yann Verry"
categories = ["ipv6", "network"]
date = 2020-05-23T14:36:58Z
description = ""
draft = false
image = "__GHOST_URL__/content/images/2020/05/fbxserver_v6.jpg"
slug = "freebox-et-ipv6"
tags = ["ipv6", "network"]
title = "Freebox et IPv6 un firewall binaire"
+++
Free via sa freebox est de loin l'équipement qui en france propose pour le _grand public_ le plus grand support d'ipv6. En effet il est possible de router des prefix (jusqu'à 8) très facilement.
Si comme moi vous héberger beaucoup de chose chez vous vous avec le support d'IPv6 actif il vous faut donc un vrai firewalling. Ce que malheureusement la freebox ne propose pas. Actuellement il est binaire: c'est tout rentre et firewall sur chaque machine ou tout est bloqué sans règle possible à faire pour le traffic entrant.
C'est donc gênant, très gênant !
Plusieurs solution possible, voici la mienne.
## Je suis ton routeur
On va donc faire sois même le boulot. Si vous auto-héberger des choses c'est qu'une machine tourne H24 chez vous. Il est donc possible de transformer votre serveur en routeur pour la partie ipv6. Si la machine tombe, l'ipv6 est HS mais le reste en v4 continue de fonctionner (et c'est important pour le [WAF](https://en.wikipedia.org/wiki/Wife_acceptance_factor)).
Tout d'abord on récupère son IPv6 de lien local (quelque chose en fe80:: qui est en [EUI-64](https://en.wikipedia.org/wiki/MAC_address) donc lié à votre MAC). Une fois récupéré se rendre dans l'interface de FreeboxOS, paramètre de la Freebox >> Configuration IPv6 :
{{< figure src="__GHOST_URL__/content/images/2020/05/fbx_ipv6-1.png" caption="Freebox IPv6 setup" >}}
Bien conserver l'ipv6 du lien local de la freebox, car votre serveur passe lui en static.
## Préparation de l'OS
Il faut comme tout routeur indiquer au kernel qu'il va router des paquets. Pour cela ajouter dans sysctl.conf la directive :
```
net.ipv6.conf.all.forwarding=1
```
Comme la doc l'indique cela supprime aussi l'acceptation des advertisements router. Ca tombe bien il faut aussi fixer de manière static votre configuration réseau. Sous debian par exemple j'ai :
```
iface <mon interface>
inet6 static
address 2a01:e0a:<une ip de mon prefix>
netmask 64
gateway fe80::<l'ip de ma freebox>
```
Il ne faut surtout pas prendre :1 en IP car celle-ci est utilisé par la freebox.
## Eh bien annoncé maintenant !
La freebox n'annonce donc plus le subnet ipv6, il faut donc le faire. Pour cela installer radvd pour _Router Advertisement Daemon._ de votre OS préféré.
```
interface <votre interface> {
AdvSendAdvert on;
AdvDefaultPreference high;
RDNSS 2001:910:800::12 {};
prefix <votre prefix>::/64 {
AdvOnLink on;
AdvAutonomous on;
};
};
```
Dans cette exemple il faut indiquer l'interface réseau ou annoncer, votre prefix et dans la section RDNSS indiquer un serveur récursif (ici celui de FDN).
Activer radvd au boot puis le daemon et voila ! vous avez reproduis ce que fais la freebox mais c'est votre machine qui route les paquets. La priorité est défini à "high" car il y a un [bug](https://dev.freebox.fr/bugs/task/19192) côté freebox qui continue à annoncer sans prefix.
## Firewall
Tout le traffic passe enfin par votre machine, il est donc facile d'activer du firewalling iptables tout ce qu'il y a de plus classique. Bien utiliser les paquets prévu pour:
```
apt install netfilter-persistent iptables-persistent
```
Tout s'éffectue dans la table **FORWARD**.
Enjoy it!

View file

@ -0,0 +1,65 @@
+++
author = "Yann Verry"
categories = ["vpn", "network"]
date = 2020-10-06T07:57:23Z
description = ""
draft = false
image = "__GHOST_URL__/content/images/2020/04/raspi_web_server_02.jpg"
slug = "une-freebox-en-remote-avec-du-vxlan-sur-vpn"
summary = "Serveur vxlan"
tags = ["vpn", "network"]
title = "Seconde partie: Une Freebox en remote avec du VxLAN sur vpn"
+++
Nous revoilà pour configurer notre serveur afin de rendre disponible à nos client le réseaux nécessaire à la freebox.
## VPN: Wireguard
Il vous faut setup un vpn wireguard fonctionnel. Il est possible de faire du vxlan directement sur le WAN (l'internet des chats) mais un vpn sécurisé c'est quand même le minimum.
La seul particularité est d'avoir un subnet pour notre VPN qui n'overlap (toujours) pas les réseaux utilisé, à savoir 192.168.0.0/24 et 192.168.1.0/24.
## VxLAN
Enfin on attaque les vxlan, maintenant que nous avons un vpn fonctionnel
serverside:
```
ip link add vxlan101 type vxlan id 101 local 172.16.42.4 srcport 10101 10101 remote 172.16.42.1 dstport 10101
ip link add link eth0 name eth0.101 type vlan id 101
```
On ajoute dans le bridge:
```
brctl addbr br101
brctl addif br101 vxlan101 eth0.101
```
clientside
```
ip link add vxlan101 type vxlan id 101 local 172.16.42.4 srcport 10101 10101 remote 172.16.42.1 dstport 10101
ip link add link eth0 name eth0.101 type vlan id 101
```
On ajoute dans le bridge:
```
brctl addbr br101
brctl addif br101 vxlan100 eth0.101
```
## Persistance
Si vous avez une version "récente" de systemd, il est possible de faire tout cela via systemd