SlideShare une entreprise Scribd logo
1  sur  219
Télécharger pour lire hors ligne
Formation
F5 BIG-IP
Local Traffic Manager
Une formation
Mohamed Amine KADIMI
Cursus F5 BIG-IP
Une formation
Plan de la formation
Une formation
1. Traitement du trafic sur F5 BIG-IP
2. Comprendre et configurer le Load Balancing
3. Comprendre et utiliser le Monitoring avancé
4. Utiliser les options de persistance avancées
5. Tuning du Trafic
6. Utiliser les iRules et les Local Traffic Policies
7. Administration du BIG-IP
8. Troubleshooting du traffic
9. Utiliser les iApps
10. Implémenter la sécurité sur F5 BIG-IP
Public concerné
Une formation
Administrateurs réseau et sécurité
Ingénieurs préparant un cursus de certification F5
Personnes avides de renforcer leurs connaissances
Connaissances requises
Une formation
TCP/IP
Communication client/serveur
Les bases de la configuration d’un F5 BIG-IP
Let’s start !
Présentation du Lab
Une formation
Mohamed Amine KADIMI
Plan
Le schéma du Lab
Setup sur VMware Workstation
OS et Licence F5
Une formation
Le schéma du Lab
Une formation
Votre PC
VM F5
VM Linux
Setup VMware Workstation
Une formation
Télécharger l’image ova : downloads.f5.com
Générer une licence d’évaluation : f5.com/trials
OS et Licence F5
Une formation
Revue du traitement
du trafic sur F5 BIG-IP
Une formation
Mohamed Amine KADIMI
Plan
Rappel de l’architecture Full-Proxy
Les objets (Node, Member, Pool, VS)
Revoir les profils
Rappeler les notions de NAT/SNAT
Revoir les bases du Monitoring
Cheminement des paquets en réseau
Une formation
Une formation
L’architecture Full Proxy
Une formation
L’architecture Full Proxy
SYN
SYN-ACK
ACK
HTTP_GET /
SYN
SYN-ACK
ACK
HTTP_GET /
HTTP_RESPONSE
HTTP_RESPONSE
Une formation
Les Node, Member, Pool, VS
172.16.10.1 172.16.10.2 172.16.10.3
172.16.10.1:80 172.16.10.2:80 172.16.10.3:80
10.10.10.10:80
172.16.10.1:443 172.16.10.2:443 172.16.10.3:8443
10.10.10.10:443
HTTP_VS  HTTP_Pool
HTTPS_VS  HTTPS_Pool
Une formation
cookie http
tcp
Les profils
Une formation
NAT/SNAT
NAT
• Mapping One-to-One bidirectionnel
• Pas de load balancing
• Pas de notions de ports
SNAT
• Mapping Many-to-One unidirectionnel
• Translate l’adresse IP source
• Résout les problèmes de routage
Une formation
Le Monitoring
Unknown
Available
Offline
Disabled
Internet
Une formation
Cheminement des paquets
SNAT IP
172.16.10.20
Default GW
172.16.10.1 172.16.10.2 172.16.10.3
172.16.10.1:80 172.16.10.2:80 172.16.10.3:80
216.34.94.17:80
src: 172.16.10.20:10023
dst: 172.16.10.1:80
src: 172.16.10.1:80
dst: 172.16.10.20:10023
54.34.90.90
src: 54.34.90.90:10023
dst: 216.34.94.17:80
src: 216.34.94.17:80
dst: 54.34.90.90:10023
Comment F5 Big-IP traite
le trafic entrant
Une formation
Mohamed Amine KADIMI
Plan
Comprendre l’action de F5 sur le trafic
entrant
Découvrir l’ordre de traitement du
trafic entrant
Une formation
Une formation
Action par défaut
172.16.10.1 172.16.10.2 172.16.10.3
172.16.10.1:80 172.16.10.2:80 172.16.10.3:80
10.10.10.10:80
Default Deny
Trafic non “explicitement
autorisé” est rejeté
Une formation
Actions Accept et Deny
Accept
• Si et seulement si le trafic est explicitement autorisé
• VS, (S)NAT, Self IP …
Deny
• Action par défaut
• BIG-IP  Firewall
Une formation
Ordre de traitement du trafic
1
3
2
4
5
6
7
1. Le trafic
correspond-il a une
connexion existante
dans la table de
connexion?
2. Le trafic
correspond-il a une
règle du Packet
Filter?
3. Est-il a destination
d’un Virtual Server?
4. Le trafic
correspond-il a une
configuration SNAT?
5. Le trafic
correspond-il a une
configuration NAT?
6. Est-il a destination
d’une Self IP en
écoute pour ce
trafic?
7. Si rien ne match,
l’action par défaut est
de rejeter le trafic
Comprendre l'ordre de
priorité des Virtual Servers
Une formation
Mohamed Amine KADIMI
Plan
Pourquoi appréhender l’ordre de
priorité des VS
Comprendre l’ordre de priorité des VS
Comprendre l’impact de la désactivation
d’un VS sur l’ordre de priorité
Une formation
Une formation
Pourquoi l’ordre de priorité
Un VS est défini par
• Son adresse IP et son port de destination
• Et par l’adresse IP source (càd celle du client)
Exemple: (src: 0.0.0.0/0; dst: 10.10.100.10:80)
Les adresses IP et ports peuvent être
des sous-réseau ou des « wildcard »
• Pour élargir la plage du trafic correspondant au VS
• Pour filtrer par adresse source
Exemple: (src: 172.16.10.0/24; dst: 0.0.0.0:*)
Une formation
Pourquoi l’ordre de priorité
Risque de collision
• Lorsqu’un trafic à destination du BIG-IP correspond à
plusieurs VS
Exemple:
Trafic entrant: (src: 10.10.10.11; dst 1.2.3.4:80)
Quel VS prendra en charge?
Source Destination
VS 1 0.0.0.0 10.10.100.10:80
VS 2 10.10.10.0/24 0.0.0.0:80
VS 3 10.10.10.0/24 0.0.0.0:0
Une formation
L’ordre de priorité des VS
F5 détermine le VS en vérifiant dans l’ordre:
• L’adresse de destination du VS
• La plus spécifique d’abord (LPF)
• L’adresse source du VS
• La plus spécifique d’abord (LPF)
• Le port d’écoute du VS
Deux VS ne peuvent avoir les trois identiques
Une formation
L’ordre de priorité des VS
Trafic entrant: (src: 10.10.10.11; dst 1.2.3.4:80)
Quel VS prendra en charge?
VS 2
Source Destination
VS 1 0.0.0.0 10.10.10.10:80
VS 2 10.10.10.0/24 0.0.0.0/0:80
VS 3 10.10.10.0/24 0.0.0.0/0:0
Une formation
L’ordre de priorité des VS
src: 10.10.10.11 dst 10.10.10.10:80
src: 10.10.10.11 dst 1.2.3.4:80
src: 52.2.52.2 dst 10.10.10.10:443
src: 52.2.52.2 dst 10.10.10.10:80
src: 10.10.10.100 dst 10.10.10.11:443
Source Destination
VS 1 0.0.0.0/0 10.10.10.10/32:80
VS 2 0.0.0.0/0 10.10.10.0/24:80
VS 3 10.10.10.0/24 0.0.0.0/0:*
VS 4 10.10.10.0/28 0.0.0.0/0:*
VS 5 0.0.0.0/0 0.0.0.0/0:*
VS 1
VS 4
VS 5
VS 1
VS 3
K14800
Une formation
Impact de la désactivation
d’un VS sur la priorité
Par défaut, un VS désactivé continue à matcher
• Il continue à être prioritaire s’il est le plus spécifique
• Il est donc sélectionné pour traiter le trafic
• Le système envoie des RESET au lieu de traiter le trafic
 Impossible de le bypasser vers un VS moins spécifique
Pour pouvoir bypasser un VS désactivé:
• Il faut changer la variable tm.continuematching
modify /sys db tm.continuematching value true
Découvrir les différents types
de Virtual Servers
Une formation
Mohamed Amine KADIMI
Plan
Redécouvrir le VS Standard
Comprendre le VS Forwarding
Comprendre les VS Performance
Découvrir les autres types de VS
Une formation
Une formation
Le Standard VS
Il est le type de VS par défaut en mode GUI
Il permet de faire du load balancing vers un pool de serveurs
Il fonctionne en mode Full-Proxy
Il permet le maximum de fonctionnalités et de profils
Optimisation TCP
Contrôle et optimisation L7 (http, ftp, sip…)
Offloading SSL
…
 A utiliser lorsqu’on veut profiter du max d’optimisations
Une formation
Le Forwarding (IP) VS
Il permet d’utiliser le BIG-IP en tant que routeur
Pas de Load-Balancing
Pas de mode Full-Proxy
Il permet très peu de fonctionnalités et de profils
Optimisation TCP, QoS, NAT64
Pas de contrôle ni d’optimisation L7
Pas d’offloading SSL
 A utiliser si on souhaite uniquement router le trafic
Une formation
Le Performance (Layer 4) VS
Il permet de faire du Load-Balancing
Il est associé à un profil d’accélération FastL4
Qui optimise les performances au niveau de la couche 4
En faveur des fonctionnalités de couches supérieures
Pour les plateformes disposant du chipset ePVA, l’accélération
L4 se fait au niveau hardware
 A utiliser si on n’a pas besoin de fonctionnalités L7 pour
profiter du maximum de vitesse de traitement
Une formation
Le Performance (HTTP) VS
Il permet de faire du Load-Balancing
Il est associé à un profil d’accélération FastHTTP
Ce profil combine certaines options du profil HTTP à d’autres
options d’accélération
Il optimise le temps de traitement des requêtes HTTP
Mais les fonctionnalités possible restent très limitées (pas de
compression, ni de cache, ni d’offloading SSL)
 Ne doit être utilisé que lorsque les conditions de trafic sont
idéales (pas d’erreur ou de paquets en désordre)
Une formation
Les autres types de VS
Forwarding (Layer 2)
• Permet de « bridger » deux réseaux sans changer l’adressage
Stateless
• N’utilise pas de table de sessions, utile pour le trafic UDP
Internal
• VS qui sert à communiquer avec un serveur ICAP
DHCP
Message Routing
Reject
Configurer le Load Balancing
avec les algorithmes statiques
Une formation
Mohamed Amine KADIMI
Plan
Comprendre les algorithmes de LB
statiques
Comprendre l’algorithme Round Robin
Comprendre l’algorithme Ratio
Une formation
Une formation
Algorithmes statiques de LB
Les algorithmes statiques distribuent le trafic
selon un pattern fixe et prédictible
Deux algorithmes statiques sur BIG-IP
1. Round Robin
2. Ratio
Une formation
Round Robin LB
Les requêtes sont distribuées dans l’ordre
équitablement
 Utiliser si les serveurs ont les mêmes capacités
654321
7
Une formation
Le Ratio Load Balancing
Les requêtes sont distribuées selon des
coefficients fixes attribués aux pool members
 Utiliser si les serveurs ont des capacités différentes
654321 141312111098
4 2 1
Configurer le Load Balancing
avec les algorithmes
dynamiques
Une formation
Mohamed Amine KADIMI
Plan
Comprendre le fonctionnement des
algorithmes de LB dynamique
Comprendre les principaux
algorithmes de LB dynamique
Une formation
Une formation
Algorithmes dynamiques de LB
Ils se basent sur des métriques en temps
réel pour distribuer le trafic :
• Nombre de connexions
• Performance
• …
Plusieurs algorithmes selon les
métriques
Une formation
Least Connections
Le serveur ayant le moins de connexions (L4)
reçoit la requête
 Utiliser pour les connexions de longue durée si les
serveurs ont les mêmes capacités
654321
75 78 77767778 78626364 64
Une formation
Fastest
Le serveur ayant le moins de requêtes (L7) en
suspens reçoit la prochaine requête
 Utile quand les serveurs n’ont pas les mêmes temps de
réponse (latence)
 Un profil L7 est obligatoire pour fonctionner correctement
654321
75 78 77767778 78626364 64
Une formation
Observed
BIG-IP assigne des ratios dynamiques selon le
nombre de connexions observées sur une
seconde
 Utile pour des petits pools dont les serveurs n’ont pas les
mêmes capacités
90 25 604050 709852 20
0 1 2 3 seconds
R=3 R=2R=1R=3 R=2R=1R=2 R=2 R=3
Une formation
Predictive
BIG-IP assigne des ratios dynamiques (1 à 4)
en observant la tendance des connexions
 Les ratios sont ajustés plus agressivement que Observed, le
résultat peut être meilleur pour certaines applications
90 25 60
70 6055
0 1 2 seconds
R  R R 
Une formation
Weighted Least Connections
Basé sur la capacité du serveur déterminée
par la formule
 Utile quand les serveurs n’ont pas la même capacité et
qu’on peut déterminer la limite de connexion
200 150 100300 60 40
CL=500 CL=200CL=1000
20% 30% 50%30% 12% 20%
Une formation
Least Sessions
Le serveur ayant le moins d’entrées dans la
table de persistance est sélectionné
 Nécessite un profil utilisant la table de persistance
(persistance par IP source ou Universal)
654321
75 78 77767778 78626364 64
Une formation
Autres algorithmes
Ratio Least Connections
Least Connections mais proportionnel aux ratios définis
Dynamic Ratio
Ratios assignés et mis à jour en temps réel en se basant sur des
métriques collectées par des monitors SNMP, WMI, ou
RealServer
Comprendre la différence
entre le Load Balancing par
Node et par Member
Une formation
Mohamed Amine KADIMI
Plan
Différencier entre le Load Balancing
par Node et par Member
Assimiler par l’exemple la différence
entre les deux modes
Une formation
Une formation
Node vs Member LB
Baser la décision de Load Balancing sur des
éléments du Member ou du Node parent?
Exemples:
• Ratio du Member (spécifique) ou du Node (global)
• Nombre de connexions actives du Member ou du Node
Notion importante si des Nodes sont utilisés
dans plusieurs pool
Une formation
Node vs Member : Exemple 1
Algorithme de LB : Ratio (Member)
Distribution de 100 requêtes?
172.16.10.1 172.16.10.2 172.16.10.3
172.16.10.1:80 172.16.10.2:80 172.16.10.3:80R=3 R=6R=1
R=2 R=2R=1
30 6010
Une formation
Node vs Member: Exemple 2
Algorithme de LB: Ratio (Node)
Distribution de 100 requêtes?
172.16.10.1 172.16.10.2 172.16.10.3
172.16.10.1:80 172.16.10.2:80 172.16.10.3:80R=3 R=6R=1
R=2 R=2R=1
40 4020
Une formation
Node vs Member : Exemple 3
Algorithme de LB: Least Connections (Member)
Distribution de 5 requêtes HTTP? Puis 5 autres?
172.16.10.1 172.16.10.2 172.16.10.3
172.16.10.1:80 172.16.10.2:80 172.16.10.3:80
172.16.10.1:443 172.16.10.2:443 172.16.10.3:844355 4020
15 2038
54321
HTTP
HTTPS
20
Une formation
Node vs Member : Exemple 4
Algorithme de LB : Least Connections (Node)
Distribution de la prochaine requête HTTP?
172.16.10.1 172.16.10.2 172.16.10.3
172.16.10.1:80 172.16.10.2:80 172.16.10.3:80
172.16.10.1:443 172.16.10.2:443 172.16.10.3:844355 4020
15 2038
1
HTTP
HTTPS 58 70 60
Utiliser les Priority Group
Activation et Fallback Host
Une formation
Mohamed Amine KADIMI
Plan
Comprendre la Priority Group
Activation
Utiliser le Fallback Host
Une formation
Une formation
Priority Group Activation
L’algorithme de LB décide quel membre du pool
recevra le trafic…
Mais comment diviser les membres d’un même
pool en sous-groupes :
• Membres actifs (éligibles à recevoir du trafic)
• Membres standby (prêts à recevoir le trafic en cas de besoin)
 Priority Group Activation
Une formation
Priority Group Activation
PG=10 PG=10 PG=10 PG=5 PG=5
• Assigner les priorités aux membres
• Utiliser la Priority Group Activation avec le « Less than »
Une formation
Priority Group Activation
PG=10 PG=10 PG=10 PG=5 PG=5 PG=1 PG=1
Une formation
Fallback Host
Mécanisme de dernier recours lorsqu’aucun
pool membre n’est disponible
• Envoie un HTTP REDIRECT au client
• Fonctionne avec les VS avec profil HTTP uniquement
Paramétrer les options
avancées des Monitors
Une formation
Mohamed Amine KADIMI
Plan
Configurer les options avancées des
Interval et Timeout
Utiliser les Alias Address et Alias
Service Port
Une formation
Une formation
Options d’Interval et Timeout
Interval : fréquence
Timeout : délai avant
down
Up Interval
• Fréquence différente quand le Member est Up
Time Until Up
• Délai d’attente avant de passer de Down à Up
• Sinon, le serveur est déclaré Up dès la première réponse.
Permet de monitorer un objet
différent du Node/Member
L’état de l’objet monitoré est
remonté au Node/Member
Par défaut, un Monitor utilise l’IP et le port du
Node/Member auquel il est associé
Il est possible de spécifier explicitement l’IP ou
le port à monitorer
Une formation
Alias Address et Port
172.16.10.1:80 172.16.10.2:80 172.17.17.31
Monitorer des Pool Members dont le
fonctionnement dépend d’autres serveurs(ices)
• Application e-commerce avec des pages en HTTP et
d’autres en HTTPS. Si le Member en HTTPS est down,
on souhaiterait également rendre indisponible le
Member HTTP
• Monitorer une adresse publique sur internet pour
déterminer le statut d’un routeur local
Une formation
Alias Address et Port – Use Cases
Une formation
Alias Address et Port – Récap
Alias Address Alias
Service Port
Member/Node
associé
Objet Monitoré
* * 172.16.10.1 172.16.10.1
* * 172.16.10.1:80 172.16.10.1:80
* 443 172.16.10.1:80 172.16.10.1:443
172.16.20.1 * 172.16.10.1:80 172.16.20.1:80
172.16.20.1 443 172.16.10.1:80 172.16.20.1:443
Alias Address Alias
Service Port
Member/Node
associé
Objet Monitoré
* * 172.16.10.1
* * 172.16.10.1:80
* 443 172.16.10.1:80
172.16.20.1 * 172.16.10.1:80
172.16.20.1 443 172.16.10.1:80
Configurer
un Monitor externe
Une formation
Mohamed Amine KADIMI
Plan
Pourquoi utiliser un Monitor externe
Configurer un Monitor externe
Développer un Monitor
Une formation
Une formation
Pourquoi utiliser un Monitor externe
Utiliser un Monitor externe
• Quand aucun Monitor ne peut satisfaire le besoin
Ne jamais utiliser un Monitor externe quand
on peut utiliser un Monitor intégré
• Impacte la performance, pour chaque instance du Monitor
un shell est « forké »
Une formation
Configurer un Monitor externe
1. Importer le script externe (shell, perl …)
2. Créer un Monitor de type External
• Référencer le script externe
• Passer des arguments et des variables au script
3. Associer le monitor
Une formation
Développer un Monitor
externe – Notes
Les arguments du scripts sont
• $arg0 : nom du script
• $arg1 : ip du membre
• $arg2 : port du membre
• $arg3 … $argN : les arguments passés aux scripts
Attention, l’IP du Node est représentée en
notation IPv6 transitionnelle
• "::ffff:10.0.0.1" correspond au nœud 10.0.0.1
Une formation
Développer un Monitor
externe – Output
L’output du script indique le statut du membre
• Si le script ne retourne aucune output  Membre down
• Si le script retourne n’importe quelle output  Membre up
Attention, toutes ces outputs indiquent que le
Member est UP
• Server Up
• Server Down
• « Si tu dors et que tu rêves que tu dors, il faut que tu te
réveilles deux fois pour te lever »
Désactiver et mettre Offline
un serveur
Une formation
Mohamed Amine KADIMI
Plan
Distinguer entre la table de
connexions et la table de persistance
Comprendre la différence entre les
actions « Disable » et « Force Offline »
Une formation
Une formation
Table de connexions
Contient toutes les connexions actives
identifiées par leurs propriétés uniques
Une entrée expire après la fin normale de la
connexion ou l’écoulement du IDLE_TIMEOUT
Une formation
Table de persistance
Contient les entrées persistantes lorsque la
persistance est configurée (uniquement pour
certains types de persistance)
Une entrée expire après l’écoulement du
Timeout de persistance
Force Offline: Aucune nouvelle connexion. Uniquement les
connexions en cours sont traitées
Disable: connexions en cours + les nouvelles connexions si
elles correspondent à une entrée persistante
Aucune, BIG-IP continue à traiter les connexions actives
Une formation
Disable vs Force Offline
Quelles connexions existantes terminer?
Quelles nouvelles connexions accepter?
Utiliser la persistance SSL
Une formation
Mohamed Amine KADIMI
Plan
Définir la persistance SSL
Configurer la persistance SSL
Une formation
Une formation
Type de persistance basée sur la SSL Session ID
• “An arbitrary byte sequence chosen by the server to identify
an active or resumable session state” (rfc5246)
• Indispensable au succès d’une session SSL
• Transmis en clair
 Possibilité d’utiliser ce type même si BIG-IP ne déchiffre pas
le traffic SSL
• Le plus souvent utilisé sur un VS en SSL pass-through
• Peut-être combiné à une autre persistance pour plus de fiabilité
Définition de la persistance SSL
Une formation
Définition de la persistance SSL
Une formation
Configurer la persistance SSL
Utiliser le profil SSL préexistant ou créer
un nouveau profil
Associer le profil au VS
• Possible d’associer un profil de fallback
Utiliser la persistance
Universal
Une formation
Mohamed Amine KADIMI
Plan
Définir la persistance Universal
Configurer la persistance Universal
Étudier un exemple de persistance
Universal
Une formation
Une formation
Type de persistance utilisant les iRules
• La clé de persistance peut être n’importe quelle chaîne de
caractères du paquet
• Appelée également la persistance UIE
 A utiliser lorsqu’on souhaite persister en se basant sur une
clé (ou plusieurs) non fournie par les profils standards
• Header HTTP (exemple: X-Forwarded-For)
• Cookie de session inséré par le serveur (exemple: JSESSIONID)
• …
Définition de la persistance Universal
Une formation
Identifier la clé à utiliser pour persister
Créer une iRule pour exécuter l’action de
persistance
Créer un profil de persistance de type Universal
référençant l’iRule créée
Associer le profil au VS
• Possible d’associer un profil de fallback
Configurer la persistance Universal
Une formation
when HTTP_REQUEST {
set xff {[HTTP::header X-Forwarded-For]
if { $xff != "" } {
persist uie $xff
}
}
Exemple de persistance Universal
Configurer les options
Match Across
Une formation
Mohamed Amine KADIMI
Plan
L’intérêt d’utiliser les options Match
Across
Utiliser Match Across Services
Utiliser Match Across Virtual Servers
Utiliser Match Across Pools
Une formation
Une formation
La persistance est par défaut strictement
liée au VS auquel le profil est associé
Intérêt des options Match Across
Une formation
TMM 0
Mode source-address
Value 10.10.10.50
Age (sec.) 5
Virtual Name /Common/HTTP_vs
Virtual Addr 10.10.10.1:80
Node Addr 172.16.10.1:80
Pool Name /Common/HTTP_pool
Client Addr 10.10.10.50
Intérêt des options Match Across
Une formation
172.16.10.1 172.16.10.2 172.16.10.3
172.16.10.1:80 172.16.10.2:80 172.16.10.3:80
172.16.10.1:443 172.16.10.2:443 172.16.10.3:8443
HTTP
HTTPS
10.10.10.1:80 10.10.10.1:443
Intérêt des options Match Across
Une formation
La persistance est par défaut strictement
liée au VS auquel le profil est associé
Certaines situations requièrent de
persister l’utilisateur même s’il ne
sollicite pas le même VS
• Exemple : site utilisant HTTP et HTTPS
Intérêt des options Match Across
Une formation
Match Across permet de partager et
réutiliser la persistence entre VS
différents
• Match Across Services
• Match Across Virtual Servers
• Match Across Pools
Intérêt des options Match Across
Même IP virtuelle
Services differents
Une formation
Match Across Services
172.16.10.1 172.16.10.2 172.16.10.3
172.16.10.1:80 172.16.10.2:80 172.16.10.3:80
172.16.10.1:443 172.16.10.2:443 172.16.10.3:8443
HTTP
HTTPS
10.10.10.1:80 10.10.10.1:443
Peu importe l’IP ou
le service des VS
Une formation
Match Across Virtual Servers
172.16.10.1 172.16.10.2 172.16.10.3
172.16.10.1:80 172.16.10.2:80 172.16.10.3:80
172.16.10.1:443 172.16.10.2:443 172.16.10.3:8443
HTTP
HTTPS
10.10.10.1:80 10.10.10.2:443
Une formation
Match Across Pools
Réutilisation du pool associé à l’entrée
de persistance
Quand un VS est associé à plusieurs
pools
Même si les conditions de sélection du pool
ne sont pas satisfaites
Une formation
Match Across Pools
if { [HTTP::host] eq "abc.fr" } {
pool FR_pool
}
elseif { [HTTP::host] eq "abc.de" } {
pool DE_pool
}
VS = 10.10.10.1:80
Client 1.2.3.4 demande abc.fr
 pool FR_pool
Client 1.2.3.4 demande abc.de
 pool FR_pool
Une formation
Match Across Pools
if { [HTTP::host] eq "abc.fr" } {
pool FR_pool
}
elseif { [HTTP::host] eq "abc.de" } {
pool DE_pool
} 10.10.10.1:80
FR_pool DE_pool
Optimiser le trafic avec
les profils TCP et OneConnect
Une formation
Mohamed Amine KADIMI
Plan
Découvrir les différentes options
d’optimisation du trafic sur LTM
Optimiser le protocole TCP
Optimiser les connexions TCP avec le
profil OneConnect
Une formation
Compressé
Une formation
Optimisation du trafic sur LTM
Non compressé
RAM Cache
Chiffré Clair
TCP Client TCP Server
Multiple
Optimisation
HTTP
SSL
Optimisation
TCP
OneConnect
(Connexion
Reuse)
Single
Une formation
Optimisation du protocole
TCP – TCP Express
Chaque système implémente la pile TCP/IP de
sa propre manière
La pile TCP/IP de F5 s’appelle TCP Express
• Fait partie du TMOS
• Fournit une multitude d’optimisations natives
• S’adapte au contexte du trafic (client/serveur)
• Automatique (aucune configuration requise)
Une formation
Optimisation du protocole
TCP – Profils TCP
Permet de personnaliser certaines options
d’optimisation TCP
Applicable par VS
Contextuelle (Client/Server)
Les profils fournis conviennent à la majorité
des situations
Une formation
Optimisation avec le profil
OneConnect
OneConnect permet de minimiser les
connexions TCP côté serveur
• En agrégeant plusieurs connexions clients sur
une même connexion serveur
• Utilise les HTTP Keep-Alive
• Un profil HTTP est fortement recommandé
Une formation
Optimisation avec le profil
OneConnect
Sans OneConnect OneConnect (1 client) OneConnect (plage de clients)
Modifier le contenu des
payload TCP/HTTP avec
le profil Stream
Une formation
Mohamed Amine KADIMI
Plan
Définir le profil Stream
Configurer un profil Stream
Utiliser une iRule avec un profil
Stream
Une formation
Une formation
Définition du Stream Profile
Effectue un rechercher/remplacer de
toutes les occurrences d’une chaîne
• S’exécute sur les requêtes et les réponses
• Dans le payload TCP
• Ou dans le payload HTTP uniquement
• Fonctionne même si la chaîne à remplacer
est transmise sur plusieurs segments TCP
• Peut être contrôlé par une iRule pour
s’exécuter selon une logique
Une formation
Configurer un Stream Profile
Créer un nouveau profil de type Stream
Associer le profil au VS
Une formation
Utiliser une iRule avec un
profil Stream
when HTTP_REQUEST {
STREAM::disable
}
when HTTP_RESPONSE {
if { SOME_CONDITION } {
STREAM::expression {@origStr@newStr@}
STREAM::enable
}
}
Utiliser plusieurs iRules
et définir les priorités
d'exécution
Une formation
Mohamed Amine KADIMI
Plan
Utiliser ou pas plusieurs iRules
Comprendre l’exécution des iRules
Modifier l’ordre d’exécution des iRules
Une formation
Une formation
Utiliser ou pas plusieurs iRules
Segmenter les fonctionnalités
Réduire la taille du code
Réutiliser les iRules sélectivement
Risque d’altérer la logique souhaitée
• Duplication d’événements
• Exécuter toutes les instructions?
• Dans quel ordre?
 Oui, si besoin, mais avec modération
Une formation
Comprendre l’exécution des
iRules
Quand une iRule est créée
• Elle est validée et précompilée en « Bytecode »
• Puis mise à disposition des TMM
L’iRule est exécutée lorsqu’un événement
qu’elle appelle se produit
• Que se passe-t-il si plusieurs iRules sont
associés aux VS?
Une formation
Comprendre l’exécution des
iRules
• Normalisation et réorganisation
• Gestion des événements dupliqués
When HTTP_
if {…} {
…
}
When HTTP_
if {…} {
…
}
When HTTP_
if {…} {
…
}
0 PUSH
2 JUMP 6
6 IT
15 POP
Compilation
Une formation
Modifier l’ordre d’exécution
des iRules
Pour garantir le résultat souhaité
• Il est recommandé de définir explicitement
l’ordre d’exécution des événements dupliqués
 Commande « priority »
priority XXX
when EVENT priority YYY {
…
}
Une formation
Modifier l’ordre d’exécution
des iRules
when HTTP_RESPONSE priority 10 {
if { [HTTP::status] equals "404" } {
HTTP::redirect "/404.php"
}
}
when HTTP_RESPONSE priority 100 {
if { [HTTP::status] starts_with "4" } {
HTTP::redirect "/error.php"
}
}
Une formation
Modifier l’ordre d’exécution
des iRules
priority 100
when CLIENT_ACCEPTED {
...
}
when HTTP_RESPONSE {
...
}
priority 10
when HTTP_RESPONSE {
...
}
Une formation
Modifier l’ordre d’exécution
des iRules
La priorité par défaut est 500
Les valeurs possibles : de 1 à 1000
Un nombre plus bas indique une
priorité plus haute
La priorité ne change pas l’ordre
d’exécution d’événements distincts
Comprendre et utiliser
les Local Traffic Policies
Une formation
Mohamed Amine KADIMI
Plan
Découvrir les Local Traffic Policies
Découvrir les principaux composants
des Local Traffic Policies
Configurer et modifier un Traffic Policy
Une formation
Une formation
Découvrir les Local Traffic
Policies
Manipulent le trafic transitant par un VS
Basées sur des conditions-actions
Ne requièrent pas de connaissances TCL
Supportées nativement
Plus performantes que les iRules, mais
moins riches
Policy 1
Une formation
Découvrir les Local Traffic
Policies
Conditions
Actions
Rule 1
Conditions
Actions
Rule 2
Conditions
Actions
Rule N
Une Policy est composée de Rules
• Les Rules définissent les conditions et les
actions
Une formation
Configurer une Policy
Pour modifier une Policy existante
• Créer un Draft de celle-ci, le configurer, puis le
publier
Créer la
Policy
Publier la
Policy
Associer la
Policy au VS
En tant que Draft
Configurer Rules
Devient utilisable
et non configurable
Utiliser les Data Group
et les iFiles
Une formation
Mohamed Amine KADIMI
Plan
Découvrir les Local Traffic Policies
Découvrir et utiliser les Data Groups
Découvrir et utiliser les iFiles
Une formation
Une formation
Découvrir les Data Group
Listes <clé = valeur> enregistrées sur le
disque
Utilisées par les iRules
• Plus de flexibilité
• Meilleure performance
• Read-Only
Une formation
Découvrir les Data Group
Trois types, plusieurs usages :
1. Address
• Exemples : IP Blacklist, IP Whitelist
2. String
• Exemples : extensions, chemins
3. Integer
• Exemples : ports, statuts HTTP
Une formation
Utiliser les Data Group
Les opérations sur les Data Groups sont
effectuées via la commande « class »
• Plusieurs options
class match
class search
…
• class match suffit pour la plupart des cas
• http://tiny.cc/f5class
Une formation
Utiliser les Data Group
if {[class match [HTTP::host] ends_with tld_dg]} {
set uri [class match -value [HTTP::host] ends_with tld_dg]
HTTP::redirect "http://www.example.com$uri"
}
1. Créer le Data Group
2. L’utiliser dans une iRule
tld_dg
Une formation
Utiliser les Data Group
when HTTP_RESPONSE {
if {[string match {4??} [HTTP::status]]} {
if {[class match [HTTP::status] equals errors_dg]}{
HTTP::redirect [class lookup [HTTP::status] errors_dg]
}
}
}
Que fait cette iRule?
errors_dg
Une formation
Découvrir les iFiles
Fichiers statiques uploadés sur F5 et
qu’on peut utiliser dans les iRules
• Distribuer aux clients une page d’erreur ou de
maintenance
• Distribuer une ou des images à la place du
serveur
• Offrir le téléchargement de fichiers statiques
• Syntaxe : http://tiny.cc/f5ifiles
Une formation
Utiliser les iFiles
when HTTP_REQUEST {
if {[HTTP::uri] eq "/wpad.dat" } {
HTTP::respond 200 content [ifile get wpad-file]
}
else if {[active_members [LB::server pool]] < 1}
HTTP::respond 200 content [ifile get sorry-file]
}
}
1. Uploader le fichier sur F5
2. L’utiliser dans une iRule
Configurer les utilisateurs
et les partitions
Une formation
Mohamed Amine KADIMI
Plan
Découvrir la gestion des utilisateurs
sur F5 BIG-IP
Définir et configurer des utilisateurs
Définir les rôles des utilisateurs
Définir et configurer des partitions
Une formation
Une formation
La gestion des utilisateurs
La gestion des utilisateurs répond à
• Qui a accès?
• À quoi?
• Avec quelles permissions?
Ceci en définissant
• Des utilisateurs
• Ayant des rôles
• Sur des partitions
Une formation
Les utilisateurs (Qui a accès?)
Un utilisateur est un compte défini par
• Username
• Password
• Partition Access
• Accès à quelles partitions avec quels rôles?
• Un rôle par partition
• Terminal Access
• Disabled, Advanced Shell, ou TMSH
Une formation
Les rôles (avec quelles
permissions?)
Les rôles permettent de définir un niveau
d’autorisations accordé à l’utilisateur
Un rôle contrôle :
• Les types de ressources que l’utilisateur peut
gérer
• Les actions qu’il peut effectuer dessus
Les rôle disponibles sont prédéfinis sur F5
Une formation
Les rôles (avec quelles
permissions?)
Des niveaux d’accès de « Guest » jusqu’à
« Administrator »
Une formation
Les partitions (accès à quoi?)
Les partitions administratives sont des
conteneurs logiques d’objets BIG-IP
• Nodes, pools, VS, profils, certificats…
Un utilisateur ayant accès à une partition
a donc :
• Accès aux objets de la partition
• Avec le rôle associé à cette partition
Une formation
Les partitions (accès à quoi?)
Une formation
Les partitions (accès à quoi?)
La partition par défaut est Common
• Si aucune autre partition n’est définie, tous
les objets sont créés dans Common
• Tous les utilisateurs y ont accès, sauf si leur
rôle est « No Access »
• Une partition utilisateur peut référencer des
objets résidant dans Common
Une formation
Les partitions (accès à quoi?)
/Common
Pool http_pool
Profile client_ssl
/PartProd
VS_PROD (10.1.1.10)
Pool http_pool
Profile client_ssl
/PartDev
VS_DEV (10.1.1.20)
Pool http_pool
Profile client_ssl
Configurer le logging
et la supervision
Une formation
Mohamed Amine KADIMI
Plan
Introduction au logging sur F5 BIG-IP
Passer en revue le logging local
Configurer le logging syslog classique
Configurer le High-Speed Logging (HSL)
Configurer la supervision SNMP
Une formation
Une formation
Le logging sur F5 BIG-IP
Plusieurs types de Logs :
• Événements système
• Événements trafic (LTM, DNS, Packet filter…)
• Audit (actions utilisateurs sur la config)
Deux méthodes :
1. Logging syslog classique
2. High-Speed Logging (HSL)
Une formation
Le logging sur F5 BIG-IP
Plusieurs destinations
• Syslog local
• Syslog distant
• DB Mysql local
• Autres (Splunk, HP Arcsight…)
Une formation
Le logging local
Activé par défaut
Utilise syslog-ng du système Linux
Fichiers de Logs dans /var/log/
• /var/log/ltm
• /var/log/asm
• /var/log/gtm
• /var/log/pktfilter
• /var/log/audit
• ...
Une formation
Le logging local
Chaque jour, les logs du jour précédent sont
archivés
8 archives compressées sont conservées
• ltm
• ltm.1
• ltm.2.gz ltm.3.gz … ltm.9.gz
• Pour les afficher:
zcat /var/log/ltm.1.gz
Une formation
Logging Syslog classique
• Configuration simplifiée
• Un ou plusieurs serveurs Syslog
• Pas de Load Balancing
• UDP/514 par défaut
• Niveau de log configurable
• Utilise l’interface MGMT ou
TMM (RD 0)
• Non recommandé pour les gros
volumes de Logs
Syslog Servers
Une formation
High Speed Logging
Méthode de logging recommandée
Supporte plusieurs formats :
• Syslog
• Splunk
• Arcsight
Supporte l’envoi à plusieurs serveurs
Supporte un filtrage plus avancé
Utilise une interface TMM
Une formation
High Speed Logging
Quatre types d’objets à définir
1. Log Filter
2. Log Publisher
3. Log Destination (optionnellement un Log Formatter)
4. Pool (Log Servers)
Log Filter Log Publisher
Log
Destination
(HSL)
Pool of
Servers
Log
Destination
(Formatter)
Une formation
Supervision SNMP
SNMP Access mode
(Polling)
• Read Only
• Read Write
SNMP Traps
SNMP v1, v2c, v3
Polling
(SET/GET)
Traps
Sauvegarder et restaurer
la configuration avec
les fichiers SCF
Une formation
Mohamed Amine KADIMI
Plan
Présenter les sauvegardes SCF
Découvrir le contenu des fichiers SCF
Créer un fichier SCF
Déployer un fichier SCF
Une formation
Une formation
Présentation des SCF (Single
Configuration File)
Sauvegarde de la configuration BIG-IP en un
seul fichier texte
• Non destinés à la sauvegarde/restauration du
système
• Utilisés pour répliquer une config sur plusieurs BIG-IP
• Utiles pour migrer d’une plateforme à une autre
Une formation
Présentation des SCF (Single
Configuration File)
ltm pool /Common/HTTP_pool {
load-balancing-mode ratio-node
members {
/Common/172.16.10.1:80 {
address 172.16.10.1
}
/Common/172.16.10.2:80 {
address 172.16.10.2
}
}
monitor /Common/http
}
Une formation
Contenu des SCF
Tous les objets de la configuration BIG-IP
• bigip_base.conf (Self IP, Vlans, Routes…)
• bigip.conf (Nodes, Pools, VS, Profiles,
Monitors, iRules, Traffic Policies...)
• bigip_user.conf (comptes utilisateurs)
• La config des modules (APM, ASM…)
• Certains fichiers de config Linux
Une formation
Contenu des SCF
Les fichiers SCF ne contiennent pas
• Le contenu du dossier /config/filestore/
• Notamment les certificats/clés SSL
• Mais les fichiers référencés par le SCF sont
exportés dans une archive TAR séparée
• La licence du BIG-IP
Une formation
Création d’un fichier SCF
La création du SCF se fait exclusivement
à partir de la CLI
save sys config file conf1.scf passphrase PA$$W0rD
ou
save sys config file conf1.scf no-passphrase
L’output est créée dans /var/local/scf
• /var/local/scf/conf1.scf
• /var/loca/scf/conf1.tar
Une formation
Déploiement d’un fichier SCF
Le déploiement du SCF se fait également
exclusivement à partir de la CLI
load sys config file conf1.scf passphrase PA$$W0rD
ou
load sys config file conf1.scf
Option « merge » pour fusionner avec la
config actuelle
load sys config file conf1.scf merge
Mettre en place
la Multitenancy avec
les Route Domains
Une formation
Mohamed Amine KADIMI
Plan
Présenter les Route Domains
Configurer les Route Domains
Une formation
Une formation
Présentation des Route Domains
Moyen de BIG-IP d’isoler le traffic entre
plusieurs tenants
Chaque RD a son propre espace IP
• Une même IP peut être utilisée par plusieurs
tenants
Chaque RD a sa propre table de routage
• Avec possibilité de router vers un autre RD
Recommandation : Mettre chaque RD dans sa partition administrative
Présentation des Route Domains
Une formation
Configuration des Route Domains
Configurer un nouveau Route Domain
• Créer le(s) VLAN(s) isolé(s)
• Créer le Route Domain
Pour utiliser le Route Domain
• Créer les Self IP dans les VLANs isolés
• Créer les objets (VS, Pool Members, Nodes)
avec l’ID du RD. Exemple: 10.10.1.1%2
• Créer les routes si nécessaires
Troubleshooting du trafic SSL
avec tcpdump et ssldump
Une formation
Mohamed Amine KADIMI
Plan
Déchiffrer une capture de trafic SSL
Utiliser l’outil ssldump
Examiner une capture SSL avec
ssldump
Une formation
Une formation
Déchiffrer une capture de trafic SSL
Un échange SSL/TLS
est composé de
• SSL Handshake
• Échange de données
applicatives
On distingue entre les
deux lors du diagnostic
Une formation
Utiliser l’outil ssldump
Équivalent de TCPDUMP pour le trafic SSL
Deux méthodes pour analyser le trafic:
• Caputre en temps réel
• Analyse d’un fichier généré par TCPDUMP
• Méthode recommandée
K10209
Une formation
Utiliser l’outil ssldump
Exemple:
1. Capture avec TCPDUMP :
tcpdump -vvv -s0 -nni external -w /var/tmp/SSL.cap host
10.10.10.1 and port 443
2. Déchiffrement du SSL Handshake :
ssldump -nr /var/tmp/SSL.cap
3. Déchiffrement données applicatives :
ssldump -nr /var/tmp/SSL.cap –k /config/path/to/ssl.key -d
Une formation
Examiner une capture SSL
avec ssldump
Handshake
ClientHello
ServerHello
Échange de certificats
Génération PMS
ChangeCipherSpec
application_data
Alert
Fatal, handshake_failure
TCP_FIN
TCP_RST
Une formation
Examiner une capture SSL
avec ssldump
Troubleshooting du trafic
avec cURL et Fiddler
Une formation
Mohamed Amine KADIMI
Plan
Découvrir et utiliser cURL
Découvrir et utiliser Fiddler
Une formation
Une formation
Découvrir cURL?
Outil en CLI pour retrouver des
ressources par leurs URL
Disponible sous plusieurs architectures
• Linux, Windows, BSD, AIX…
Supporte plusieurs protocoles
• HTTP, FTP, SMB, LDAP…
Disponible d’office sous F5 BIG-IP
• Utile pour tester les monitors par exemple
Une formation
Utiliser cURL?
curl -v http://www.alphorm.com
Options courantes:
-I headers HTTP uniquement
-i headers + contenu
-v output verbose
-L suivre les redirections
-H envoyer des headers
-k accepter du SSL non sécurisé
-X specifier la méthode HTTP
man curl
Une formation
Découvrir Fiddler
Proxy local qui intercepte, analyse et
manipule le trafic HTTP(S)
Le Wireshark du HTTP(S)
Une formation
Découvrir Fiddler
Troubleshooting
des TCP RESET
Une formation
Mohamed Amine KADIMI
Plan
Rappel du TCP RESET
Diagnostiquer les TCP RESET
Une formation
Une formation
Rappel du TCP RESET
TCP RST est un flag TCP dû à plusieurs causes
• Service filtré ou pas en écoute
• VS désactivé
• Aucun membre disponible
• Timeout
• …
SYN
RSTSYN-ACK
ACK
RST
Une formation
Diagnostiquer les TCP RESET
Flag R sur une capture TCPDUMP
Statistiques des RESET
Une formation
Diagnostiquer les TCP RESET
Par défaut, la cause des RST n’est pas loguée
• Deux méthodes permettent d’avoir la cause :
Activer le logging vers /var/log/ltm
modify /sys db tm.rstcause.log value enable
Inclure la cause dans le payload du paquet RST
modify /sys db tm.rstcause.pkt value enable
Utiliser les iApps pour
déployer des applications
sur BIG-IP
Une formation
Mohamed Amine KADIMI
Plan
Définir les iApps et leurs composants
Utiliser les templates d’iApps
Configurer une iApp
Une formation
Une formation
Définition des iApps
La technologie iApps est un Framework
de déploiement et de gestion
d’applications
• Facilite le déploiement d’applications complexes,
en se basant sur des templates
• Automatise la création des objets (VS, pools,
monitors, iRules…)
• Encapsule les objets et les protège contre toute
modification externe (mode Strict Update)
Une formation
Deux composants principaux:
1. iApp Templates
2. iApp Application Services
Les Templates décrivent (en TCL) les
règles de déploiement d’une application
L’Application Service est le déploiement
unitaire d’une application via iApp
Définition des iApps
Une formation
Les iApps Templates
Des Templates prédéfinis
Des Templates téléchargeables
• Templates officiels
downloads.f5.com
• Templates communautaires
devcentral.f5.com
Une formation
Configurer une iApp
Le déploiement se fait en répondant à
des questions qui définissent la business
logic
La reconfiguration se fait en répondant
une nouvelle fois aux questions
Par défaut, la modification des objets
n’est pas autorisée en dehors de l’iApp
Explorer les différentes options
de sécurité sur F5 LTM
Une formation
Mohamed Amine KADIMI
Plan
Sécuriser l’administration de BIG-IP
Securiser le trafic de données
Une formation
Une formation
Sécuriser l’administration de BIG-IP
• Modifier les mots de passe par défaut
• Utiliser les rôles/partitions efficacement
• Exiger la complexité des mots de passe
• Limiter les accès SSH/GUI aux IP sources
autorisées
• Externaliser les logs vers un serveur de
supervision
Une formation
Sécuriser le trafic des données
• Configurer le Port Lockdown sur les Self IP
• Limiter les VLANs autorisés sur un VS
• Configurer les limites de connexions pour
faire de l’anti-DoS basique
Mot de la fin
Une formation
Mohamed Amine KADIMI
Bilan de la formation
Une formation
Traitement du trafic entrant
BIG-IP est un
default deny
device
1
3
2
4
5
6
7
Une formation
Les Virtual Servers
Un VS est défini par une IP et un port de
destination et une IP source
Si plusieurs VS matchent un trafic
entrant, le plus spécifique est utilisé
• Par défaut, le plus spécifique est sélectionné
même s’il est désactivé
Une formation
Les types de Virtual Servers
Standard
• Le plus commun, le plus riche en options
Forwarding (IP)
• Mode routeur, pas de Load Balancing
Performance (Layer4)
• Favorise l’optimisation au niveau 4
Performance (HTTP)
• Optimise le temps de traitement des requêtes HTTP
…
Une formation
Les algorithmes de LB
Statiques
• Distribution prédéterminée et prédictible
• Round Robin, Ratio
Dynamiques
• Distribution basée sur des métriques temps réel
• Least Connections, Fastest, Least Sessions…
Load Balancing par Node ou par Member
• Exemple: Least Connections (Member) vs Least
Connections (Node)
Une formation
Mécanismes de fallback
Priority Group Activation
PG=10 PG=10 PG=10 PG=5 PG=5
Fallback Host
Less than 2
Une formation
Monitoring et statuts des
Nodes/Members
Monitors
• Utilité des Alias Address et Alias Port
• Monitors externe (scripts)
Statuts
• Disable vs Force Offline
Une formation
Persistance
Persistance SSL
• Basée sur le SSL Session ID
• Fonctionne même quand BIG-IP ne déchiffre
pas le trafic
Persistance Universal
• Utilise les iRules
Fonctionnement des options Match
Across
Une formation
Optimisation et tuning du trafic
TCP Express
• Nom donné par F5 à la pile TCP/IP du BIG-IP
Optimisation par profils
• Profils TCP et OneConnect
Manipulation des payloads avec le profil
Stream
Une formation
iRules et Traffic Policies
iRules mulitiples et ordre d’exécution
• Priorité par défaut = 500
• Nombre plus bas = priorité plus haute
Data Groups et iFiles
Local Traffic Policies
• Alternative en mode graphique aux iRules
• Plus performantes mais moins riches
• Créer un draft d’une policy pour la modifier
Une formation
Administration avancée
Utilisateurs, rôles et partitions
Options de logging
• Syslog local ou distant
• HSL
• SNMP
Sauvegarde et restauration avec SCF
Route Domains
Une formation
Troubleshooting
Outils de diagnostic
• TCPDUMP + SSLDUMP
• curl
• Fiddler
Troubleshooting des TCP RESET
• Bonne pratique: le logging des causes doit
être limité dans le temps pour le debugging
Une formation
Utilisation des iApps
iApps pour contrôler le déploiement
d’applications +ou- complexes
Déploiement basés sur Templates
• Officiels embarqués sur BIG-IP
• Officiels à télécharger et importer
• Communautaires à télécharger et importer
Une formation
Options de sécurité
Sécuriser le plan d’administration
• Utiliser les bonnes pratiques communes à
tous les équipements
Sécuriser le plan de trafic
• F5 BIG-IP est un default deny
• Autoriser uniquement le strict minimum
• Dans la mesure du possible, configurer les
limites de connexions
Merci

Contenu connexe

Tendances

IBM MQ Whats new - including 9.3 and 9.3.1
IBM MQ Whats new - including 9.3 and 9.3.1IBM MQ Whats new - including 9.3 and 9.3.1
IBM MQ Whats new - including 9.3 and 9.3.1Robert Parker
 
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.xAlphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.xAlphorm
 
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...Alphorm
 
SIP (Session Initiation Protocol)
SIP (Session Initiation Protocol)SIP (Session Initiation Protocol)
SIP (Session Initiation Protocol)KHNOG
 
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm
 
SIP Trunking overview
SIP Trunking overviewSIP Trunking overview
SIP Trunking overviewJohn Downing
 
Alphorm.com Formation Palo Alto : Installation et configuration de base
Alphorm.com Formation Palo Alto : Installation et configuration de baseAlphorm.com Formation Palo Alto : Installation et configuration de base
Alphorm.com Formation Palo Alto : Installation et configuration de baseAlphorm
 
Tp snmp-packet-tracer
Tp snmp-packet-tracerTp snmp-packet-tracer
Tp snmp-packet-tracerChris Dogny
 
Deploying Cisco ISR G2 and ASR 1000 in the Enterprise
Deploying Cisco ISR G2 and ASR 1000 in the EnterpriseDeploying Cisco ISR G2 and ASR 1000 in the Enterprise
Deploying Cisco ISR G2 and ASR 1000 in the EnterpriseCisco Canada
 
SIP and DNS - federation, failover, load balancing and more
SIP and DNS - federation, failover, load balancing and moreSIP and DNS - federation, failover, load balancing and more
SIP and DNS - federation, failover, load balancing and moreOlle E Johansson
 
Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm
 
VMUGbe 21 Filip Verloy
VMUGbe 21 Filip VerloyVMUGbe 21 Filip Verloy
VMUGbe 21 Filip VerloyFilip Verloy
 
Alphorm.com Formation Réseaux Cisco 2/2 : Maîtriser la sécurité
Alphorm.com Formation Réseaux Cisco 2/2 : Maîtriser la sécuritéAlphorm.com Formation Réseaux Cisco 2/2 : Maîtriser la sécurité
Alphorm.com Formation Réseaux Cisco 2/2 : Maîtriser la sécuritéAlphorm
 
Introduction to nexux from zero to Hero
Introduction to nexux  from zero to HeroIntroduction to nexux  from zero to Hero
Introduction to nexux from zero to HeroDhruv Sharma
 

Tendances (20)

IBM MQ Whats new - including 9.3 and 9.3.1
IBM MQ Whats new - including 9.3 and 9.3.1IBM MQ Whats new - including 9.3 and 9.3.1
IBM MQ Whats new - including 9.3 and 9.3.1
 
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.xAlphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
Alphorm.com Formation Certification NSE4 - Fortinet Fortigate Infrastructure 6.x
 
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : L'es...
 
SIP (Session Initiation Protocol)
SIP (Session Initiation Protocol)SIP (Session Initiation Protocol)
SIP (Session Initiation Protocol)
 
CCNA DUMPS 640-802
CCNA DUMPS 640-802CCNA DUMPS 640-802
CCNA DUMPS 640-802
 
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : SécuritéAlphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
Alphorm.com Formation CCNP ENCOR 350-401 (6of8) : Sécurité
 
Serveur Zabbix
Serveur ZabbixServeur Zabbix
Serveur Zabbix
 
Avaya
AvayaAvaya
Avaya
 
WebSphere MQ tutorial
WebSphere MQ tutorialWebSphere MQ tutorial
WebSphere MQ tutorial
 
SIP Trunking overview
SIP Trunking overviewSIP Trunking overview
SIP Trunking overview
 
Alphorm.com Formation Palo Alto : Installation et configuration de base
Alphorm.com Formation Palo Alto : Installation et configuration de baseAlphorm.com Formation Palo Alto : Installation et configuration de base
Alphorm.com Formation Palo Alto : Installation et configuration de base
 
Tp snmp-packet-tracer
Tp snmp-packet-tracerTp snmp-packet-tracer
Tp snmp-packet-tracer
 
Deploying Cisco ISR G2 and ASR 1000 in the Enterprise
Deploying Cisco ISR G2 and ASR 1000 in the EnterpriseDeploying Cisco ISR G2 and ASR 1000 in the Enterprise
Deploying Cisco ISR G2 and ASR 1000 in the Enterprise
 
SIP and DNS - federation, failover, load balancing and more
SIP and DNS - federation, failover, load balancing and moreSIP and DNS - federation, failover, load balancing and more
SIP and DNS - federation, failover, load balancing and more
 
Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0
 
VMUGbe 21 Filip Verloy
VMUGbe 21 Filip VerloyVMUGbe 21 Filip Verloy
VMUGbe 21 Filip Verloy
 
Alphorm.com Formation Réseaux Cisco 2/2 : Maîtriser la sécurité
Alphorm.com Formation Réseaux Cisco 2/2 : Maîtriser la sécuritéAlphorm.com Formation Réseaux Cisco 2/2 : Maîtriser la sécurité
Alphorm.com Formation Réseaux Cisco 2/2 : Maîtriser la sécurité
 
Introduction to nexux from zero to Hero
Introduction to nexux  from zero to HeroIntroduction to nexux  from zero to Hero
Introduction to nexux from zero to Hero
 
Indroduction to SIP
Indroduction to SIPIndroduction to SIP
Indroduction to SIP
 
Sip
SipSip
Sip
 

Similaire à Alphorm.com Formation F5 BIG-IP LTM : Local Traffic Manager

Alphorm.com Formation pfSense: Le firewall open source de référence
Alphorm.com Formation pfSense: Le firewall open source de référenceAlphorm.com Formation pfSense: Le firewall open source de référence
Alphorm.com Formation pfSense: Le firewall open source de référenceAlphorm
 
F5 ltm administering big ip v11
F5 ltm administering big ip v11F5 ltm administering big ip v11
F5 ltm administering big ip v11Amine Haddanou
 
alphorm.com - Formation Configuration Exchange 2010 (70-662)
alphorm.com - Formation Configuration Exchange 2010 (70-662)alphorm.com - Formation Configuration Exchange 2010 (70-662)
alphorm.com - Formation Configuration Exchange 2010 (70-662)Alphorm
 
Alphorm.com Formation Stormshield version 3 - Comprendre les mises à jour
Alphorm.com Formation Stormshield version 3 - Comprendre les mises à jourAlphorm.com Formation Stormshield version 3 - Comprendre les mises à jour
Alphorm.com Formation Stormshield version 3 - Comprendre les mises à jourAlphorm
 
Alphorm.com Formation Cisco CCNA v3 : mise à jour
Alphorm.com Formation Cisco CCNA v3 : mise à jourAlphorm.com Formation Cisco CCNA v3 : mise à jour
Alphorm.com Formation Cisco CCNA v3 : mise à jourAlphorm
 
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020SEO CAMP
 
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : Conf...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : Conf...Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : Conf...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : Conf...Alphorm
 
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEO
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEOCore Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEO
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEOWeLoveSEO
 
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...CERTyou Formation
 
alphorm.com - Formation Hyper-V & SCVMM 2008 R2 (70-659)
alphorm.com - Formation Hyper-V & SCVMM 2008 R2 (70-659)alphorm.com - Formation Hyper-V & SCVMM 2008 R2 (70-659)
alphorm.com - Formation Hyper-V & SCVMM 2008 R2 (70-659)Alphorm
 
Mannuel_Attaque_VoIP
Mannuel_Attaque_VoIPMannuel_Attaque_VoIP
Mannuel_Attaque_VoIPBelkacem KAID
 
H023 g formation-ibm-platform-lsf-9-1-configuration-avancee-et-administration...
H023 g formation-ibm-platform-lsf-9-1-configuration-avancee-et-administration...H023 g formation-ibm-platform-lsf-9-1-configuration-avancee-et-administration...
H023 g formation-ibm-platform-lsf-9-1-configuration-avancee-et-administration...CERTyou Formation
 
Biz talk summit devops - monitoring
Biz talk summit   devops - monitoringBiz talk summit   devops - monitoring
Biz talk summit devops - monitoringRadoine Douhou
 
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linux
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linuxZv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linux
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linuxCERTyou Formation
 
Implémentation de la QoS au sein d'un IP/MPLS - Présentation
Implémentation de la QoS au sein d'un IP/MPLS - PrésentationImplémentation de la QoS au sein d'un IP/MPLS - Présentation
Implémentation de la QoS au sein d'un IP/MPLS - PrésentationRihab Chebbah
 
Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Cellenza
 
Les nouveautés de PrestaShop 9 par la team PrestaShop - FoP Day 2023
Les nouveautés de PrestaShop 9 par la team PrestaShop - FoP Day 2023Les nouveautés de PrestaShop 9 par la team PrestaShop - FoP Day 2023
Les nouveautés de PrestaShop 9 par la team PrestaShop - FoP Day 2023ChristopheVidal15
 
Kiwiparty 2011 - Optimisation des sites internet
Kiwiparty 2011 - Optimisation des sites internetKiwiparty 2011 - Optimisation des sites internet
Kiwiparty 2011 - Optimisation des sites internetDevclic
 
E4 : Conception et maintenance de solutions informatiques
E4 : Conception et maintenance de solutions informatiquesE4 : Conception et maintenance de solutions informatiques
E4 : Conception et maintenance de solutions informatiquesChristopherHANOT
 

Similaire à Alphorm.com Formation F5 BIG-IP LTM : Local Traffic Manager (20)

Alphorm.com Formation pfSense: Le firewall open source de référence
Alphorm.com Formation pfSense: Le firewall open source de référenceAlphorm.com Formation pfSense: Le firewall open source de référence
Alphorm.com Formation pfSense: Le firewall open source de référence
 
F5 ltm administering big ip v11
F5 ltm administering big ip v11F5 ltm administering big ip v11
F5 ltm administering big ip v11
 
alphorm.com - Formation Configuration Exchange 2010 (70-662)
alphorm.com - Formation Configuration Exchange 2010 (70-662)alphorm.com - Formation Configuration Exchange 2010 (70-662)
alphorm.com - Formation Configuration Exchange 2010 (70-662)
 
Alphorm.com Formation Stormshield version 3 - Comprendre les mises à jour
Alphorm.com Formation Stormshield version 3 - Comprendre les mises à jourAlphorm.com Formation Stormshield version 3 - Comprendre les mises à jour
Alphorm.com Formation Stormshield version 3 - Comprendre les mises à jour
 
Alphorm.com Formation Cisco CCNA v3 : mise à jour
Alphorm.com Formation Cisco CCNA v3 : mise à jourAlphorm.com Formation Cisco CCNA v3 : mise à jour
Alphorm.com Formation Cisco CCNA v3 : mise à jour
 
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020
Core web vitals pour unifier UX et SEO - Stephane Rios - SEO Camp'us paris 2020
 
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : Conf...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : Conf...Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : Conf...
Alphorm.com Formation Mettre en oeuvre Cisco MPLS (CCNP SP et CCIE SP) : Conf...
 
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEO
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEOCore Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEO
Core Web Vitals, les indicateurs de vitesse qui réconcilient UX et SEO
 
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...
Zv10 g formation-ibm-z-vm-et-linux-pour-zseries-connectivite-et-gestion-du-sy...
 
alphorm.com - Formation Hyper-V & SCVMM 2008 R2 (70-659)
alphorm.com - Formation Hyper-V & SCVMM 2008 R2 (70-659)alphorm.com - Formation Hyper-V & SCVMM 2008 R2 (70-659)
alphorm.com - Formation Hyper-V & SCVMM 2008 R2 (70-659)
 
Mannuel_Attaque_VoIP
Mannuel_Attaque_VoIPMannuel_Attaque_VoIP
Mannuel_Attaque_VoIP
 
H023 g formation-ibm-platform-lsf-9-1-configuration-avancee-et-administration...
H023 g formation-ibm-platform-lsf-9-1-configuration-avancee-et-administration...H023 g formation-ibm-platform-lsf-9-1-configuration-avancee-et-administration...
H023 g formation-ibm-platform-lsf-9-1-configuration-avancee-et-administration...
 
Biz talk summit devops - monitoring
Biz talk summit   devops - monitoringBiz talk summit   devops - monitoring
Biz talk summit devops - monitoring
 
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linux
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linuxZv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linux
Zv06 g formation-ibm-z-vm-et-linux-pour-zseries-bases-vm-pour-linux
 
Implémentation de la QoS au sein d'un IP/MPLS - Présentation
Implémentation de la QoS au sein d'un IP/MPLS - PrésentationImplémentation de la QoS au sein d'un IP/MPLS - Présentation
Implémentation de la QoS au sein d'un IP/MPLS - Présentation
 
Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1
 
Les nouveautés de PrestaShop 9 par la team PrestaShop - FoP Day 2023
Les nouveautés de PrestaShop 9 par la team PrestaShop - FoP Day 2023Les nouveautés de PrestaShop 9 par la team PrestaShop - FoP Day 2023
Les nouveautés de PrestaShop 9 par la team PrestaShop - FoP Day 2023
 
Kiwiparty 2011 - Optimisation des sites internet
Kiwiparty 2011 - Optimisation des sites internetKiwiparty 2011 - Optimisation des sites internet
Kiwiparty 2011 - Optimisation des sites internet
 
Propostion un Iaas
Propostion un IaasPropostion un Iaas
Propostion un Iaas
 
E4 : Conception et maintenance de solutions informatiques
E4 : Conception et maintenance de solutions informatiquesE4 : Conception et maintenance de solutions informatiques
E4 : Conception et maintenance de solutions informatiques
 

Plus de Alphorm

Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm
 
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...Alphorm
 
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm
 
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm
 
Alphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm
 
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm
 
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord InteractifAlphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord InteractifAlphorm
 
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm
 
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm
 
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm
 
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm
 
Alphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm
 
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm
 
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm
 
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm
 
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm
 
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm
 
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm
 
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm
 
Alphorm.com Formation Power BI : Analyse et Visualisation de Données
Alphorm.com Formation Power BI : Analyse et Visualisation de DonnéesAlphorm.com Formation Power BI : Analyse et Visualisation de Données
Alphorm.com Formation Power BI : Analyse et Visualisation de DonnéesAlphorm
 

Plus de Alphorm (20)

Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
Alphorm.com Formation Microsoft 365 (MS-500) : Administrateur Sécurité - Prot...
 
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
Alphorm.com Formation Google Sheets : Créer un Tableau de Bord Collaboratif a...
 
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à ZAlphorm.com Formation Vue JS 3 : Créer une application de A à Z
Alphorm.com Formation Vue JS 3 : Créer une application de A à Z
 
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'ArchitecturesAlphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
Alphorm.com Formation Blockchain : Maîtriser la Conception d'Architectures
 
Alphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion CommercialeAlphorm.com Formation Sage : Gestion Commerciale
Alphorm.com Formation Sage : Gestion Commerciale
 
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objetAlphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
Alphorm.com Formation PHP 8 (2/6) : L'héritage en orienté objet
 
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord InteractifAlphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
Alphorm.com Formation Excel 2019 : Concevoir un Tableau de Bord Interactif
 
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style IsométriqueAlphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
Alphorm.com Formation Maya 3D : Créer un Design d'intérieur au Style Isométrique
 
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à NiveauAlphorm.com Formation VMware vSphere 7 : La Mise à Niveau
Alphorm.com Formation VMware vSphere 7 : La Mise à Niveau
 
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
Alphorm.com Formation Apprendre les bonnes pratiques de CSS avec BEM : OOCSS ...
 
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes MobilesAlphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
Alphorm.com Formation Unity : Monétiser votre jeu 3D sur les plateformes Mobiles
 
Alphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POOAlphorm.com Formation PHP 8 : Les bases de la POO
Alphorm.com Formation PHP 8 : Les bases de la POO
 
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
Alphorm.com Formation Power BI : Transformation de Données avec DAX et Power ...
 
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
Alphorm.com Formation Techniques de Blue Teaming : L'Essentiel pour l'Analyst...
 
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
Alphorm.com Formation Améliorer le développement avec CSS-in-JS _ Styled Comp...
 
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
Alphorm.com Formation Unity (6/7) : Maitriser l'Intelligence Artificielle de ...
 
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBootAlphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
Alphorm.com Formation Architecture Microservices : Jenkins et SpringBoot
 
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et ServicesAlphorm.com Formation Active Directory 2022 : Multi Sites et Services
Alphorm.com Formation Active Directory 2022 : Multi Sites et Services
 
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition APIAlphorm.com Formation Vue JS 3 : Exploiter la Composition API
Alphorm.com Formation Vue JS 3 : Exploiter la Composition API
 
Alphorm.com Formation Power BI : Analyse et Visualisation de Données
Alphorm.com Formation Power BI : Analyse et Visualisation de DonnéesAlphorm.com Formation Power BI : Analyse et Visualisation de Données
Alphorm.com Formation Power BI : Analyse et Visualisation de Données
 

Alphorm.com Formation F5 BIG-IP LTM : Local Traffic Manager

  • 1. Formation F5 BIG-IP Local Traffic Manager Une formation Mohamed Amine KADIMI
  • 3. Plan de la formation Une formation 1. Traitement du trafic sur F5 BIG-IP 2. Comprendre et configurer le Load Balancing 3. Comprendre et utiliser le Monitoring avancé 4. Utiliser les options de persistance avancées 5. Tuning du Trafic 6. Utiliser les iRules et les Local Traffic Policies 7. Administration du BIG-IP 8. Troubleshooting du traffic 9. Utiliser les iApps 10. Implémenter la sécurité sur F5 BIG-IP
  • 4. Public concerné Une formation Administrateurs réseau et sécurité Ingénieurs préparant un cursus de certification F5 Personnes avides de renforcer leurs connaissances
  • 5. Connaissances requises Une formation TCP/IP Communication client/serveur Les bases de la configuration d’un F5 BIG-IP
  • 7. Présentation du Lab Une formation Mohamed Amine KADIMI
  • 8. Plan Le schéma du Lab Setup sur VMware Workstation OS et Licence F5 Une formation
  • 9. Le schéma du Lab Une formation Votre PC VM F5 VM Linux
  • 11. Télécharger l’image ova : downloads.f5.com Générer une licence d’évaluation : f5.com/trials OS et Licence F5 Une formation
  • 12. Revue du traitement du trafic sur F5 BIG-IP Une formation Mohamed Amine KADIMI
  • 13. Plan Rappel de l’architecture Full-Proxy Les objets (Node, Member, Pool, VS) Revoir les profils Rappeler les notions de NAT/SNAT Revoir les bases du Monitoring Cheminement des paquets en réseau Une formation
  • 15. Une formation L’architecture Full Proxy SYN SYN-ACK ACK HTTP_GET / SYN SYN-ACK ACK HTTP_GET / HTTP_RESPONSE HTTP_RESPONSE
  • 16. Une formation Les Node, Member, Pool, VS 172.16.10.1 172.16.10.2 172.16.10.3 172.16.10.1:80 172.16.10.2:80 172.16.10.3:80 10.10.10.10:80 172.16.10.1:443 172.16.10.2:443 172.16.10.3:8443 10.10.10.10:443 HTTP_VS  HTTP_Pool HTTPS_VS  HTTPS_Pool
  • 18. Une formation NAT/SNAT NAT • Mapping One-to-One bidirectionnel • Pas de load balancing • Pas de notions de ports SNAT • Mapping Many-to-One unidirectionnel • Translate l’adresse IP source • Résout les problèmes de routage
  • 20. Une formation Cheminement des paquets SNAT IP 172.16.10.20 Default GW 172.16.10.1 172.16.10.2 172.16.10.3 172.16.10.1:80 172.16.10.2:80 172.16.10.3:80 216.34.94.17:80 src: 172.16.10.20:10023 dst: 172.16.10.1:80 src: 172.16.10.1:80 dst: 172.16.10.20:10023 54.34.90.90 src: 54.34.90.90:10023 dst: 216.34.94.17:80 src: 216.34.94.17:80 dst: 54.34.90.90:10023
  • 21. Comment F5 Big-IP traite le trafic entrant Une formation Mohamed Amine KADIMI
  • 22. Plan Comprendre l’action de F5 sur le trafic entrant Découvrir l’ordre de traitement du trafic entrant Une formation
  • 23. Une formation Action par défaut 172.16.10.1 172.16.10.2 172.16.10.3 172.16.10.1:80 172.16.10.2:80 172.16.10.3:80 10.10.10.10:80 Default Deny Trafic non “explicitement autorisé” est rejeté
  • 24. Une formation Actions Accept et Deny Accept • Si et seulement si le trafic est explicitement autorisé • VS, (S)NAT, Self IP … Deny • Action par défaut • BIG-IP  Firewall
  • 25. Une formation Ordre de traitement du trafic 1 3 2 4 5 6 7 1. Le trafic correspond-il a une connexion existante dans la table de connexion? 2. Le trafic correspond-il a une règle du Packet Filter? 3. Est-il a destination d’un Virtual Server? 4. Le trafic correspond-il a une configuration SNAT? 5. Le trafic correspond-il a une configuration NAT? 6. Est-il a destination d’une Self IP en écoute pour ce trafic? 7. Si rien ne match, l’action par défaut est de rejeter le trafic
  • 26. Comprendre l'ordre de priorité des Virtual Servers Une formation Mohamed Amine KADIMI
  • 27. Plan Pourquoi appréhender l’ordre de priorité des VS Comprendre l’ordre de priorité des VS Comprendre l’impact de la désactivation d’un VS sur l’ordre de priorité Une formation
  • 28. Une formation Pourquoi l’ordre de priorité Un VS est défini par • Son adresse IP et son port de destination • Et par l’adresse IP source (càd celle du client) Exemple: (src: 0.0.0.0/0; dst: 10.10.100.10:80) Les adresses IP et ports peuvent être des sous-réseau ou des « wildcard » • Pour élargir la plage du trafic correspondant au VS • Pour filtrer par adresse source Exemple: (src: 172.16.10.0/24; dst: 0.0.0.0:*)
  • 29. Une formation Pourquoi l’ordre de priorité Risque de collision • Lorsqu’un trafic à destination du BIG-IP correspond à plusieurs VS Exemple: Trafic entrant: (src: 10.10.10.11; dst 1.2.3.4:80) Quel VS prendra en charge? Source Destination VS 1 0.0.0.0 10.10.100.10:80 VS 2 10.10.10.0/24 0.0.0.0:80 VS 3 10.10.10.0/24 0.0.0.0:0
  • 30. Une formation L’ordre de priorité des VS F5 détermine le VS en vérifiant dans l’ordre: • L’adresse de destination du VS • La plus spécifique d’abord (LPF) • L’adresse source du VS • La plus spécifique d’abord (LPF) • Le port d’écoute du VS Deux VS ne peuvent avoir les trois identiques
  • 31. Une formation L’ordre de priorité des VS Trafic entrant: (src: 10.10.10.11; dst 1.2.3.4:80) Quel VS prendra en charge? VS 2 Source Destination VS 1 0.0.0.0 10.10.10.10:80 VS 2 10.10.10.0/24 0.0.0.0/0:80 VS 3 10.10.10.0/24 0.0.0.0/0:0
  • 32. Une formation L’ordre de priorité des VS src: 10.10.10.11 dst 10.10.10.10:80 src: 10.10.10.11 dst 1.2.3.4:80 src: 52.2.52.2 dst 10.10.10.10:443 src: 52.2.52.2 dst 10.10.10.10:80 src: 10.10.10.100 dst 10.10.10.11:443 Source Destination VS 1 0.0.0.0/0 10.10.10.10/32:80 VS 2 0.0.0.0/0 10.10.10.0/24:80 VS 3 10.10.10.0/24 0.0.0.0/0:* VS 4 10.10.10.0/28 0.0.0.0/0:* VS 5 0.0.0.0/0 0.0.0.0/0:* VS 1 VS 4 VS 5 VS 1 VS 3 K14800
  • 33. Une formation Impact de la désactivation d’un VS sur la priorité Par défaut, un VS désactivé continue à matcher • Il continue à être prioritaire s’il est le plus spécifique • Il est donc sélectionné pour traiter le trafic • Le système envoie des RESET au lieu de traiter le trafic  Impossible de le bypasser vers un VS moins spécifique Pour pouvoir bypasser un VS désactivé: • Il faut changer la variable tm.continuematching modify /sys db tm.continuematching value true
  • 34. Découvrir les différents types de Virtual Servers Une formation Mohamed Amine KADIMI
  • 35. Plan Redécouvrir le VS Standard Comprendre le VS Forwarding Comprendre les VS Performance Découvrir les autres types de VS Une formation
  • 36. Une formation Le Standard VS Il est le type de VS par défaut en mode GUI Il permet de faire du load balancing vers un pool de serveurs Il fonctionne en mode Full-Proxy Il permet le maximum de fonctionnalités et de profils Optimisation TCP Contrôle et optimisation L7 (http, ftp, sip…) Offloading SSL …  A utiliser lorsqu’on veut profiter du max d’optimisations
  • 37. Une formation Le Forwarding (IP) VS Il permet d’utiliser le BIG-IP en tant que routeur Pas de Load-Balancing Pas de mode Full-Proxy Il permet très peu de fonctionnalités et de profils Optimisation TCP, QoS, NAT64 Pas de contrôle ni d’optimisation L7 Pas d’offloading SSL  A utiliser si on souhaite uniquement router le trafic
  • 38. Une formation Le Performance (Layer 4) VS Il permet de faire du Load-Balancing Il est associé à un profil d’accélération FastL4 Qui optimise les performances au niveau de la couche 4 En faveur des fonctionnalités de couches supérieures Pour les plateformes disposant du chipset ePVA, l’accélération L4 se fait au niveau hardware  A utiliser si on n’a pas besoin de fonctionnalités L7 pour profiter du maximum de vitesse de traitement
  • 39. Une formation Le Performance (HTTP) VS Il permet de faire du Load-Balancing Il est associé à un profil d’accélération FastHTTP Ce profil combine certaines options du profil HTTP à d’autres options d’accélération Il optimise le temps de traitement des requêtes HTTP Mais les fonctionnalités possible restent très limitées (pas de compression, ni de cache, ni d’offloading SSL)  Ne doit être utilisé que lorsque les conditions de trafic sont idéales (pas d’erreur ou de paquets en désordre)
  • 40. Une formation Les autres types de VS Forwarding (Layer 2) • Permet de « bridger » deux réseaux sans changer l’adressage Stateless • N’utilise pas de table de sessions, utile pour le trafic UDP Internal • VS qui sert à communiquer avec un serveur ICAP DHCP Message Routing Reject
  • 41. Configurer le Load Balancing avec les algorithmes statiques Une formation Mohamed Amine KADIMI
  • 42. Plan Comprendre les algorithmes de LB statiques Comprendre l’algorithme Round Robin Comprendre l’algorithme Ratio Une formation
  • 43. Une formation Algorithmes statiques de LB Les algorithmes statiques distribuent le trafic selon un pattern fixe et prédictible Deux algorithmes statiques sur BIG-IP 1. Round Robin 2. Ratio
  • 44. Une formation Round Robin LB Les requêtes sont distribuées dans l’ordre équitablement  Utiliser si les serveurs ont les mêmes capacités 654321
  • 45. 7 Une formation Le Ratio Load Balancing Les requêtes sont distribuées selon des coefficients fixes attribués aux pool members  Utiliser si les serveurs ont des capacités différentes 654321 141312111098 4 2 1
  • 46. Configurer le Load Balancing avec les algorithmes dynamiques Une formation Mohamed Amine KADIMI
  • 47. Plan Comprendre le fonctionnement des algorithmes de LB dynamique Comprendre les principaux algorithmes de LB dynamique Une formation
  • 48. Une formation Algorithmes dynamiques de LB Ils se basent sur des métriques en temps réel pour distribuer le trafic : • Nombre de connexions • Performance • … Plusieurs algorithmes selon les métriques
  • 49. Une formation Least Connections Le serveur ayant le moins de connexions (L4) reçoit la requête  Utiliser pour les connexions de longue durée si les serveurs ont les mêmes capacités 654321 75 78 77767778 78626364 64
  • 50. Une formation Fastest Le serveur ayant le moins de requêtes (L7) en suspens reçoit la prochaine requête  Utile quand les serveurs n’ont pas les mêmes temps de réponse (latence)  Un profil L7 est obligatoire pour fonctionner correctement 654321 75 78 77767778 78626364 64
  • 51. Une formation Observed BIG-IP assigne des ratios dynamiques selon le nombre de connexions observées sur une seconde  Utile pour des petits pools dont les serveurs n’ont pas les mêmes capacités 90 25 604050 709852 20 0 1 2 3 seconds R=3 R=2R=1R=3 R=2R=1R=2 R=2 R=3
  • 52. Une formation Predictive BIG-IP assigne des ratios dynamiques (1 à 4) en observant la tendance des connexions  Les ratios sont ajustés plus agressivement que Observed, le résultat peut être meilleur pour certaines applications 90 25 60 70 6055 0 1 2 seconds R  R R 
  • 53. Une formation Weighted Least Connections Basé sur la capacité du serveur déterminée par la formule  Utile quand les serveurs n’ont pas la même capacité et qu’on peut déterminer la limite de connexion 200 150 100300 60 40 CL=500 CL=200CL=1000 20% 30% 50%30% 12% 20%
  • 54. Une formation Least Sessions Le serveur ayant le moins d’entrées dans la table de persistance est sélectionné  Nécessite un profil utilisant la table de persistance (persistance par IP source ou Universal) 654321 75 78 77767778 78626364 64
  • 55. Une formation Autres algorithmes Ratio Least Connections Least Connections mais proportionnel aux ratios définis Dynamic Ratio Ratios assignés et mis à jour en temps réel en se basant sur des métriques collectées par des monitors SNMP, WMI, ou RealServer
  • 56. Comprendre la différence entre le Load Balancing par Node et par Member Une formation Mohamed Amine KADIMI
  • 57. Plan Différencier entre le Load Balancing par Node et par Member Assimiler par l’exemple la différence entre les deux modes Une formation
  • 58. Une formation Node vs Member LB Baser la décision de Load Balancing sur des éléments du Member ou du Node parent? Exemples: • Ratio du Member (spécifique) ou du Node (global) • Nombre de connexions actives du Member ou du Node Notion importante si des Nodes sont utilisés dans plusieurs pool
  • 59. Une formation Node vs Member : Exemple 1 Algorithme de LB : Ratio (Member) Distribution de 100 requêtes? 172.16.10.1 172.16.10.2 172.16.10.3 172.16.10.1:80 172.16.10.2:80 172.16.10.3:80R=3 R=6R=1 R=2 R=2R=1 30 6010
  • 60. Une formation Node vs Member: Exemple 2 Algorithme de LB: Ratio (Node) Distribution de 100 requêtes? 172.16.10.1 172.16.10.2 172.16.10.3 172.16.10.1:80 172.16.10.2:80 172.16.10.3:80R=3 R=6R=1 R=2 R=2R=1 40 4020
  • 61. Une formation Node vs Member : Exemple 3 Algorithme de LB: Least Connections (Member) Distribution de 5 requêtes HTTP? Puis 5 autres? 172.16.10.1 172.16.10.2 172.16.10.3 172.16.10.1:80 172.16.10.2:80 172.16.10.3:80 172.16.10.1:443 172.16.10.2:443 172.16.10.3:844355 4020 15 2038 54321 HTTP HTTPS 20
  • 62. Une formation Node vs Member : Exemple 4 Algorithme de LB : Least Connections (Node) Distribution de la prochaine requête HTTP? 172.16.10.1 172.16.10.2 172.16.10.3 172.16.10.1:80 172.16.10.2:80 172.16.10.3:80 172.16.10.1:443 172.16.10.2:443 172.16.10.3:844355 4020 15 2038 1 HTTP HTTPS 58 70 60
  • 63. Utiliser les Priority Group Activation et Fallback Host Une formation Mohamed Amine KADIMI
  • 64. Plan Comprendre la Priority Group Activation Utiliser le Fallback Host Une formation
  • 65. Une formation Priority Group Activation L’algorithme de LB décide quel membre du pool recevra le trafic… Mais comment diviser les membres d’un même pool en sous-groupes : • Membres actifs (éligibles à recevoir du trafic) • Membres standby (prêts à recevoir le trafic en cas de besoin)  Priority Group Activation
  • 66. Une formation Priority Group Activation PG=10 PG=10 PG=10 PG=5 PG=5 • Assigner les priorités aux membres • Utiliser la Priority Group Activation avec le « Less than »
  • 67. Une formation Priority Group Activation PG=10 PG=10 PG=10 PG=5 PG=5 PG=1 PG=1
  • 68. Une formation Fallback Host Mécanisme de dernier recours lorsqu’aucun pool membre n’est disponible • Envoie un HTTP REDIRECT au client • Fonctionne avec les VS avec profil HTTP uniquement
  • 69. Paramétrer les options avancées des Monitors Une formation Mohamed Amine KADIMI
  • 70. Plan Configurer les options avancées des Interval et Timeout Utiliser les Alias Address et Alias Service Port Une formation
  • 71. Une formation Options d’Interval et Timeout Interval : fréquence Timeout : délai avant down Up Interval • Fréquence différente quand le Member est Up Time Until Up • Délai d’attente avant de passer de Down à Up • Sinon, le serveur est déclaré Up dès la première réponse.
  • 72. Permet de monitorer un objet différent du Node/Member L’état de l’objet monitoré est remonté au Node/Member Par défaut, un Monitor utilise l’IP et le port du Node/Member auquel il est associé Il est possible de spécifier explicitement l’IP ou le port à monitorer Une formation Alias Address et Port 172.16.10.1:80 172.16.10.2:80 172.17.17.31
  • 73. Monitorer des Pool Members dont le fonctionnement dépend d’autres serveurs(ices) • Application e-commerce avec des pages en HTTP et d’autres en HTTPS. Si le Member en HTTPS est down, on souhaiterait également rendre indisponible le Member HTTP • Monitorer une adresse publique sur internet pour déterminer le statut d’un routeur local Une formation Alias Address et Port – Use Cases
  • 74. Une formation Alias Address et Port – Récap Alias Address Alias Service Port Member/Node associé Objet Monitoré * * 172.16.10.1 172.16.10.1 * * 172.16.10.1:80 172.16.10.1:80 * 443 172.16.10.1:80 172.16.10.1:443 172.16.20.1 * 172.16.10.1:80 172.16.20.1:80 172.16.20.1 443 172.16.10.1:80 172.16.20.1:443 Alias Address Alias Service Port Member/Node associé Objet Monitoré * * 172.16.10.1 * * 172.16.10.1:80 * 443 172.16.10.1:80 172.16.20.1 * 172.16.10.1:80 172.16.20.1 443 172.16.10.1:80
  • 75. Configurer un Monitor externe Une formation Mohamed Amine KADIMI
  • 76. Plan Pourquoi utiliser un Monitor externe Configurer un Monitor externe Développer un Monitor Une formation
  • 77. Une formation Pourquoi utiliser un Monitor externe Utiliser un Monitor externe • Quand aucun Monitor ne peut satisfaire le besoin Ne jamais utiliser un Monitor externe quand on peut utiliser un Monitor intégré • Impacte la performance, pour chaque instance du Monitor un shell est « forké »
  • 78. Une formation Configurer un Monitor externe 1. Importer le script externe (shell, perl …) 2. Créer un Monitor de type External • Référencer le script externe • Passer des arguments et des variables au script 3. Associer le monitor
  • 79. Une formation Développer un Monitor externe – Notes Les arguments du scripts sont • $arg0 : nom du script • $arg1 : ip du membre • $arg2 : port du membre • $arg3 … $argN : les arguments passés aux scripts Attention, l’IP du Node est représentée en notation IPv6 transitionnelle • "::ffff:10.0.0.1" correspond au nœud 10.0.0.1
  • 80. Une formation Développer un Monitor externe – Output L’output du script indique le statut du membre • Si le script ne retourne aucune output  Membre down • Si le script retourne n’importe quelle output  Membre up Attention, toutes ces outputs indiquent que le Member est UP • Server Up • Server Down • « Si tu dors et que tu rêves que tu dors, il faut que tu te réveilles deux fois pour te lever »
  • 81. Désactiver et mettre Offline un serveur Une formation Mohamed Amine KADIMI
  • 82. Plan Distinguer entre la table de connexions et la table de persistance Comprendre la différence entre les actions « Disable » et « Force Offline » Une formation
  • 83. Une formation Table de connexions Contient toutes les connexions actives identifiées par leurs propriétés uniques Une entrée expire après la fin normale de la connexion ou l’écoulement du IDLE_TIMEOUT
  • 84. Une formation Table de persistance Contient les entrées persistantes lorsque la persistance est configurée (uniquement pour certains types de persistance) Une entrée expire après l’écoulement du Timeout de persistance
  • 85. Force Offline: Aucune nouvelle connexion. Uniquement les connexions en cours sont traitées Disable: connexions en cours + les nouvelles connexions si elles correspondent à une entrée persistante Aucune, BIG-IP continue à traiter les connexions actives Une formation Disable vs Force Offline Quelles connexions existantes terminer? Quelles nouvelles connexions accepter?
  • 86. Utiliser la persistance SSL Une formation Mohamed Amine KADIMI
  • 87. Plan Définir la persistance SSL Configurer la persistance SSL Une formation
  • 88. Une formation Type de persistance basée sur la SSL Session ID • “An arbitrary byte sequence chosen by the server to identify an active or resumable session state” (rfc5246) • Indispensable au succès d’une session SSL • Transmis en clair  Possibilité d’utiliser ce type même si BIG-IP ne déchiffre pas le traffic SSL • Le plus souvent utilisé sur un VS en SSL pass-through • Peut-être combiné à une autre persistance pour plus de fiabilité Définition de la persistance SSL
  • 89. Une formation Définition de la persistance SSL
  • 90. Une formation Configurer la persistance SSL Utiliser le profil SSL préexistant ou créer un nouveau profil Associer le profil au VS • Possible d’associer un profil de fallback
  • 91. Utiliser la persistance Universal Une formation Mohamed Amine KADIMI
  • 92. Plan Définir la persistance Universal Configurer la persistance Universal Étudier un exemple de persistance Universal Une formation
  • 93. Une formation Type de persistance utilisant les iRules • La clé de persistance peut être n’importe quelle chaîne de caractères du paquet • Appelée également la persistance UIE  A utiliser lorsqu’on souhaite persister en se basant sur une clé (ou plusieurs) non fournie par les profils standards • Header HTTP (exemple: X-Forwarded-For) • Cookie de session inséré par le serveur (exemple: JSESSIONID) • … Définition de la persistance Universal
  • 94. Une formation Identifier la clé à utiliser pour persister Créer une iRule pour exécuter l’action de persistance Créer un profil de persistance de type Universal référençant l’iRule créée Associer le profil au VS • Possible d’associer un profil de fallback Configurer la persistance Universal
  • 95. Une formation when HTTP_REQUEST { set xff {[HTTP::header X-Forwarded-For] if { $xff != "" } { persist uie $xff } } Exemple de persistance Universal
  • 96. Configurer les options Match Across Une formation Mohamed Amine KADIMI
  • 97. Plan L’intérêt d’utiliser les options Match Across Utiliser Match Across Services Utiliser Match Across Virtual Servers Utiliser Match Across Pools Une formation
  • 98. Une formation La persistance est par défaut strictement liée au VS auquel le profil est associé Intérêt des options Match Across
  • 99. Une formation TMM 0 Mode source-address Value 10.10.10.50 Age (sec.) 5 Virtual Name /Common/HTTP_vs Virtual Addr 10.10.10.1:80 Node Addr 172.16.10.1:80 Pool Name /Common/HTTP_pool Client Addr 10.10.10.50 Intérêt des options Match Across
  • 100. Une formation 172.16.10.1 172.16.10.2 172.16.10.3 172.16.10.1:80 172.16.10.2:80 172.16.10.3:80 172.16.10.1:443 172.16.10.2:443 172.16.10.3:8443 HTTP HTTPS 10.10.10.1:80 10.10.10.1:443 Intérêt des options Match Across
  • 101. Une formation La persistance est par défaut strictement liée au VS auquel le profil est associé Certaines situations requièrent de persister l’utilisateur même s’il ne sollicite pas le même VS • Exemple : site utilisant HTTP et HTTPS Intérêt des options Match Across
  • 102. Une formation Match Across permet de partager et réutiliser la persistence entre VS différents • Match Across Services • Match Across Virtual Servers • Match Across Pools Intérêt des options Match Across
  • 103. Même IP virtuelle Services differents Une formation Match Across Services 172.16.10.1 172.16.10.2 172.16.10.3 172.16.10.1:80 172.16.10.2:80 172.16.10.3:80 172.16.10.1:443 172.16.10.2:443 172.16.10.3:8443 HTTP HTTPS 10.10.10.1:80 10.10.10.1:443
  • 104. Peu importe l’IP ou le service des VS Une formation Match Across Virtual Servers 172.16.10.1 172.16.10.2 172.16.10.3 172.16.10.1:80 172.16.10.2:80 172.16.10.3:80 172.16.10.1:443 172.16.10.2:443 172.16.10.3:8443 HTTP HTTPS 10.10.10.1:80 10.10.10.2:443
  • 105. Une formation Match Across Pools Réutilisation du pool associé à l’entrée de persistance Quand un VS est associé à plusieurs pools Même si les conditions de sélection du pool ne sont pas satisfaites
  • 106. Une formation Match Across Pools if { [HTTP::host] eq "abc.fr" } { pool FR_pool } elseif { [HTTP::host] eq "abc.de" } { pool DE_pool } VS = 10.10.10.1:80 Client 1.2.3.4 demande abc.fr  pool FR_pool Client 1.2.3.4 demande abc.de  pool FR_pool
  • 107. Une formation Match Across Pools if { [HTTP::host] eq "abc.fr" } { pool FR_pool } elseif { [HTTP::host] eq "abc.de" } { pool DE_pool } 10.10.10.1:80 FR_pool DE_pool
  • 108. Optimiser le trafic avec les profils TCP et OneConnect Une formation Mohamed Amine KADIMI
  • 109. Plan Découvrir les différentes options d’optimisation du trafic sur LTM Optimiser le protocole TCP Optimiser les connexions TCP avec le profil OneConnect Une formation
  • 110. Compressé Une formation Optimisation du trafic sur LTM Non compressé RAM Cache Chiffré Clair TCP Client TCP Server Multiple Optimisation HTTP SSL Optimisation TCP OneConnect (Connexion Reuse) Single
  • 111. Une formation Optimisation du protocole TCP – TCP Express Chaque système implémente la pile TCP/IP de sa propre manière La pile TCP/IP de F5 s’appelle TCP Express • Fait partie du TMOS • Fournit une multitude d’optimisations natives • S’adapte au contexte du trafic (client/serveur) • Automatique (aucune configuration requise)
  • 112. Une formation Optimisation du protocole TCP – Profils TCP Permet de personnaliser certaines options d’optimisation TCP Applicable par VS Contextuelle (Client/Server) Les profils fournis conviennent à la majorité des situations
  • 113. Une formation Optimisation avec le profil OneConnect OneConnect permet de minimiser les connexions TCP côté serveur • En agrégeant plusieurs connexions clients sur une même connexion serveur • Utilise les HTTP Keep-Alive • Un profil HTTP est fortement recommandé
  • 114. Une formation Optimisation avec le profil OneConnect Sans OneConnect OneConnect (1 client) OneConnect (plage de clients)
  • 115. Modifier le contenu des payload TCP/HTTP avec le profil Stream Une formation Mohamed Amine KADIMI
  • 116. Plan Définir le profil Stream Configurer un profil Stream Utiliser une iRule avec un profil Stream Une formation
  • 117. Une formation Définition du Stream Profile Effectue un rechercher/remplacer de toutes les occurrences d’une chaîne • S’exécute sur les requêtes et les réponses • Dans le payload TCP • Ou dans le payload HTTP uniquement • Fonctionne même si la chaîne à remplacer est transmise sur plusieurs segments TCP • Peut être contrôlé par une iRule pour s’exécuter selon une logique
  • 118. Une formation Configurer un Stream Profile Créer un nouveau profil de type Stream Associer le profil au VS
  • 119. Une formation Utiliser une iRule avec un profil Stream when HTTP_REQUEST { STREAM::disable } when HTTP_RESPONSE { if { SOME_CONDITION } { STREAM::expression {@origStr@newStr@} STREAM::enable } }
  • 120. Utiliser plusieurs iRules et définir les priorités d'exécution Une formation Mohamed Amine KADIMI
  • 121. Plan Utiliser ou pas plusieurs iRules Comprendre l’exécution des iRules Modifier l’ordre d’exécution des iRules Une formation
  • 122. Une formation Utiliser ou pas plusieurs iRules Segmenter les fonctionnalités Réduire la taille du code Réutiliser les iRules sélectivement Risque d’altérer la logique souhaitée • Duplication d’événements • Exécuter toutes les instructions? • Dans quel ordre?  Oui, si besoin, mais avec modération
  • 123. Une formation Comprendre l’exécution des iRules Quand une iRule est créée • Elle est validée et précompilée en « Bytecode » • Puis mise à disposition des TMM L’iRule est exécutée lorsqu’un événement qu’elle appelle se produit • Que se passe-t-il si plusieurs iRules sont associés aux VS?
  • 124. Une formation Comprendre l’exécution des iRules • Normalisation et réorganisation • Gestion des événements dupliqués When HTTP_ if {…} { … } When HTTP_ if {…} { … } When HTTP_ if {…} { … } 0 PUSH 2 JUMP 6 6 IT 15 POP Compilation
  • 125. Une formation Modifier l’ordre d’exécution des iRules Pour garantir le résultat souhaité • Il est recommandé de définir explicitement l’ordre d’exécution des événements dupliqués  Commande « priority » priority XXX when EVENT priority YYY { … }
  • 126. Une formation Modifier l’ordre d’exécution des iRules when HTTP_RESPONSE priority 10 { if { [HTTP::status] equals "404" } { HTTP::redirect "/404.php" } } when HTTP_RESPONSE priority 100 { if { [HTTP::status] starts_with "4" } { HTTP::redirect "/error.php" } }
  • 127. Une formation Modifier l’ordre d’exécution des iRules priority 100 when CLIENT_ACCEPTED { ... } when HTTP_RESPONSE { ... } priority 10 when HTTP_RESPONSE { ... }
  • 128. Une formation Modifier l’ordre d’exécution des iRules La priorité par défaut est 500 Les valeurs possibles : de 1 à 1000 Un nombre plus bas indique une priorité plus haute La priorité ne change pas l’ordre d’exécution d’événements distincts
  • 129. Comprendre et utiliser les Local Traffic Policies Une formation Mohamed Amine KADIMI
  • 130. Plan Découvrir les Local Traffic Policies Découvrir les principaux composants des Local Traffic Policies Configurer et modifier un Traffic Policy Une formation
  • 131. Une formation Découvrir les Local Traffic Policies Manipulent le trafic transitant par un VS Basées sur des conditions-actions Ne requièrent pas de connaissances TCL Supportées nativement Plus performantes que les iRules, mais moins riches
  • 132. Policy 1 Une formation Découvrir les Local Traffic Policies Conditions Actions Rule 1 Conditions Actions Rule 2 Conditions Actions Rule N Une Policy est composée de Rules • Les Rules définissent les conditions et les actions
  • 133. Une formation Configurer une Policy Pour modifier une Policy existante • Créer un Draft de celle-ci, le configurer, puis le publier Créer la Policy Publier la Policy Associer la Policy au VS En tant que Draft Configurer Rules Devient utilisable et non configurable
  • 134. Utiliser les Data Group et les iFiles Une formation Mohamed Amine KADIMI
  • 135. Plan Découvrir les Local Traffic Policies Découvrir et utiliser les Data Groups Découvrir et utiliser les iFiles Une formation
  • 136. Une formation Découvrir les Data Group Listes <clé = valeur> enregistrées sur le disque Utilisées par les iRules • Plus de flexibilité • Meilleure performance • Read-Only
  • 137. Une formation Découvrir les Data Group Trois types, plusieurs usages : 1. Address • Exemples : IP Blacklist, IP Whitelist 2. String • Exemples : extensions, chemins 3. Integer • Exemples : ports, statuts HTTP
  • 138. Une formation Utiliser les Data Group Les opérations sur les Data Groups sont effectuées via la commande « class » • Plusieurs options class match class search … • class match suffit pour la plupart des cas • http://tiny.cc/f5class
  • 139. Une formation Utiliser les Data Group if {[class match [HTTP::host] ends_with tld_dg]} { set uri [class match -value [HTTP::host] ends_with tld_dg] HTTP::redirect "http://www.example.com$uri" } 1. Créer le Data Group 2. L’utiliser dans une iRule tld_dg
  • 140. Une formation Utiliser les Data Group when HTTP_RESPONSE { if {[string match {4??} [HTTP::status]]} { if {[class match [HTTP::status] equals errors_dg]}{ HTTP::redirect [class lookup [HTTP::status] errors_dg] } } } Que fait cette iRule? errors_dg
  • 141. Une formation Découvrir les iFiles Fichiers statiques uploadés sur F5 et qu’on peut utiliser dans les iRules • Distribuer aux clients une page d’erreur ou de maintenance • Distribuer une ou des images à la place du serveur • Offrir le téléchargement de fichiers statiques • Syntaxe : http://tiny.cc/f5ifiles
  • 142. Une formation Utiliser les iFiles when HTTP_REQUEST { if {[HTTP::uri] eq "/wpad.dat" } { HTTP::respond 200 content [ifile get wpad-file] } else if {[active_members [LB::server pool]] < 1} HTTP::respond 200 content [ifile get sorry-file] } } 1. Uploader le fichier sur F5 2. L’utiliser dans une iRule
  • 143. Configurer les utilisateurs et les partitions Une formation Mohamed Amine KADIMI
  • 144. Plan Découvrir la gestion des utilisateurs sur F5 BIG-IP Définir et configurer des utilisateurs Définir les rôles des utilisateurs Définir et configurer des partitions Une formation
  • 145. Une formation La gestion des utilisateurs La gestion des utilisateurs répond à • Qui a accès? • À quoi? • Avec quelles permissions? Ceci en définissant • Des utilisateurs • Ayant des rôles • Sur des partitions
  • 146. Une formation Les utilisateurs (Qui a accès?) Un utilisateur est un compte défini par • Username • Password • Partition Access • Accès à quelles partitions avec quels rôles? • Un rôle par partition • Terminal Access • Disabled, Advanced Shell, ou TMSH
  • 147. Une formation Les rôles (avec quelles permissions?) Les rôles permettent de définir un niveau d’autorisations accordé à l’utilisateur Un rôle contrôle : • Les types de ressources que l’utilisateur peut gérer • Les actions qu’il peut effectuer dessus Les rôle disponibles sont prédéfinis sur F5
  • 148. Une formation Les rôles (avec quelles permissions?) Des niveaux d’accès de « Guest » jusqu’à « Administrator »
  • 149. Une formation Les partitions (accès à quoi?) Les partitions administratives sont des conteneurs logiques d’objets BIG-IP • Nodes, pools, VS, profils, certificats… Un utilisateur ayant accès à une partition a donc : • Accès aux objets de la partition • Avec le rôle associé à cette partition
  • 150. Une formation Les partitions (accès à quoi?)
  • 151. Une formation Les partitions (accès à quoi?) La partition par défaut est Common • Si aucune autre partition n’est définie, tous les objets sont créés dans Common • Tous les utilisateurs y ont accès, sauf si leur rôle est « No Access » • Une partition utilisateur peut référencer des objets résidant dans Common
  • 152. Une formation Les partitions (accès à quoi?) /Common Pool http_pool Profile client_ssl /PartProd VS_PROD (10.1.1.10) Pool http_pool Profile client_ssl /PartDev VS_DEV (10.1.1.20) Pool http_pool Profile client_ssl
  • 153. Configurer le logging et la supervision Une formation Mohamed Amine KADIMI
  • 154. Plan Introduction au logging sur F5 BIG-IP Passer en revue le logging local Configurer le logging syslog classique Configurer le High-Speed Logging (HSL) Configurer la supervision SNMP Une formation
  • 155. Une formation Le logging sur F5 BIG-IP Plusieurs types de Logs : • Événements système • Événements trafic (LTM, DNS, Packet filter…) • Audit (actions utilisateurs sur la config) Deux méthodes : 1. Logging syslog classique 2. High-Speed Logging (HSL)
  • 156. Une formation Le logging sur F5 BIG-IP Plusieurs destinations • Syslog local • Syslog distant • DB Mysql local • Autres (Splunk, HP Arcsight…)
  • 157. Une formation Le logging local Activé par défaut Utilise syslog-ng du système Linux Fichiers de Logs dans /var/log/ • /var/log/ltm • /var/log/asm • /var/log/gtm • /var/log/pktfilter • /var/log/audit • ...
  • 158. Une formation Le logging local Chaque jour, les logs du jour précédent sont archivés 8 archives compressées sont conservées • ltm • ltm.1 • ltm.2.gz ltm.3.gz … ltm.9.gz • Pour les afficher: zcat /var/log/ltm.1.gz
  • 159. Une formation Logging Syslog classique • Configuration simplifiée • Un ou plusieurs serveurs Syslog • Pas de Load Balancing • UDP/514 par défaut • Niveau de log configurable • Utilise l’interface MGMT ou TMM (RD 0) • Non recommandé pour les gros volumes de Logs Syslog Servers
  • 160. Une formation High Speed Logging Méthode de logging recommandée Supporte plusieurs formats : • Syslog • Splunk • Arcsight Supporte l’envoi à plusieurs serveurs Supporte un filtrage plus avancé Utilise une interface TMM
  • 161. Une formation High Speed Logging Quatre types d’objets à définir 1. Log Filter 2. Log Publisher 3. Log Destination (optionnellement un Log Formatter) 4. Pool (Log Servers) Log Filter Log Publisher Log Destination (HSL) Pool of Servers Log Destination (Formatter)
  • 162. Une formation Supervision SNMP SNMP Access mode (Polling) • Read Only • Read Write SNMP Traps SNMP v1, v2c, v3 Polling (SET/GET) Traps
  • 163. Sauvegarder et restaurer la configuration avec les fichiers SCF Une formation Mohamed Amine KADIMI
  • 164. Plan Présenter les sauvegardes SCF Découvrir le contenu des fichiers SCF Créer un fichier SCF Déployer un fichier SCF Une formation
  • 165. Une formation Présentation des SCF (Single Configuration File) Sauvegarde de la configuration BIG-IP en un seul fichier texte • Non destinés à la sauvegarde/restauration du système • Utilisés pour répliquer une config sur plusieurs BIG-IP • Utiles pour migrer d’une plateforme à une autre
  • 166. Une formation Présentation des SCF (Single Configuration File) ltm pool /Common/HTTP_pool { load-balancing-mode ratio-node members { /Common/172.16.10.1:80 { address 172.16.10.1 } /Common/172.16.10.2:80 { address 172.16.10.2 } } monitor /Common/http }
  • 167. Une formation Contenu des SCF Tous les objets de la configuration BIG-IP • bigip_base.conf (Self IP, Vlans, Routes…) • bigip.conf (Nodes, Pools, VS, Profiles, Monitors, iRules, Traffic Policies...) • bigip_user.conf (comptes utilisateurs) • La config des modules (APM, ASM…) • Certains fichiers de config Linux
  • 168. Une formation Contenu des SCF Les fichiers SCF ne contiennent pas • Le contenu du dossier /config/filestore/ • Notamment les certificats/clés SSL • Mais les fichiers référencés par le SCF sont exportés dans une archive TAR séparée • La licence du BIG-IP
  • 169. Une formation Création d’un fichier SCF La création du SCF se fait exclusivement à partir de la CLI save sys config file conf1.scf passphrase PA$$W0rD ou save sys config file conf1.scf no-passphrase L’output est créée dans /var/local/scf • /var/local/scf/conf1.scf • /var/loca/scf/conf1.tar
  • 170. Une formation Déploiement d’un fichier SCF Le déploiement du SCF se fait également exclusivement à partir de la CLI load sys config file conf1.scf passphrase PA$$W0rD ou load sys config file conf1.scf Option « merge » pour fusionner avec la config actuelle load sys config file conf1.scf merge
  • 171. Mettre en place la Multitenancy avec les Route Domains Une formation Mohamed Amine KADIMI
  • 172. Plan Présenter les Route Domains Configurer les Route Domains Une formation
  • 173. Une formation Présentation des Route Domains Moyen de BIG-IP d’isoler le traffic entre plusieurs tenants Chaque RD a son propre espace IP • Une même IP peut être utilisée par plusieurs tenants Chaque RD a sa propre table de routage • Avec possibilité de router vers un autre RD
  • 174. Recommandation : Mettre chaque RD dans sa partition administrative Présentation des Route Domains
  • 175. Une formation Configuration des Route Domains Configurer un nouveau Route Domain • Créer le(s) VLAN(s) isolé(s) • Créer le Route Domain Pour utiliser le Route Domain • Créer les Self IP dans les VLANs isolés • Créer les objets (VS, Pool Members, Nodes) avec l’ID du RD. Exemple: 10.10.1.1%2 • Créer les routes si nécessaires
  • 176. Troubleshooting du trafic SSL avec tcpdump et ssldump Une formation Mohamed Amine KADIMI
  • 177. Plan Déchiffrer une capture de trafic SSL Utiliser l’outil ssldump Examiner une capture SSL avec ssldump Une formation
  • 178. Une formation Déchiffrer une capture de trafic SSL Un échange SSL/TLS est composé de • SSL Handshake • Échange de données applicatives On distingue entre les deux lors du diagnostic
  • 179. Une formation Utiliser l’outil ssldump Équivalent de TCPDUMP pour le trafic SSL Deux méthodes pour analyser le trafic: • Caputre en temps réel • Analyse d’un fichier généré par TCPDUMP • Méthode recommandée K10209
  • 180. Une formation Utiliser l’outil ssldump Exemple: 1. Capture avec TCPDUMP : tcpdump -vvv -s0 -nni external -w /var/tmp/SSL.cap host 10.10.10.1 and port 443 2. Déchiffrement du SSL Handshake : ssldump -nr /var/tmp/SSL.cap 3. Déchiffrement données applicatives : ssldump -nr /var/tmp/SSL.cap –k /config/path/to/ssl.key -d
  • 181. Une formation Examiner une capture SSL avec ssldump Handshake ClientHello ServerHello Échange de certificats Génération PMS ChangeCipherSpec application_data
  • 183. Troubleshooting du trafic avec cURL et Fiddler Une formation Mohamed Amine KADIMI
  • 184. Plan Découvrir et utiliser cURL Découvrir et utiliser Fiddler Une formation
  • 185. Une formation Découvrir cURL? Outil en CLI pour retrouver des ressources par leurs URL Disponible sous plusieurs architectures • Linux, Windows, BSD, AIX… Supporte plusieurs protocoles • HTTP, FTP, SMB, LDAP… Disponible d’office sous F5 BIG-IP • Utile pour tester les monitors par exemple
  • 186. Une formation Utiliser cURL? curl -v http://www.alphorm.com Options courantes: -I headers HTTP uniquement -i headers + contenu -v output verbose -L suivre les redirections -H envoyer des headers -k accepter du SSL non sécurisé -X specifier la méthode HTTP man curl
  • 187. Une formation Découvrir Fiddler Proxy local qui intercepte, analyse et manipule le trafic HTTP(S) Le Wireshark du HTTP(S)
  • 189. Troubleshooting des TCP RESET Une formation Mohamed Amine KADIMI
  • 190. Plan Rappel du TCP RESET Diagnostiquer les TCP RESET Une formation
  • 191. Une formation Rappel du TCP RESET TCP RST est un flag TCP dû à plusieurs causes • Service filtré ou pas en écoute • VS désactivé • Aucun membre disponible • Timeout • … SYN RSTSYN-ACK ACK RST
  • 192. Une formation Diagnostiquer les TCP RESET Flag R sur une capture TCPDUMP Statistiques des RESET
  • 193. Une formation Diagnostiquer les TCP RESET Par défaut, la cause des RST n’est pas loguée • Deux méthodes permettent d’avoir la cause : Activer le logging vers /var/log/ltm modify /sys db tm.rstcause.log value enable Inclure la cause dans le payload du paquet RST modify /sys db tm.rstcause.pkt value enable
  • 194. Utiliser les iApps pour déployer des applications sur BIG-IP Une formation Mohamed Amine KADIMI
  • 195. Plan Définir les iApps et leurs composants Utiliser les templates d’iApps Configurer une iApp Une formation
  • 196. Une formation Définition des iApps La technologie iApps est un Framework de déploiement et de gestion d’applications • Facilite le déploiement d’applications complexes, en se basant sur des templates • Automatise la création des objets (VS, pools, monitors, iRules…) • Encapsule les objets et les protège contre toute modification externe (mode Strict Update)
  • 197. Une formation Deux composants principaux: 1. iApp Templates 2. iApp Application Services Les Templates décrivent (en TCL) les règles de déploiement d’une application L’Application Service est le déploiement unitaire d’une application via iApp Définition des iApps
  • 198. Une formation Les iApps Templates Des Templates prédéfinis Des Templates téléchargeables • Templates officiels downloads.f5.com • Templates communautaires devcentral.f5.com
  • 199. Une formation Configurer une iApp Le déploiement se fait en répondant à des questions qui définissent la business logic La reconfiguration se fait en répondant une nouvelle fois aux questions Par défaut, la modification des objets n’est pas autorisée en dehors de l’iApp
  • 200. Explorer les différentes options de sécurité sur F5 LTM Une formation Mohamed Amine KADIMI
  • 201. Plan Sécuriser l’administration de BIG-IP Securiser le trafic de données Une formation
  • 202. Une formation Sécuriser l’administration de BIG-IP • Modifier les mots de passe par défaut • Utiliser les rôles/partitions efficacement • Exiger la complexité des mots de passe • Limiter les accès SSH/GUI aux IP sources autorisées • Externaliser les logs vers un serveur de supervision
  • 203. Une formation Sécuriser le trafic des données • Configurer le Port Lockdown sur les Self IP • Limiter les VLANs autorisés sur un VS • Configurer les limites de connexions pour faire de l’anti-DoS basique
  • 204. Mot de la fin Une formation Mohamed Amine KADIMI
  • 205. Bilan de la formation
  • 206. Une formation Traitement du trafic entrant BIG-IP est un default deny device 1 3 2 4 5 6 7
  • 207. Une formation Les Virtual Servers Un VS est défini par une IP et un port de destination et une IP source Si plusieurs VS matchent un trafic entrant, le plus spécifique est utilisé • Par défaut, le plus spécifique est sélectionné même s’il est désactivé
  • 208. Une formation Les types de Virtual Servers Standard • Le plus commun, le plus riche en options Forwarding (IP) • Mode routeur, pas de Load Balancing Performance (Layer4) • Favorise l’optimisation au niveau 4 Performance (HTTP) • Optimise le temps de traitement des requêtes HTTP …
  • 209. Une formation Les algorithmes de LB Statiques • Distribution prédéterminée et prédictible • Round Robin, Ratio Dynamiques • Distribution basée sur des métriques temps réel • Least Connections, Fastest, Least Sessions… Load Balancing par Node ou par Member • Exemple: Least Connections (Member) vs Least Connections (Node)
  • 210. Une formation Mécanismes de fallback Priority Group Activation PG=10 PG=10 PG=10 PG=5 PG=5 Fallback Host Less than 2
  • 211. Une formation Monitoring et statuts des Nodes/Members Monitors • Utilité des Alias Address et Alias Port • Monitors externe (scripts) Statuts • Disable vs Force Offline
  • 212. Une formation Persistance Persistance SSL • Basée sur le SSL Session ID • Fonctionne même quand BIG-IP ne déchiffre pas le trafic Persistance Universal • Utilise les iRules Fonctionnement des options Match Across
  • 213. Une formation Optimisation et tuning du trafic TCP Express • Nom donné par F5 à la pile TCP/IP du BIG-IP Optimisation par profils • Profils TCP et OneConnect Manipulation des payloads avec le profil Stream
  • 214. Une formation iRules et Traffic Policies iRules mulitiples et ordre d’exécution • Priorité par défaut = 500 • Nombre plus bas = priorité plus haute Data Groups et iFiles Local Traffic Policies • Alternative en mode graphique aux iRules • Plus performantes mais moins riches • Créer un draft d’une policy pour la modifier
  • 215. Une formation Administration avancée Utilisateurs, rôles et partitions Options de logging • Syslog local ou distant • HSL • SNMP Sauvegarde et restauration avec SCF Route Domains
  • 216. Une formation Troubleshooting Outils de diagnostic • TCPDUMP + SSLDUMP • curl • Fiddler Troubleshooting des TCP RESET • Bonne pratique: le logging des causes doit être limité dans le temps pour le debugging
  • 217. Une formation Utilisation des iApps iApps pour contrôler le déploiement d’applications +ou- complexes Déploiement basés sur Templates • Officiels embarqués sur BIG-IP • Officiels à télécharger et importer • Communautaires à télécharger et importer
  • 218. Une formation Options de sécurité Sécuriser le plan d’administration • Utiliser les bonnes pratiques communes à tous les équipements Sécuriser le plan de trafic • F5 BIG-IP est un default deny • Autoriser uniquement le strict minimum • Dans la mesure du possible, configurer les limites de connexions
  • 219. Merci