Comment se débarasser de la livebox Orange sur l’offre fibre ?

Suivez le lien

Posted in Uncategorized | Tagged | Comments Off

MES pebkac

Ah les aventures formidables du bureau …

http://www.pebkac.fr/pebkac-584.html

http://www.pebkac.fr/pebkac-477.html

http://www.pebkac.fr/pebkac-510.html

http://www.pebkac.fr/pebkac-520.html

http://www.pebkac.fr/pebkac-537.html

http://www.pebkac.fr/pebkac-548.html

http://www.pebkac.fr/pebkac-578.html

http://www.pebkac.fr/pebkac-641.html

http://www.pebkac.fr/pebkac-640.html

Posted in Lolo's life, Uncategorized | Tagged | Comments Off

Ah… le fonctionnement impeccable du réseau Completel

Aujourd’hui, comme assez souvent depuis plus de 3 mois, je vois que certaines destinations réseau ne sont pas joignables via notre fibre Completel (1700€/HT pour 20Mb symetriques tout de même).

J’appelle le support qui reconnait un incident majeur. Je demande un écrit …. que je n’obtiendrai jamais.

Mon ticket d’incident est cloturé….la raison en est ‘TT01 Aucun défaut’.

Soit…

Je rappelle, demande à parler à une personne compétente, et on m’explique alors que notre traffic passe par Nanterre et que comme nanterre rencontre un problème, et bah …. on est impactés.

Les équipes techniques basculent le traffic sur un autre routeur …. qui ne tient pas la charge…

Qui a dit que Completel était un opérateur fiable disposant de redondance d’éléments actifs sur son réseau ?

Completel, encore merci de me faire passer des journées hyper productives à appeler le 0 800 57 57 57 en me demandant quel sera mon n° de ticket.

Aller, 2009021900001….non, à cette heure c’est du genre 2009021900567…

Posted in Debian, Uncategorized | Tagged | Comments Off

Passerelle Haute dispo sous OpenBSD

OpenBSD c’est bien, mangez en, enfin, installez le.

Je serai presque devenu barbu.

Passons aux choses sérieuses:

Les contraintes:
- Passrelle redondante (carp)
- Firewall performant (pf)
- Connexion WAN redondante (ifstated)
- Gestion de VPN (IPSEC et/ou SSL) (racoon, openvpn)
- Alerte par mail en cas de défaillance d’un ISP (postfix)
- Partage de la table d’etat des connexions entre les 2 machines (pfsync)

Nous commençons par l’installation d’OpenBSD sur 2 machines de test (avant mise en prod sur des serveurs dignes de ce nom).

Ces machines sont des dc7700 de chez hp.

Un bug dans la gestion ACPI empeche une installation par défaut d’OpenBSD (comme linux d’ailleurs).

Au boot, nous allons donc désactiver l’acpi


boot -c
>disable acpi
>quit

Nous pouvons installer OpenBSD sans problème …. enfin presque… il est nécessaire de choisir un miroir http ou ftp pour ne pas faire échouer l’installation car le CD-Rom n’est pas très bien pris en charge.

Au reboot, à la fin de l’installation, il ne faut pas oublier de désactiver, à nouveau, l’acpi

Une fois la machine bootée nous modifions le kernel pour que cette modification soit prise en compte lors du boot

# config -e -o bsd.new /bsd
>disable acpi
>quit
#cp bsd.new /bsd && reboot

Il faudra procéder à une installation identique sur la 2eme machine.

Ces 2 machines s’appelleront fw-001 et fw-002
Les adresses ip seront:
fw-001:

192.168.0.192 pour em0
192.168.0.140 pour carp0
212.0.0.3 pour carp1
213.0.0.3 pour carp2
212.0.0.1 pour fxp0 (ISP1)
213.0.0.1 pour ste0 (ISP2)

fw-002:

192.168.0.193 pour em0
192.168.0.140 pour carp0
212.0.0.3 pour carp1
213.0.0.3 pour carp2
212.0.0.2 pour fxp0 (ISP1)
213.0.0.2 pour ste0 (ISP2)

Configurons les interfaces de fw-001:
Contenu de /etc/hostname.carp0

inet 192.168.0.140 255.255.255.0 192.168.0.255 vhid 1 carpdev em0 pass youpilesamis

Contenu de /etc/hostname.carp1

inet 212.0.0.3 255.255.255.0 212.0.0.255 vhid 2 carpdev fxp0 pass youpilesamiswan

Contenu de /etc/hostname.carp2

inet 213..0.0.3 255.255.255.0 213.0.0.255 vhid 3 carpdev ste0 pass youpilesamisnm

Contenu de /etc/hostname.fxp0

inet 212.0.0.1 255.255.255.0 212.0.0.255 description WAN-001
! route add default 212.0.0.254 -mpath

Contenu de /etc/hostname.em0

inet 192.168.0.192 255.255.255.0 192.168.0.255 description LAN-001

Contenu de /etc/hostname.pfsync0

up syncdev ste2

Contenu de /etc/hostname.ste0

inet 213.0.0.1 255.255.255.0 213.0.0.255 description WAN-001
! route add default 213.0.0.254 -mpath

Configurons les interfaces de fw-002:
Contenu de /etc/hostname.carp0

inet 192.168.0.140 255.255.255.0 192.168.0.255 vhid 1 carpdev em0 advskew 100 pass youpilesamis

Contenu de /etc/hostname.carp1

inet 212.0.0.3 255.255.255.0 212.0.0.255 vhid 2 carpdev fxp0 advskew 100 pass youpilesamiswan

Contenu de /etc/hostname.carp2

inet 213..0.0.3 255.255.255.0 213.0.0.255 vhid 3 carpdev ste0 advskew 100 pass youpilesamisnm

Contenu de /etc/hostname.fxp0

inet 212.0.0.2 255.255.255.0 212.0.0.255 description WAN-002
! route add default 212.0.0.254 -mpath

Contenu de /etc/hostname.em0

inet 192.168.0.193 255.255.255.0 192.168.0.255 description LAN-002

Contenu de /etc/hostname.pfsync0

up syncdev ste2

Contenu de /etc/hostname.ste0

inet 213.0.0.2 255.255.255.0 213.0.0.255 description WAN-002
! route add default 213.0.0.254 -mpath

Note: Il est imperatif de laisser /etc/mygate vide afin de ne pas avoir une seule et unique route vers le WAN.

Il est temps de lancer les connexions réseau:

#sh /etc/netstart

Nous pouvons pinguer l’exterieur, mais les machines de l’exterieur ne peuvent pas pinguer notre passerelle de manière fiable (probleme de reverse path).

Nous allons donc créer une conf pf afin de regler ce problème:


#Variables
#192.168.0.1 -> 254
lan_net = "192.168.0.0/24"
#Interfaces LAN + 2WAN
int_if = "em0"
ext_if1 = "fxp0"
ext_if2 = "ste0"
#Gateway wan 1
ext_gw1 = "212.0.0.254"
#Interface de synchro carp
sync_carp = "ste2"
#Loopback
loopback_if = "lo0"
#Adresses carp (flottantes)
ext_carp1 = "212.0.0.3"
ext_carp2 = "213.0.0.3"
ext_gw2 = "213.0.0.254"
admin_net = "{ VOS IP DES MACHINES POUVANT FAIRE DU SSH }"
admin_ports = "{ 22, 1022 }"
#DNS de mon LAN
dns_servers = "{ 192.168.0.1/32, 192.168.0.2/31 }"

#Ne rien filtere ni sur lo0 ni sur l'interface de synchro (cable croisé)
set skip on {$loopback_if, $sync_carp}

#On normalise les paquets entrants par le WAN (1+2)
scrub log on {$ext_if1, $ext_if2} all random-id min-ttl 254 max-mss 1452 reassemble tcp fragment reassemble

#On autorise les machines du LAN à sortir sur internet en NAT (Attention cette pratique est déconseillée pour des machines Windows)
nat on $ext_if1 from $lan_net to any -> $ext_carp1
nat on $ext_if2 from $lan_net to any -> $ext_carp2

#Policy par défaut
#On bloque tout ce qui n'a pas été autorisé
block in log from any to any
block out log from any to any

#On autorise pfsync et carp à communiquer sur les interfaces voulues
pass quick on { $sync_carp } proto pfsync keep state (no-sync)
pass on { $ext_if1 $ext_if2 $int_if } proto carp keep state

#Pour transmettre les paquets de la passerelle au LAN
pass out on $int_if from any to $lan_net

#Paquets pour la passerelle
pass in quick on $int_if from $lan_net to $int_if

#Sortie sur wan1, puis wan2, puis wan1, ...
#NAT -> Sortie
# en TCP
pass in on $int_if route-to \
{ ($ext_if1 $ext_gw1), ($ext_if2 $ext_gw2) } round-robin \
proto tcp from $lan_net to any flags S/SA modulate state

# en UDP + ICMP
pass in on $int_if route-to \
{ ($ext_if1 $ext_gw1), ($ext_if2 $ext_gw2) } round-robin \
proto { udp, icmp } from $lan_net to any keep state

# On autorise les requetes DNS et les connexions de la passerelle vers le LAN
pass out quick on $int_if inet proto { tcp, udp } to $dns_servers port domain keep state
pass out quick on $int_if inet proto tcp to $lan_net port ssh keep state

# Permet de pinguer la passerelle de l'exterieur sur ses 2 interfaces et avoir un chemin de retour cohérent
pass in on $ext_if1 reply-to ($ext_if1 $ext_gw1) inet proto icmp icmp-type {echoreq, echorep} keep state
pass in on $ext_if2 reply-to ($ext_if2 $ext_gw2) inet proto icmp icmp-type {echoreq, echorep} keep state

#Administration distante (SSH)
pass in on $ext_if1 reply-to ($ext_if1 $ext_gw1) inet proto tcp from $admin_net port $admin_ports keep state
pass in on $ext_if2 reply-to ($ext_if2 $ext_gw2) inet proto tcp from $admin_net port $admin_ports keep state

# Regles de sortie de la passerelle
pass out on $ext_if1 proto icmp keep state
pass out on $ext_if2 proto icmp keep state
pass out on $ext_if1 proto {tcp, udp} keep state
pass out on $ext_if2 proto {tcp, udp} keep state

Une fois ce fichier créé, il faut activer pf:

#pfctl -f /etc/pf.conf && pfctl -e

Il faudra répliquer ces opération sur la 2eme machine.

Il est important de modifier certaines valeurs de /etc/sysctl.conf

net.inet.ip.forwarding=1
net.inet.carp.allow=1 # Allow the firewall to accept CARP packets
net.inet.ip.multipath=1 # MultiPath
net.inet.carp.preempt=1 # 1=Enable carp(4) preemption

…et /etc/rc.conf.local

netd=NO
pf=YES
pflog_enable=YES

Une fois ces opérations faites et les machines rebootées, tout doit fonctionner.

C’est bien beau tout ça, mais si une connexion WAN “tombe” nous routons toujours en round robin vers les 2 connexions.

Il faut donc détecter cette défaillance.

Nous utiliserons pour cela le demon ifstated
Contenu de /etc/ifstated.conf

ext1_connectivity = '( "ping -q -c 1 -w 1 myexternal_host > /dev/null" every 3)'
ext2_connectivity = '( "ping -q -c 1 -w 1 my2ndexternal_host > /dev/null" every 3)'

state ext1ok_ext2ok {
init {
run "logger C1OK C2OK"
run "route delete default 212.0.0.254 -mpath"
run "route delete default 213.0.0.254 -mpath"
run "route add default 212.0.0.254 -mpath"
run "route add default 213.0.0.254 -mpath"
run "cd /etc/pf && ln -fs pf.conf_ok_ok pf_state.conf"
run "cd /etc/pf && ln -fs pf_nat_state.conf_ok_ok pf_nat_state.conf"
run "pfctl -f /etc/pf.conf"
}
if $ext1_connectivity && ! $ext2_connectivity {
set-state ext1ok_ext2nok
}
if ! $ext1_connectivity && $ext2_connectivity {
set-state ext1nok_ext2ok
}
if ! $ext1_connectivity && ! $ext2_connectivity {
set-state ext1nok_ext2nok
}
}

state ext1ok_ext2nok {
init {
run "logger C OK -- C N-OK"
run "route delete default 212.0.0.254 -mpath"
run "route delete default 213.0.0.254 -mpath"
run "route add default 212.0.0.254 -mpath"
run "cd /etc/pf && ln -fs pf.conf_ok_nok pf_state.conf"
run "cd /etc/pf && ln -fs pf_nat_state.conf_ok_nok pf_nat_state.conf"
run "pfctl -f /etc/pf.conf"
}

if $ext1_connectivity && $ext2_connectivity {
set-state ext1ok_ext2ok
}

if ! $ext1_connectivity && $ext2_connectivity {
set-state ext1nok_ext2ok
}

if ! $ext1_connectivity && ! $ext2_connectivity {
set-state ext1nok_ext2nok
}

}

state ext1nok_ext2ok {
init {
run "logger Completel C NOK -- C OK"
run "route delete default 212.0.0.254 -mpath"
run "route delete default 213.0.0.254 -mpath"
run "route add default 213.0.0.254 -mpath"
run "cd /etc/pf && ln -fs pf.conf_nok_ok pf_state.conf"
run "cd /etc/pf && ln -fs pf_nat_state.conf_nok_ok pf_nat_state.conf"
run "pfctl -f /etc/pf.conf"
}

if $ext1_connectivity && $ext2_connectivity {
set-state ext1ok_ext2ok
}

if $ext1_connectivity && ! $ext2_connectivity {
set-state ext1ok_ext2nok
}

if ! $ext1_connectivity && ! $ext2_connectivity {
set-state ext1nok_ext2nok
}
}

state ext1nok_ext2nok {
init {
run "logger N-OK -- N-OK"
run "route delete default 212.0.0.254 -mpath"
run "route delete default 213.0.0.254 -mpath"
run "route add default 212.0.0.254 -mpath"
run "route add default 213.0.0.254 -mpath"
run "cd /etc/pf && ln -fs pf.conf_nok_nok pf_state.conf"
run "cd /etc/pf && ln -fs pf_nat_state.conf_nok_nok pf_nat_state.conf"
run "pfctl -f /etc/pf.conf"
}

if $ext1_connectivity && $ext2_connectivity{
set-state ext1ok_ext2ok
}

if $ext1_connectivity && ! $ext2_connectivity {
set-state ext1ok_ext2nok
}

if ! $ext1_connectivity && $ext2_connectivity {
set-state ext1nok_ext2ok
}

}


Les 4 blocs state ext… correspondent aux 4 états possibles des 2 connexions:
- Up + Up
- Up + Down
- Down + Up
- Down + Down

Nous avons donc maintenant une passerelle redondante faisant de la NAT du CARP, du PFSYNC (synchronisation des tables du firewall).

Reste à ajouter les VPN, un proxy pour les postes du LAN

Posted in Firewall, OpenBSD | Comments Off

Mauvais développement ….? non !!!

http://www.allianceplus-vitrerie.com/admin/tri.php?table=uluru_rubriques&titre=titre_fr&ou1=&ou2=&ordre=desc&id=3

http://www.heroeslegend.com/admin/tri.php?table=uluru_rubriques&titre=titre_fr&ou1=&ou2=&ordre=asc&id=1

Posted in Uncategorized | Comments Off

La 3G c’est le pieds ;)

www.3615mavie.com… je sais

Tout ça pour dire, la 3G c’est terrible en illimité dans le train.

J’ai copié de la musique et quelques films avant de partir, seulement…. je les ai placés dans /tmp, donc au boot de la machine, hop, plus de musique ni de films.

Je me dis, c’est pas si grave, j’ai une carte 3G.

Je lance deezer sans grande conviction… et là je suis agréablement surpris. Juste une coupure de quelques secondes dans le flux.

La 3G, en illimité, c’est tout bon ;)

Posted in Debian, Lolo's life | Comments Off

Bridger une interface réseau sous VirtualBox

VirtualBox est tres pratique pour lancer windows depuis une machine
linux (par exemple).

Problème: L’interface réseau est nattée, il est donc impossible
d’établir une connexion directe vers la machine invitée (ici Windows).

La solution: Bridger l’interface utilisée par VirtualBox et la carte
réseau de la machine hote (eth0 ici).

Comment faire:

donald:~# apt-get install uml-utilities bridge-utils

editer /etc/network/interfaces

La section eth0 est à présent comme suit:
auto eth0
iface eth0 inet manual

Nous avons une nouvelle interface (tap1) pour les machines virtuelles:
auto tap1
iface tap1 inet manual
pre-up tunctl -d tap0
pre-up tunctl -u lcaron

(N’oubliez pas de remplacer lcaron par votre login)

Et enfin le bridge qui lui prend l’ancienne @IP d’eth0

auto bridge0
iface bridge0 inet dhcp
post-up chmod ugo+rw /dev/net/tun
bridge-ports eth0 tap0
bridge-ageing 7200
bridge-fd 0

donald:~# /etc/init.d/networking restart

Dans les préférences de la machine virtuelle sous VirtualBox, Activer
l’adaptateur réseau, l’attacher à l’adaptateur réseau hôte, dans le nom
de l’interface, indiquer tap0

Votre machine virtuelle est à présent joignable sur une @IP de la même
classe que le système hote.

Posted in Debian, Tips | Comments Off

Lolo en amérique

Oui, oui, ça faisait longtemps….dans le genre 36 15 MyLife.com ;)
Un peu comme les visiteurs, je reviens d’amérique.

Yippi.

Comme promis, les photos:

img_2057.JPGimg_2065.JPGimg_2067.JPGimg_2069.JPGimg_2071.JPG

img_2077.JPGimg_2078.JPGimg_2087.JPGimg_2114.JPGimg_2118.JPG

img_2123.JPGimg_2125.JPGimg_2126.JPGimg_2128.JPGimg_2131.JPG

img_2143.JPGimg_2170.JPGimg_2189.JPGimg_2202.JPGimg_2210.JPG

img_2213.JPGimg_2215.JPGimg_2229.JPGimg_2230.JPGimg_2231.JPG

img_2232.JPGimg_2252.JPGimg_2258.JPGimg_2268.JPGimg_2271.JPG

img_2280.JPGimg_2290.JPGimg_2312.JPGimg_2385.JPGimg_2415.JPG

Posted in Lolo's life | Comments Off

Prison Break

18662406.jpg

Michael Scofield s’engage dans une véritable lutte contre la montre : son frère Lincoln est dans le couloir de la mort, en attente de son exécution. Persuadé de son innocence mais à court de solutions, Michael décide de se faire incarcérer à son tour dans le pénitencier d’état de Fox River pour organiser leur évasion…

Posted in Lolo's life | Comments Off

Weeds – Une série sans prétention au premier abord mais qui n’est finalement pas si creuse que ça.

Weed

Dans une banlieue respectable de Los Angeles, les apparences sont parfois trompeuses. Les sales petits secrets des uns et des autres vont peu à peu se faire jour. Nancy Botwin, une mère célibataire, vend de la marijuana depuis la mort subite de son mari. C’est sa façon à elle de subvenir aux besoins de sa famille…

Posted in Lolo's life, Uncategorized | Comments Off