Formation
F5 BIG-IP
Access Policy Manager
Une formation
Mohamed Amine KADIMI
Cursus F5 BIG-IP
Une formation
Plan de la formation
Une formation
Introduction
1. Rappels des bases et introduction à l’APM
2. Votre première application Web à travers APM
3. Utilisation du mode Portail
4. Utilisation du Network Access
5. Publication en mode App Tunnels
6. Contrôler les accès via des ACLs
7. Authentification & Autorisation
8. Exploration du Visual Policy Editor
9. Utilisation du BIG-IP Edge Client
10. Client-Side et Server-Side Checks
11. SAML
12. Personnalisation de l’interface APM
Conclusion
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
Une formation
Mohamed Amine KADIMI
Présentation du Lab
Plan
Une formation
Le schéma du Lab
Setup sur VMware Workstation
OS et Licence F5
Le schéma du lab
Votre PC ou une VM
Une VM F5 BIG-IP
Une VM Linux interne
Une VM Windows interne
Une VM Linux externe
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
Mohamed Amine KADIMI
Rappel des éléments de base
de F5 BIG-IP
Une formation
Redécouvrir le boitier F5
Le système d’exploitation
L’architecture Full-Proxy
Les Node, Member, Pool, VS
Plan
Plan
Une formation
Le boitier BIG-IP
L’interface de Management
• Dédiée à l’administration
Les interfaces TMM
• Utilisées pour le trafic de données
• Peuvent être utilisées pour l’administration
Une formation
Le système d’exploitation
Une formation
L’architecture Full Proxy
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
Mohamed Amine KADIMI
Pourquoi F5 APM?
Une formation
Introduction à F5 APM
Fonctionnalités principales
Plan
Plan
Une formation
Introduction à F5 APM
F5 APM permet de faire de la gestion
des accès :
• Authentification
• Autorisation
• Accounting
Fonctionne en autonome ou s’intègre à
une architecture de Load Balancing LTM
Plan
Une formation
Fonctionnalités principales
Authentification
• Base d’utilisateurs locale
• Annuaire distant (AD, LDAP, Radius, Tacacs…)
• Captcha
• SSO, MFA, SAML…
Contrôle de la machine et du système
• Bios S/N, Motherboard S/N…
• Version OS, patchs installés, Antivirus, Firewall…
Plan
Une formation
Fonctionnalités principales
Autorisation
• Ressources autorisées selon profil utilisateur
(groupe AD, attribut Radius…)
• Niveau d’accès différent selon version de l’OS ou de
l’antivirus par exemple
• Access Control Lists L4 et L7
Reporting
Géolocalisation
Plan
Une formation
Fonctionnalités principales
Accès en mode portail
Accès en mode client (PC/Mac/Mobile)
Une formation
Mohamed Amine KADIMI
Publier une application en
mode Web Application
Access
Une formation
Comprendre le mode « Web
Application Access »
Déployer une application derrière
APM
Plan
PlanLe mode Web Application Access
APM intercepte le trafic d’une
application publiée sur BIG-IP
Applique la politique d’accès
configurée
HTTP GET /
HTTP GET /
Plan
Une formation
Déployer une application
derrière APM
Trois étapes simples :
1. Déployer l’application (VS, pools…)
2. Configurer un profil d’accès APM
3. Associer le profil d’accès au VS
Une formation
Mohamed Amine KADIMI
Comprendre les Access
Profiles et Access Policy
Une formation
Découvrir l’Access Profile
Utiliser l’Access Policy
Plan
Plan
Une formation
L’Access Profile
Objet de configuration associé à un VS
afin d’activer l’APM dessus
Point de liaison entre le VS et la
politique d’accès APM - Access Policy
Plan
Une formation
L’Access Policy
Objet de configuration associé à un
Access Profile en 1 to 1
Définit les critères d’authentification et
d’autorisation
Définit les ressources autorisées à
l’utilisateur
Récapitulatif
Une formation
Mohamed Amine KADIMI
Introduction à
l’authentification
Une formation
Comprendre l’objectif de
l’authentification
Configurer l’authentification
Plan
Plan
Une formation
Objectif de l’authentification
L’authentification permet de contrôler
l’identité de l’utilisateur auprès d’un
fournisseur d’identité
 Afin d’ :
• Autoriser -ou pas- l’accès
• Attribuer les privilèges appropriés
Plan
Une formation
Configurer l’authentification
Comment interagir avec l’utilisateur?
• Logon Page
• Exiger un certificat…
Comment vérifier ses identifiants?
• Base d’utilisateurs (locale ou distante)
• Certificate Authority …
Plan
Une formation
Configurer l’authentification
Comment interagir avec l’utilisateur?
Comment vérifier ses identifiants?
Une formation
Mohamed Amine KADIMI
Introduction au
troubleshooting sur APM
Une formation
Inspecter les logs et les rapports APM
Utiliser les commandes de diagnostic
Plan
Plan
Une formation
Les logs et les rapports APM
F5 APM écrit les logs dans :
• Une DB MySQL (jusqu’à 5M entrées)
• Et dans /var/log/apm (10 jours)
L’accès aux logs de la DB se fait en GUI
• Plusieurs rapports prédéfinis
• Logs groupés par sessions pour une
meilleure visibilité
Plan
Une formation
Les logs et les rapports APM
Plan
Une formation
Utiliser les commandes de diagnostic
tcpdump
sessiondump
sessiondump --list
sessiondump --allkeys
sessiondump --sid 0144a045
sessiondump --sid 0144a045 | grep clientip
Une formation
Mohamed Amine KADIMI
Déployer des applications en
mode Portal Access
Une formation
Comprendre le mode Portal Access
Configurer le mode Portal Access
Plan
Plan
Une formation
Le mode Portal Access
L’utilisateur accède à un espace de travail
composé de ressources autorisées
• Applications Web, Tunnel VPN, Fichiers …
Webtop
Ressource
Plan
Une formation
Le mode Portal Access
APM fonctionne
comme reverse proxy
• Il réécrit tous les
liens de l’application
• Encode les adresses
internes
Host:
vpn.mysite.com
GET /F5-w-
44384120984520
$$/index.php
Host: 172.16.10.20
GET /index.php
Plan
Une formation
Configurer un Portal Access
Configurer le Webtop et les ressources
Configurer l’Access Profile et l’Access
Policy
Configurer les profils requis
Associer les profils au VS publié
Une formation
Mohamed Amine KADIMI
Utiliser les agents
Ressource Assign
Une formation
Définir l’action « Resource Assign »
Utiliser les différents types de
« Resource Assign »
Plan
Plan
Une formation
Resource Assign, c’est quoi?
L’assignement de ressources est une
étape importante de la Policy
• C’est ce qui permet d’associer des
ressources à la session
• Selon le profil de l’utilisateur
• Exemple : Webtop, Applications, RDP…
• Sans Resource Assign, le mode portail ne
fonctionnera pas correctement
Plan
Une formation
Resource Assign, c’est quoi?
Webtop
Ressource
Ressource
Plan
Une formation
Utiliser les Resource Assign
Plusieurs types d’agents VPE permettent
d’assigner des ressources
• Agent « Resource Assign », le plus simple
• « AD/LDAP Group Resource Assign »,
assignement basé sur le groupe AD/LDAP
• « Advanced Resource Assign », agent le
plus souvent utilisé
• …
Une formation
Mohamed Amine KADIMI
Configurer un Webtop
Une formation
Récapitulatif
Redéfinir le Webtop
Découvrir les 3 types de Webtop
Personnaliser un Webtop
Plan
PlanRécapitulatif
PlanDéfinition du Webtop
Environnement web qui contient et présente les
différentes ressources à l’utilisateur (Web-desktop)
• Sans Webtop, le mode portail ne fonctionnera pas
• Personnalisable par
profil connecté
Plan
Une formation
Les 3 types de Webtop
Full
Supporte tous les types de ressources
Portal Access
Uniquement les ressources « Portal »
Network Access
Uniquement les ressources « Network Access »
Plan
Une formation
Personnalisation du Webtop
Un Webtop peut être configuré de sorte à :
• Organiser les ressources publiées en sections
• Afficher/masquer les barres de recherche et d’accès
direct
• Publier des fichiers en téléchargements
• Publier des liens web externes
• …
Plan
Une formation
Personnalisation du Webtop
Barre d’accès direct
Barre de recherche
Section
Section réduite
Téléchargements
Une formation
Mohamed Amine KADIMI
Configurer un accès en mode
Network Access
Une formation
Découvrir le mode Network Access
Comprendre les Lease Pool
Différencier entre les modes TCP et
UDP
Plan
PlanLe mode Network Access
Offre un accès en mode VPN
• Permet d’étendre l’accès aux ressources
internes (surtout les non-web)
• Depuis le navigateur
• Ou avec un client F5
• Utilise TLS (aka SSL VPN)
• Supporte TCP et UDP
PlanLes Lease Pools
Un client VPN doit obtenir une adresse IP pour
communiquer avec le réseau interne
• Chaque client doit en obtenir une
• Un serveur DHCP virtuel sur APM se charge d’attribuer ces
adresses
• La plage utilisable est appelée « Lease Pool »
• Le VPN ne fonctionnera pas si un Lease Pool n’est pas
configuré
Plan
Une formation
Les modes TCP et UDP
Le NA est par défaut basé sur TCP
• Protocole plus fiable
• Port 443 généralement
Possible d’activer l’UDP
• Basé sur le protocole DTLS (RFC 6347)
• Très adapté à la VoIP, visioconf…
• Port 4433 par défaut (VS doit être créé)
PlanRécapitulatif
Une formation
Mohamed Amine KADIMI
Gérer les paramètres avancés
du Network Access
Une formation
Comprendre le SNAT
Utiliser le Split Tunneling
Optimiser les applications sur le VPN
Lancer des applications
automatiquement
Plan
Comprendre le SNAT
Sans SNAT
L’adresse issue du lease pool est
conservée
Avec le SNAT
L’adresse issue du lease pool est
translatée
192.168.10.1192.168.10.1
172.16.10.100
Utiliser le Split Tunneling
Sans Split Tunneling
Tout le trafic sortant est routé vers le tunnel
Avec Split Tunneling
On spécifie le trafic qui doit passer par le
tunnel
App interneGmail.com
…
Applications optimisées
Le Network Access offre une fonctionnalité
d’optimisation d’applications
• En utilisant un tunnel applicatif optimisé
• Utilise une compression adaptive supportant plusieurs
algorithmes
• Basée sur un protocole propriétaire F5 « iSession »
• Windows Only
Lancement automatique des applications
Une application peut être automatiquement
lancée après connexion au VPN
• Celle-ci doit être installée sur le client
• On configure son chemin
• Supporte Windows/Mac/Unix/iOS/Android
Une formation
Mohamed Amine KADIMI
Comprendre
l'authentification sur F5 APM
Une formation
Comprendre l’authentification sur APM
Mettre en place un scénario
d’authentification
Plan
Authentification sur F5 APM
APM authentifie l’utilisateur en vérifiant ses
identifiants auprès d’une source d’authentification
Une formation
Authentification sur F5 APM
L’agent « Logon Page » est utilisé pour
récolter les identifiants
• User/password - OTP
Cet agent présente aux utilisateurs une
page de login personnalisable
Une formation
Authentification sur F5 APM
Les identifiants sont vérifiés auprès
d’une source d’authentification
• AD / LDAP
• RADIUS / TACACS+
• HTTP
• Local User DB
• …
Scénario d’authentification
Un employé permanent a un compte
AD et un compte RADIUS
Les autres n’ont que des comptes AD
Le besoin est le suivant:
• Si Auth. AD + RADIUS  accès total
• Si Auth. AD  accès limité
• Sinon  aucun accès
Une formation
Mohamed Amine KADIMI
Configurer l'authentification
AD, RADIUS et la 2FA
Une formation
Configurer un serveur AD
Configurer un serveur RADIUS
Configurer l’authentification à double
facteurs
Plan
Configurer un serveur AD
Pour s’intégrer à l’AD il faut créer un objet AAA
Server de type Active Directory :
• En spécifiant un contrôleur de domaine
• Ou bien un pool de contrôleurs de domaine
• Ou en se basant sur la résolution DNS du domaine AD
Attention à l’horloge entre APM et l’AD!
Configurer un serveur RADIUS
De même, pour s’authentifier sur un serveur
RADIUS, il faut créer un objet RADIUS sur APM :
• En définissant son adresse IP ou un pool d’adresses IP
• Et le secret partagé
Les facteurs d’authentification peuvent être classés
en 3 catégories :
1. Quelque chose que je connais
2. Quelque chose que je possède
3. Quelque chose qui est propre à moi
F5 APM peut combiner deux facteurs ou plus
Configurer l’authentification à double
facteurs (2FA)
Use case réel :
Identifiants AD + Token OTP
APM authentifie d’abord l’utilisateur
sur AD
Puis sur un serveur RADIUS qui gère
les OTP
Alice:5ecR37
OK
OK
OTP?
900123
OK
Username:Alice
Password:5ecR37
Username:Alice
Password:900123
Configurer l’authentification à double
facteurs (2FA)
Une formation
Mohamed Amine KADIMI
Configurer
l'authentification locale
Une formation
Introduire l’authentification locale
Configurer l’authentification locale
Plan
Introduction à l’authentification locale
F5 APM supporte l’authentification locale des
utilisateurs :
• Pas besoin de bases externes d’utilisateurs
• Utile pour des groupes restreints (Administrateurs,
externes…)
• Utile également pour des comptes de fallback si la base
externe est injoignable
Configuration de l’authentification locale
Il faut d’abord créer une « LocalDB Instance » qui va
contenir les utilisateurs
Chaque instance a des attributs configurables (Lockout
Interval, Lockout Threshold)
Les utilisateurs peuvent être membres dans des groupes
L’agent VPE « LocalDB Auth » permet d’authentifier
l’utilisateur
L’agent « Local Database » permet d’accéder à une
LocalDB Instance
• En lecture : pour lire les attributs de l’utilisateur
• En écriture : pour les modifier ou créer dynamiquement des
utilisateurs
Configuration de l’authentification locale
Une formation
Mohamed Amine KADIMI
Single Sign-On (SSO)
Une formation
Introduire le SSO
Configurer le SSO
Comprendre le SSO Crendial Mapping
Plan
Une formation
Introduction au SSO
Sans SSO, l’utilisateur s’authentifie sur
APM puis sur chaque application
Une formation
Introduction au SSO
Le SSO permet de réutiliser les
identifiants de l’utilisateur pour
s’authentifier sur les applications
publiéesAPM enregistre les identifiants de
l’utilisateur dans des variables de session
(en mémoire) et les réutilise sur les
ressources configurées pour le SSO
Configurer le SSO
• Méthode SSO (Form, HTTP Basic, NTLM…)
• Configurer les attributs spécifiques à l’application
Créer un profil
SSO
Affecter le
profil à
l’application
Configurer le
VPE
• Associer le profil à une URL ou plusieurs URL de
l’application (Resource Items) utilisées pour
s’authentifier
• Agent « SSO Credential Mapping » afin de mettre les
identifiants en cache pour pouvoir les réutiliser
Une formation
Configurer le SSO – RDP
Pour les ressources RDP, la
configuration est plus simple, il suffit
d’activer le SSO sur la ressource RDP
Une formation
Agent SSO Credential Mapping
Une formation
Mohamed Amine KADIMI
Autorisation Active Directory
Une formation
Définir l’autorisation Active Directory
Utiliser l’agent « AD Query »
Exemples d’usage
Plan
Autorisation Active Directory
La gestion des autorisations permet de contrôler les
privilèges d’accès
Active Directory est fréquemment utilisé pour
conditionner les droits d’accès
• Exemple: utiliser les groupes AD pour contrôler l’accès aux
ressources
• Filtrer les utilisateurs selon des attributs AD
1. Authentification
2. AD Query
3. Autorisation selon le contenu
de la réponse réçue de l’AD
Auth
Auth OK
Auth
Réponse
AD Query
Autorisation Active Directory
Utiliser l’agent AD Query
L’agent « AD Query » indique à APM de solliciter
le serveur AD pour récupérer les attributs de
l’utilisateur
• Attribut memberOf pour lire les groupes
• D’autres attributs permettent de lire tout type
d’informations souhaitées
• Les valeurs retournées sont enregistrées dans des
variables de session
Une formation
Utiliser l’agent AD Query
Autres usages de AD Query
L’autorisation AD permet de déléguer la gestion des
attributs à l’AD tout en exécutant les contrôles sur
APM, par exemple :
• Adresse(s) MAC ou BIOS S/N autorisé(s)
 Si l’utilisateur se présente depuis une machine non
déclarée dans son compte AD, alors il est bloqué
Une formation
Mohamed Amine KADIMI
Introduction aux ACLs
Une formation
Comprendre l’utilité des ACLs
Découvrir la granularité offerte par APM
Comprendre la logique des ACL/ACE
Distinguer les deux types d’ACLs
Plan
Utilité des ACLs
Les ACLs permettent de définir le trafic
autorisé entre un client VPN et le LAN
cible
Exemple : le trafic client VPN est
• Routé vers 192.168.1.0/24
• Autorisé vers 192.168.1.1
• Bloqué vers 192.168.1.2
• Bloqué vers port 22
• …
192.168.10.1
192.168.1.0/24
Une formation
ACL et granularité APM
Grâce au puissant modèle utilisé par F5 APM,
on peut répondre à tout scénario imaginable :
• Faire du filtrage ACL par utilisateurs/groupes AD
• Faire du filtrage ACL ponctuel
• Faire du filtrage ACL basé sur l’OS client, les
mises à jours installés
• …
Une formation
ACL et granularité APM
Allow 192.168.1.10
Reject 192.168.1.0/24
Allow 172.16.1.0/24
Reject All
Allow 192.168.1.1
Reject Any
Une formation
Les ACL et les ACE
Une ACL est composée d’entrées
définissant les règles de filtrage
• Ces entrées sont appelées ACE
Une fois configurée, une ACL doit être
assignée (Resource Assign)
• Elles sont donc appliquées par session APM
Une formation
Les ACL et les ACE
Les ACE définissent les règles de filtrage
• Elles ont un type (L4 ou L7)
• Des conditions (IPs source, destination,
ports, protocole…)
• Une action (Allow, Continue, Discard, Reject)
L’ordre des ACE est important!
Une formation
Les ACL et les ACE
Problème! Lequel?
Une formation
Les deux types d’ACLs
1. Les ACL statiques : configurées localement
sur APM
2. Les ACL dynamiques : configurées ailleurs
(AD typiquement) et récupérées lors de la
connexion de l’utilisateur
Une formation
Mohamed Amine KADIMI
Configurer les ACL statiques
Une formation
Définir les ACLs statiques
Créer des ACLs statiques
Configurer les ACEs
Plan
Une formation
Définition des ACLs statiques
Une ACL statique est une ACL dont les
règles (ACEs) sont configurées
statiquement sur le BIG-IP
Une formation
Créer des ACLs statiques
• Name
• Type: Static
• ACL Order
Créer l’ACL
Ajouter les
règles (ACEs)
Assigner l’ACL
• Type: L4 | L7 | L4+L7
• Conditions (source, dest., proto…)
• Action: Allow | Continue | Discard | Reject
• Log ?
• Agent « ACL Assign »
ou
• Agent « Advanced Resource Assign »
Une formation
Configurer les ACEs
Les ACEs reposent sur le pattern « Condition  Action »
• Les conditions définissent le trafic exact qui doit
matcher pour déclencher l’action de la règle
• Les actions possibles :
• Allow : pour autoriser
• Discard : pour bloquer silencieusement
• Reject : pour bloquer tout en informant l’émetteur
• Continue : pour arrêter le traitement de l’ACL et
passer à la suivante
Configurer les ACEs
Il existe trois types d’ACEs
Ces types contrôlent les conditions de vérification possibles sur le trafic
L4 L7 L4+L7
Contrôles de couche 4
• IPs et ports source
• IPs et ports dest
• protocole
Contrôles de couche 7
• Hostname
• Path
• HTTP ou HTTPS
Contrôles de couche 4 et 7
PlanRécapitulatif
Une formation
Mohamed Amine KADIMI
Configurer
les ACL dynamiques
Une formation
Définir les ACLs dynamiques
Créer des ACLs dynamiques
Écrire des ACEs au format F5
Écrire des ACEs au format Cisco
Plan
Une formation
Définition des ACLs dynamiques
Une ACL dynamique est une ACL dont les
règles (ACEs) sont dynamiquement chargées
lors de l’ouverture de la session
Typiquement depuis un annuaire externe
Une formation
Créer des ACLs dynamiques
• Name
• Type: Dynamic
• ACL Order
Créer l’ACL
Assigner l’ACL
Définir les
ACEs
• Agent « Dynamic ACL »
• Champ source à spécifier (variable de
session)
• Format à spécifier : F5 | Cisco
• Typiquement dans un AD ou RADIUS
• Dans le même champ défini sur F5
• Au même format défini sur F5
Exemple avec annuaire AD
Les règles sont configurées sur
l’annuaire
Elles sont récupérées lors de la
connexion de l’utilisateur
Et utilisées tout au long de la session
deny RDP
allow Any
Une formation
Écrire une ACE au format F5
La syntaxe des ACEs au format F5 est:
comment { action [logging_options] context }
Exemple :
SSH vers LAN { allow tcp any 172.16.10.0/24:22 } acces
Web server { allow tcp any 10.1.2.3:443 } regle par
defaut { reject log ip any any }
{allow tcp any 172.16.10.0/24:22 } { allow tcp any
10.1.2.3:443 } { reject log ip any any }
Une formation
Écrire une ACE au format F5
Les ACEs au format F5 supportent également le
filtrage L7 (HTTP):
comment { action [logging_options] context }
Exemple:
{ allow http any 10.1.2.3 https://ww?.alphorm.*/* }
{ allow http any 10.1.2.3 https://ww?.alphorm-test.*/* }
Une formation
Écrire une ACE au format Cisco
La syntaxe est celle utilisée par Cisco ACS
pour définir les « Downloadable ACL »
Exemple :
ip:inacl#10=permit tcp any 172.16.1.0 0.0.0.255 eq ssh
ip:inacl#20=permit tcp any host 10.1.2.3 eq https
ip:inacl#100=deny ip any any log
PlanRécapitulatif
Une formation
Mohamed Amine KADIMI
Utiliser les macros
Une formation
Définir les macros
Comprendre les avantages des
macros
Connaître quelques propriétés des
macros
Plan
Définition des macros
Une macro est un flux d’actions
• Identique au flux configuré par le VPE
• (Ré)utilisable au sein d’une politique
Une formation
Avantages des macros
L’utilisation des macros facilite la
gestion de la politique en la rendant
• Plus lisible et moins chargée
• Plus flexible
• Plus facile à modifier
• Moins susceptible aux erreurs
• …
Propriétés des macros
Les macros sont réutilisables au sein de la même politique
On peut boucler l’exécution d’une macro (jusqu’à 5 exécutions)
Une macro créée ne sert à rien si elle n’est pas appelée par la
politique
Une seule macro peut aboutir à différentes branches de sortie
selon la logique définie
Une formation
Mohamed Amine KADIMI
Exploiter les Macro Loops
et les actions terminales
Une formation
Comprendre les Endings et les
Terminals
Définir les Macro Loops
Plan
Une formation
Endings et Terminals
Un Ending dans le VPE est l’aboutissement de la politique
Une formation
Ending et Terminals
Un Terminal est l’output d’une Macro
Une formation
Ending et Terminals
Les Endings et les Terminals peuvent être
personnalisés :
• D’apparence (couleurs et noms)
• De type d’action (Endings uniquement)
• Allow
• Deny
• Redirect
On peut ajouter autant de Terminals/Endings
que l’on souhaite
Une formation
Les Macro Loops
Une Macro Loop est une action terminale
spéciale qui permet de rejouer la Macro
jusqu’à 5 fois
Exemple: pour permettre au client de retenter
une authentification échouée
Une formation
Mohamed Amine KADIMI
Configurer l'accès sécurisé
en mode App Tunnel
Une formation
Définir les App Tunnels
Configurer les App Tunnels
Plan
Une formation
Définition du App Tunnel
Un App Tunnel est un tunnel sécurisé
pour une seule application TCP :
• Contrairement à un VPN qui est un tunnel
sécurisé supportant plusieurs applications
• Un App Tunnel identifie explicitement
l’application tunnelisée (adresse + port)
• Exemples: client RDP, application Web
Une formation
Configurer un App Tunnel
Configurer un objet App Tunnel
• Ce n’est qu’un conteneur
Configurer les « Resource Items »
• Ce sont les définitions des applications
tunnélisées
Assigner l’App Tunnel à la policy APM
PlanRécapitulatif
Une formation
Mohamed Amine KADIMI
Configurer et déployer
BIG-IP Edge Client
Une formation
Découvrir le BIG-IP Edge Client
Découvrir les avantages du BIG-IP
Edge Client
Installer le client BIG-IP Edge
Plan
Découvrir BIG-IP Edge Client
BIG-IP Edge Client est une application de type client
VPN :
• Permettant de se connecter à un VPN via F5 APM
• Sans utiliser de browser
• Disponible pour plusieurs OS : Windows, Linux (CLI),
Android, iOS, Chrome OS
• Apporte certaines fonctionnalités
Une formation
Avantages du BIG-IP Edge Client
Mode Always connected
Reconnexion automatique
Password caching
Location Awareness
Réutilisation des identifiants Windows
Une formation
Installer BIG-IP Edge Client
Exporter le package d’installation
depuis le BIG-IP puis l’installer sur les
postes clients
• Applicable pour Windows, MAC et Linux
Installer le client depuis le store
• Applicable pour Windows, MAC, Android,
iOS, Chrome OS
Une formation
Mohamed Amine KADIMI
Découvrir Endpoint Security
Une formation
Définir Endpoint Security
Découvrir les deux catégories
d’Endpoint Security
Plan
Découvrir Endpoint Security
La fonctionnalité « Endpoint Security » permet de
valider que le client distant est conforme à certaines
conditions avant de lui accorder l’accès adapté :
• L’antivirus est installé et à jour
• Un patch Windows est installé
• Le device ID d’un smartphone est valide
• …
Une formation
Découvrir Endpoint Security
Les contrôles Endpoint Security sont
classés en deux catégories :
1. Client-side
Regroupe les contrôles basés sur des informations
collectées localement sur le client
2. Server-side
Regroupe les contrôles basés sur des informations
présentes sur APM ou envoyées par le client
Une formation
Endpoint Security client-side
Une formation
Endpoint Security server-side
Une formation
Mohamed Amine KADIMI
Utiliser l'Endpoint Security
(client-side)
Une formation
Configurer les contrôles client-side
selon un scénario prédéfini
Plan
Une formation
Scénario du besoin client
Les conditions pour avoir l’accès total:
1. Adresse MAC du client validé depuis AD
2. OS Windows 8 ou Windows 10
3. Firewall Windows activé
Si 3 non satisfaite, permettre l’accès à une
application web uniquement et assigner des
ACL
Une formation
Mohamed Amine KADIMI
Utiliser l'Endpoint Security
(server-side)
Une formation
Configurer les contrôles server-side
selon un scénario prédéfini
Plan
Une formation
Scénario du besoin client
1. Si l’adresse IP du client appartient à
un pays européen, afficher un texte
légal que l’utilisateur doit accepter
pour poursuivre
2. L’accès ne doit être autorisé que lors
de la plage horaire de travail. Sinon,
afficher un message informatif et
refuser l’accès
Une formation
Mohamed Amine KADIMI
Introduction à SAML
Une formation
Découvrir le SAML
Comprendre le fonctionnement
du SAML
Plan
Une formation
Découvrir SAML
Security Assertion Markup Language
Langage basé sur XML, qui définit les
normes d’échange d’informations
d’authentification et d’autorisation
entre fournisseurs de services et
fournisseurs d’identité
Utilisé pour le SSO surtout
Une formation
Découvrir SAML
Sans SSO, chaque application gère
l’authentification d’une façon autonome
Une formation
Découvrir SAML
Avec SAML, l’authentification est centralisée
Une formation
Aperçu du flux SAML
Source: https://www.elastic.co/fr/blog/how-to-enable-saml-authentication-in-kibana-and-elasticsearch
Une formation
Mohamed Amine KADIMI
Configurer SAML
sur BIG-IP APM
Une formation
Comprendre les différents modes
de déploiement
Déployer SAML sur F5 APM
Plan
Une formation
Mode IdP
Une formation
Mode SP
Une formation
Mode IdP+SP
Une formation
Configurer SAML sur F5 APM
La configuration du SAML sur APM nécessite
la configuration de plusieurs objets :
• Le fournisseur du service souhaité (IdP
et/ou SP)
• Les connecteurs avec les SP/IdP externes
• VS, Access Profile, ressources SAML
• …
Une formation
Mohamed Amine KADIMI
Personnaliser l'apparence
des portails et clients BIG-IP
Une formation
Que peut-on personnaliser ?
Comment personnaliser ?
Plan
Une formation
Que peut-on personnaliser ?
L’interface utilisateur peut supporter
plusieurs langues
• F5 affiche à l’utilisateur la langue préférée
de son browser
En plus, le contenu affiché peut être
personnalisé pour chaque langue
• Le texte
• Le branding
Une formation
Exemples
Activation de plusieurs langues
Personnalisation du contenu
Une formation
Comment personnaliser ?
Trois méthodes de personnalisation
Quick Start/Basic
• Mise en œuvre rapide mais limitée
General
• Plus d’options, couvre la plupart des besoins
Advanced
• La plus avancée: modification directe du
HTML/CSS
Une formation
Mohamed Amine KADIMI
Définir et configurer
un scénario d'accès distant
Une formation
Définir le besoin du scénario
Réaliser la configuration
Plan
Une formation
Définition du besoin
Les utilisateurs sont classés en 3 profils
dont voici les définitions :
Admins IT Sales Others
Network Access 
Site interne   
CRM 
Fichier PDF 
Lien Alphorm 
Admins IT Sales Others
Users user1 user2 user3
Auth.
method
AD + Radius AD + Radius AD
Checks
Bios S/N
FW+AV actifs
Bios S/N
FW+AV actifs
Bios S/N
FW+AV actifs
Une formation
Définition du besoin
Exigences à respecter :
• Un seul VS utilisable
• Authentification AD
• L’utilisateur ne doit pas pouvoir accéder
aux ressources non autorisées
• SSO à mettre en place pour le site interne
Une formation
Pour tester
Admins IT* Sales* Others
user1 
user2 
user3 
Utiliser les utilisateurs suivants
* Groupes AD
Une formation
Mohamed Amine KADIMI
Etendre le scénario avec
des nouveaux besoins
Une formation
Définir les nouveaux besoins
Modifier la configuration
Plan
Une formation
Définition du besoin
Nouvelles exigences à respecter :
• Les « Admins IT » doivent être déconnectés
au bout de 5 minutes d’inactivité
• Si un client du profil « Others » demande
l’URI /download:
• Authentification AD uniquement
• Ressources: fichiers téléchargeables uniquement
Une formation
Mohamed Amine KADIMI
Mot de la fin
Bilan de la formation
Une formation
F5 APM gère les accès distants, avec
toutes les fonctions qui s’y apparentent
• Authentification avancée supportant plusieurs
méthodes
• Autorisation basée sur plusieurs attributs
possibles
• Accounting
APM est très granulaire et ergonomique
Rôle de l’APM dans l’écosystème F5
BIG-IP
Une formation
Modes de déploiement
Plusieurs modes de déploiement
sécurisés sont possibles
• Web Application Access
• Portal Access
• Network Access
• App Tunnel
Une formation
Les éléments de base d’un
déploiement APM
• Le listener – point d’entrée
• Définit les propriétés de base
(langue, timeout…)
• Définit les propriétés de l’accès
distant (authentification,
autorisation…)
Virtual Server
Access Profile
Access Policy
Une formation
L’Access Policy
Élément central de la configuration APM :
• Spécifie les critères d’authentification et d’autorisation
• Définit les ressources autorisées à l’utilisateur
Le VPE est au cœur de la configuration de
l’Access Policy
• Composé d’agents VPE et de macros
Une formation
VPE (Virtual Policy Editor)
Une formation
L’authentification
F5 APM récolte les identifiants de
l’utilisateur et les valide :
• Auprès d’une base locale
• Un annuaire AD/LDAP
• RADIUS / TACACS+
• Authentification HTTP
• Par certificat
• …
Une formation
L’autorisation
F5 APM gère les autorisations selon le
profil authentifié
• Exemple: définir les privilèges d’accès pour
l’utilisateur selon son appartenance aux
groupes AD
AD est très souvent utilisé, et ce à
travers l’agent AD Query
Une formation
Les ACLs
Pour une connexion
distante, les ACLs
contrôlent le trafic
autorisé/rejeté
Deux types :
1. ACLs statiques
2. ACLs dynamiques
Une formation
Endpoint Security
F5 APM peut valider que le client est
conforme à certaines conditions avant
de lui accorder l’accès adapté
Deux types :
1. Client-side
2. Server-side
Une formation
SAML
Mécanisme d’authentification permettant
d’implémenter le SSO
Le client demande un service au Service
Provider (SP), celui-ci délègue
l’authentification à un Identity Provider (IdP)
F5 peut faire office de SP et/ou d’IdP
Une formation
Personnalisation de
l’apparence de l’APM
On peut personnaliser le texte et/ou le
branding
Trois méthodes de personnalisation:
1. Quick Start/Basic
2. General
3. Advanced
Scénario final
Alphorm.com Formation F5 BIG-IP APM : Access Policy Manager

Alphorm.com Formation F5 BIG-IP APM : Access Policy Manager

  • 1.
    Formation F5 BIG-IP Access PolicyManager Une formation Mohamed Amine KADIMI
  • 2.
  • 3.
    Plan de laformation Une formation Introduction 1. Rappels des bases et introduction à l’APM 2. Votre première application Web à travers APM 3. Utilisation du mode Portail 4. Utilisation du Network Access 5. Publication en mode App Tunnels 6. Contrôler les accès via des ACLs 7. Authentification & Autorisation 8. Exploration du Visual Policy Editor 9. Utilisation du BIG-IP Edge Client 10. Client-Side et Server-Side Checks 11. SAML 12. Personnalisation de l’interface APM Conclusion
  • 4.
    Public concerné Une formation Administrateursré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 Communicationclient/serveur Les bases de la configuration d’un F5 BIG-IP
  • 7.
    Une formation Mohamed AmineKADIMI Présentation du Lab
  • 8.
    Plan Une formation Le schémadu Lab Setup sur VMware Workstation OS et Licence F5
  • 9.
    Le schéma dulab Votre PC ou une VM Une VM F5 BIG-IP Une VM Linux interne Une VM Windows interne Une VM Linux externe
  • 10.
  • 11.
    Une formation Télécharger l’imageova : downloads.f5.com Générer une licence d’évaluation : f5.com/trials OS et Licence F5
  • 12.
    Une formation Mohamed AmineKADIMI Rappel des éléments de base de F5 BIG-IP
  • 13.
    Une formation Redécouvrir leboitier F5 Le système d’exploitation L’architecture Full-Proxy Les Node, Member, Pool, VS Plan
  • 14.
    Plan Une formation Le boitierBIG-IP L’interface de Management • Dédiée à l’administration Les interfaces TMM • Utilisées pour le trafic de données • Peuvent être utilisées pour l’administration
  • 15.
    Une formation Le systèmed’exploitation
  • 16.
  • 17.
    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 Mohamed AmineKADIMI Pourquoi F5 APM?
  • 19.
    Une formation Introduction àF5 APM Fonctionnalités principales Plan
  • 20.
    Plan Une formation Introduction àF5 APM F5 APM permet de faire de la gestion des accès : • Authentification • Autorisation • Accounting Fonctionne en autonome ou s’intègre à une architecture de Load Balancing LTM
  • 21.
    Plan Une formation Fonctionnalités principales Authentification •Base d’utilisateurs locale • Annuaire distant (AD, LDAP, Radius, Tacacs…) • Captcha • SSO, MFA, SAML… Contrôle de la machine et du système • Bios S/N, Motherboard S/N… • Version OS, patchs installés, Antivirus, Firewall…
  • 22.
    Plan Une formation Fonctionnalités principales Autorisation •Ressources autorisées selon profil utilisateur (groupe AD, attribut Radius…) • Niveau d’accès différent selon version de l’OS ou de l’antivirus par exemple • Access Control Lists L4 et L7 Reporting Géolocalisation
  • 23.
    Plan Une formation Fonctionnalités principales Accèsen mode portail Accès en mode client (PC/Mac/Mobile)
  • 24.
    Une formation Mohamed AmineKADIMI Publier une application en mode Web Application Access
  • 25.
    Une formation Comprendre lemode « Web Application Access » Déployer une application derrière APM Plan
  • 26.
    PlanLe mode WebApplication Access APM intercepte le trafic d’une application publiée sur BIG-IP Applique la politique d’accès configurée HTTP GET / HTTP GET /
  • 27.
    Plan Une formation Déployer uneapplication derrière APM Trois étapes simples : 1. Déployer l’application (VS, pools…) 2. Configurer un profil d’accès APM 3. Associer le profil d’accès au VS
  • 28.
    Une formation Mohamed AmineKADIMI Comprendre les Access Profiles et Access Policy
  • 29.
    Une formation Découvrir l’AccessProfile Utiliser l’Access Policy Plan
  • 30.
    Plan Une formation L’Access Profile Objetde configuration associé à un VS afin d’activer l’APM dessus Point de liaison entre le VS et la politique d’accès APM - Access Policy
  • 31.
    Plan Une formation L’Access Policy Objetde configuration associé à un Access Profile en 1 to 1 Définit les critères d’authentification et d’autorisation Définit les ressources autorisées à l’utilisateur
  • 32.
  • 33.
    Une formation Mohamed AmineKADIMI Introduction à l’authentification
  • 34.
    Une formation Comprendre l’objectifde l’authentification Configurer l’authentification Plan
  • 35.
    Plan Une formation Objectif del’authentification L’authentification permet de contrôler l’identité de l’utilisateur auprès d’un fournisseur d’identité  Afin d’ : • Autoriser -ou pas- l’accès • Attribuer les privilèges appropriés
  • 36.
    Plan Une formation Configurer l’authentification Commentinteragir avec l’utilisateur? • Logon Page • Exiger un certificat… Comment vérifier ses identifiants? • Base d’utilisateurs (locale ou distante) • Certificate Authority …
  • 37.
    Plan Une formation Configurer l’authentification Commentinteragir avec l’utilisateur? Comment vérifier ses identifiants?
  • 38.
    Une formation Mohamed AmineKADIMI Introduction au troubleshooting sur APM
  • 39.
    Une formation Inspecter leslogs et les rapports APM Utiliser les commandes de diagnostic Plan
  • 40.
    Plan Une formation Les logset les rapports APM F5 APM écrit les logs dans : • Une DB MySQL (jusqu’à 5M entrées) • Et dans /var/log/apm (10 jours) L’accès aux logs de la DB se fait en GUI • Plusieurs rapports prédéfinis • Logs groupés par sessions pour une meilleure visibilité
  • 41.
    Plan Une formation Les logset les rapports APM
  • 42.
    Plan Une formation Utiliser lescommandes de diagnostic tcpdump sessiondump sessiondump --list sessiondump --allkeys sessiondump --sid 0144a045 sessiondump --sid 0144a045 | grep clientip
  • 43.
    Une formation Mohamed AmineKADIMI Déployer des applications en mode Portal Access
  • 44.
    Une formation Comprendre lemode Portal Access Configurer le mode Portal Access Plan
  • 45.
    Plan Une formation Le modePortal Access L’utilisateur accède à un espace de travail composé de ressources autorisées • Applications Web, Tunnel VPN, Fichiers … Webtop Ressource
  • 46.
    Plan Une formation Le modePortal Access APM fonctionne comme reverse proxy • Il réécrit tous les liens de l’application • Encode les adresses internes Host: vpn.mysite.com GET /F5-w- 44384120984520 $$/index.php Host: 172.16.10.20 GET /index.php
  • 47.
    Plan Une formation Configurer unPortal Access Configurer le Webtop et les ressources Configurer l’Access Profile et l’Access Policy Configurer les profils requis Associer les profils au VS publié
  • 48.
    Une formation Mohamed AmineKADIMI Utiliser les agents Ressource Assign
  • 49.
    Une formation Définir l’action« Resource Assign » Utiliser les différents types de « Resource Assign » Plan
  • 50.
    Plan Une formation Resource Assign,c’est quoi? L’assignement de ressources est une étape importante de la Policy • C’est ce qui permet d’associer des ressources à la session • Selon le profil de l’utilisateur • Exemple : Webtop, Applications, RDP… • Sans Resource Assign, le mode portail ne fonctionnera pas correctement
  • 51.
    Plan Une formation Resource Assign,c’est quoi? Webtop Ressource Ressource
  • 52.
    Plan Une formation Utiliser lesResource Assign Plusieurs types d’agents VPE permettent d’assigner des ressources • Agent « Resource Assign », le plus simple • « AD/LDAP Group Resource Assign », assignement basé sur le groupe AD/LDAP • « Advanced Resource Assign », agent le plus souvent utilisé • …
  • 53.
    Une formation Mohamed AmineKADIMI Configurer un Webtop
  • 54.
    Une formation Récapitulatif Redéfinir leWebtop Découvrir les 3 types de Webtop Personnaliser un Webtop Plan
  • 55.
  • 56.
    PlanDéfinition du Webtop Environnementweb qui contient et présente les différentes ressources à l’utilisateur (Web-desktop) • Sans Webtop, le mode portail ne fonctionnera pas • Personnalisable par profil connecté
  • 57.
    Plan Une formation Les 3types de Webtop Full Supporte tous les types de ressources Portal Access Uniquement les ressources « Portal » Network Access Uniquement les ressources « Network Access »
  • 58.
    Plan Une formation Personnalisation duWebtop Un Webtop peut être configuré de sorte à : • Organiser les ressources publiées en sections • Afficher/masquer les barres de recherche et d’accès direct • Publier des fichiers en téléchargements • Publier des liens web externes • …
  • 59.
    Plan Une formation Personnalisation duWebtop Barre d’accès direct Barre de recherche Section Section réduite Téléchargements
  • 60.
    Une formation Mohamed AmineKADIMI Configurer un accès en mode Network Access
  • 61.
    Une formation Découvrir lemode Network Access Comprendre les Lease Pool Différencier entre les modes TCP et UDP Plan
  • 62.
    PlanLe mode NetworkAccess Offre un accès en mode VPN • Permet d’étendre l’accès aux ressources internes (surtout les non-web) • Depuis le navigateur • Ou avec un client F5 • Utilise TLS (aka SSL VPN) • Supporte TCP et UDP
  • 63.
    PlanLes Lease Pools Unclient VPN doit obtenir une adresse IP pour communiquer avec le réseau interne • Chaque client doit en obtenir une • Un serveur DHCP virtuel sur APM se charge d’attribuer ces adresses • La plage utilisable est appelée « Lease Pool » • Le VPN ne fonctionnera pas si un Lease Pool n’est pas configuré
  • 64.
    Plan Une formation Les modesTCP et UDP Le NA est par défaut basé sur TCP • Protocole plus fiable • Port 443 généralement Possible d’activer l’UDP • Basé sur le protocole DTLS (RFC 6347) • Très adapté à la VoIP, visioconf… • Port 4433 par défaut (VS doit être créé)
  • 65.
  • 66.
    Une formation Mohamed AmineKADIMI Gérer les paramètres avancés du Network Access
  • 67.
    Une formation Comprendre leSNAT Utiliser le Split Tunneling Optimiser les applications sur le VPN Lancer des applications automatiquement Plan
  • 68.
    Comprendre le SNAT SansSNAT L’adresse issue du lease pool est conservée Avec le SNAT L’adresse issue du lease pool est translatée 192.168.10.1192.168.10.1 172.16.10.100
  • 69.
    Utiliser le SplitTunneling Sans Split Tunneling Tout le trafic sortant est routé vers le tunnel Avec Split Tunneling On spécifie le trafic qui doit passer par le tunnel App interneGmail.com …
  • 70.
    Applications optimisées Le NetworkAccess offre une fonctionnalité d’optimisation d’applications • En utilisant un tunnel applicatif optimisé • Utilise une compression adaptive supportant plusieurs algorithmes • Basée sur un protocole propriétaire F5 « iSession » • Windows Only
  • 71.
    Lancement automatique desapplications Une application peut être automatiquement lancée après connexion au VPN • Celle-ci doit être installée sur le client • On configure son chemin • Supporte Windows/Mac/Unix/iOS/Android
  • 72.
    Une formation Mohamed AmineKADIMI Comprendre l'authentification sur F5 APM
  • 73.
    Une formation Comprendre l’authentificationsur APM Mettre en place un scénario d’authentification Plan
  • 74.
    Authentification sur F5APM APM authentifie l’utilisateur en vérifiant ses identifiants auprès d’une source d’authentification
  • 75.
    Une formation Authentification surF5 APM L’agent « Logon Page » est utilisé pour récolter les identifiants • User/password - OTP Cet agent présente aux utilisateurs une page de login personnalisable
  • 76.
    Une formation Authentification surF5 APM Les identifiants sont vérifiés auprès d’une source d’authentification • AD / LDAP • RADIUS / TACACS+ • HTTP • Local User DB • …
  • 77.
    Scénario d’authentification Un employépermanent a un compte AD et un compte RADIUS Les autres n’ont que des comptes AD Le besoin est le suivant: • Si Auth. AD + RADIUS  accès total • Si Auth. AD  accès limité • Sinon  aucun accès
  • 78.
    Une formation Mohamed AmineKADIMI Configurer l'authentification AD, RADIUS et la 2FA
  • 79.
    Une formation Configurer unserveur AD Configurer un serveur RADIUS Configurer l’authentification à double facteurs Plan
  • 80.
    Configurer un serveurAD Pour s’intégrer à l’AD il faut créer un objet AAA Server de type Active Directory : • En spécifiant un contrôleur de domaine • Ou bien un pool de contrôleurs de domaine • Ou en se basant sur la résolution DNS du domaine AD Attention à l’horloge entre APM et l’AD!
  • 81.
    Configurer un serveurRADIUS De même, pour s’authentifier sur un serveur RADIUS, il faut créer un objet RADIUS sur APM : • En définissant son adresse IP ou un pool d’adresses IP • Et le secret partagé
  • 82.
    Les facteurs d’authentificationpeuvent être classés en 3 catégories : 1. Quelque chose que je connais 2. Quelque chose que je possède 3. Quelque chose qui est propre à moi F5 APM peut combiner deux facteurs ou plus Configurer l’authentification à double facteurs (2FA)
  • 83.
    Use case réel: Identifiants AD + Token OTP APM authentifie d’abord l’utilisateur sur AD Puis sur un serveur RADIUS qui gère les OTP Alice:5ecR37 OK OK OTP? 900123 OK Username:Alice Password:5ecR37 Username:Alice Password:900123 Configurer l’authentification à double facteurs (2FA)
  • 84.
    Une formation Mohamed AmineKADIMI Configurer l'authentification locale
  • 85.
    Une formation Introduire l’authentificationlocale Configurer l’authentification locale Plan
  • 86.
    Introduction à l’authentificationlocale F5 APM supporte l’authentification locale des utilisateurs : • Pas besoin de bases externes d’utilisateurs • Utile pour des groupes restreints (Administrateurs, externes…) • Utile également pour des comptes de fallback si la base externe est injoignable
  • 87.
    Configuration de l’authentificationlocale Il faut d’abord créer une « LocalDB Instance » qui va contenir les utilisateurs Chaque instance a des attributs configurables (Lockout Interval, Lockout Threshold) Les utilisateurs peuvent être membres dans des groupes
  • 88.
    L’agent VPE «LocalDB Auth » permet d’authentifier l’utilisateur L’agent « Local Database » permet d’accéder à une LocalDB Instance • En lecture : pour lire les attributs de l’utilisateur • En écriture : pour les modifier ou créer dynamiquement des utilisateurs Configuration de l’authentification locale
  • 89.
    Une formation Mohamed AmineKADIMI Single Sign-On (SSO)
  • 90.
    Une formation Introduire leSSO Configurer le SSO Comprendre le SSO Crendial Mapping Plan
  • 91.
    Une formation Introduction auSSO Sans SSO, l’utilisateur s’authentifie sur APM puis sur chaque application
  • 92.
    Une formation Introduction auSSO Le SSO permet de réutiliser les identifiants de l’utilisateur pour s’authentifier sur les applications publiéesAPM enregistre les identifiants de l’utilisateur dans des variables de session (en mémoire) et les réutilise sur les ressources configurées pour le SSO
  • 93.
    Configurer le SSO •Méthode SSO (Form, HTTP Basic, NTLM…) • Configurer les attributs spécifiques à l’application Créer un profil SSO Affecter le profil à l’application Configurer le VPE • Associer le profil à une URL ou plusieurs URL de l’application (Resource Items) utilisées pour s’authentifier • Agent « SSO Credential Mapping » afin de mettre les identifiants en cache pour pouvoir les réutiliser
  • 94.
    Une formation Configurer leSSO – RDP Pour les ressources RDP, la configuration est plus simple, il suffit d’activer le SSO sur la ressource RDP
  • 95.
    Une formation Agent SSOCredential Mapping
  • 96.
    Une formation Mohamed AmineKADIMI Autorisation Active Directory
  • 97.
    Une formation Définir l’autorisationActive Directory Utiliser l’agent « AD Query » Exemples d’usage Plan
  • 98.
    Autorisation Active Directory Lagestion des autorisations permet de contrôler les privilèges d’accès Active Directory est fréquemment utilisé pour conditionner les droits d’accès • Exemple: utiliser les groupes AD pour contrôler l’accès aux ressources • Filtrer les utilisateurs selon des attributs AD
  • 99.
    1. Authentification 2. ADQuery 3. Autorisation selon le contenu de la réponse réçue de l’AD Auth Auth OK Auth Réponse AD Query Autorisation Active Directory
  • 100.
    Utiliser l’agent ADQuery L’agent « AD Query » indique à APM de solliciter le serveur AD pour récupérer les attributs de l’utilisateur • Attribut memberOf pour lire les groupes • D’autres attributs permettent de lire tout type d’informations souhaitées • Les valeurs retournées sont enregistrées dans des variables de session
  • 101.
  • 102.
    Autres usages deAD Query L’autorisation AD permet de déléguer la gestion des attributs à l’AD tout en exécutant les contrôles sur APM, par exemple : • Adresse(s) MAC ou BIOS S/N autorisé(s)  Si l’utilisateur se présente depuis une machine non déclarée dans son compte AD, alors il est bloqué
  • 103.
    Une formation Mohamed AmineKADIMI Introduction aux ACLs
  • 104.
    Une formation Comprendre l’utilitédes ACLs Découvrir la granularité offerte par APM Comprendre la logique des ACL/ACE Distinguer les deux types d’ACLs Plan
  • 105.
    Utilité des ACLs LesACLs permettent de définir le trafic autorisé entre un client VPN et le LAN cible Exemple : le trafic client VPN est • Routé vers 192.168.1.0/24 • Autorisé vers 192.168.1.1 • Bloqué vers 192.168.1.2 • Bloqué vers port 22 • … 192.168.10.1 192.168.1.0/24
  • 106.
    Une formation ACL etgranularité APM Grâce au puissant modèle utilisé par F5 APM, on peut répondre à tout scénario imaginable : • Faire du filtrage ACL par utilisateurs/groupes AD • Faire du filtrage ACL ponctuel • Faire du filtrage ACL basé sur l’OS client, les mises à jours installés • …
  • 107.
    Une formation ACL etgranularité APM Allow 192.168.1.10 Reject 192.168.1.0/24 Allow 172.16.1.0/24 Reject All Allow 192.168.1.1 Reject Any
  • 108.
    Une formation Les ACLet les ACE Une ACL est composée d’entrées définissant les règles de filtrage • Ces entrées sont appelées ACE Une fois configurée, une ACL doit être assignée (Resource Assign) • Elles sont donc appliquées par session APM
  • 109.
    Une formation Les ACLet les ACE Les ACE définissent les règles de filtrage • Elles ont un type (L4 ou L7) • Des conditions (IPs source, destination, ports, protocole…) • Une action (Allow, Continue, Discard, Reject) L’ordre des ACE est important!
  • 110.
    Une formation Les ACLet les ACE Problème! Lequel?
  • 111.
    Une formation Les deuxtypes d’ACLs 1. Les ACL statiques : configurées localement sur APM 2. Les ACL dynamiques : configurées ailleurs (AD typiquement) et récupérées lors de la connexion de l’utilisateur
  • 112.
    Une formation Mohamed AmineKADIMI Configurer les ACL statiques
  • 113.
    Une formation Définir lesACLs statiques Créer des ACLs statiques Configurer les ACEs Plan
  • 114.
    Une formation Définition desACLs statiques Une ACL statique est une ACL dont les règles (ACEs) sont configurées statiquement sur le BIG-IP
  • 115.
    Une formation Créer desACLs statiques • Name • Type: Static • ACL Order Créer l’ACL Ajouter les règles (ACEs) Assigner l’ACL • Type: L4 | L7 | L4+L7 • Conditions (source, dest., proto…) • Action: Allow | Continue | Discard | Reject • Log ? • Agent « ACL Assign » ou • Agent « Advanced Resource Assign »
  • 116.
    Une formation Configurer lesACEs Les ACEs reposent sur le pattern « Condition  Action » • Les conditions définissent le trafic exact qui doit matcher pour déclencher l’action de la règle • Les actions possibles : • Allow : pour autoriser • Discard : pour bloquer silencieusement • Reject : pour bloquer tout en informant l’émetteur • Continue : pour arrêter le traitement de l’ACL et passer à la suivante
  • 117.
    Configurer les ACEs Ilexiste trois types d’ACEs Ces types contrôlent les conditions de vérification possibles sur le trafic L4 L7 L4+L7 Contrôles de couche 4 • IPs et ports source • IPs et ports dest • protocole Contrôles de couche 7 • Hostname • Path • HTTP ou HTTPS Contrôles de couche 4 et 7
  • 118.
  • 119.
    Une formation Mohamed AmineKADIMI Configurer les ACL dynamiques
  • 120.
    Une formation Définir lesACLs dynamiques Créer des ACLs dynamiques Écrire des ACEs au format F5 Écrire des ACEs au format Cisco Plan
  • 121.
    Une formation Définition desACLs dynamiques Une ACL dynamique est une ACL dont les règles (ACEs) sont dynamiquement chargées lors de l’ouverture de la session Typiquement depuis un annuaire externe
  • 122.
    Une formation Créer desACLs dynamiques • Name • Type: Dynamic • ACL Order Créer l’ACL Assigner l’ACL Définir les ACEs • Agent « Dynamic ACL » • Champ source à spécifier (variable de session) • Format à spécifier : F5 | Cisco • Typiquement dans un AD ou RADIUS • Dans le même champ défini sur F5 • Au même format défini sur F5
  • 123.
    Exemple avec annuaireAD Les règles sont configurées sur l’annuaire Elles sont récupérées lors de la connexion de l’utilisateur Et utilisées tout au long de la session deny RDP allow Any
  • 124.
    Une formation Écrire uneACE au format F5 La syntaxe des ACEs au format F5 est: comment { action [logging_options] context } Exemple : SSH vers LAN { allow tcp any 172.16.10.0/24:22 } acces Web server { allow tcp any 10.1.2.3:443 } regle par defaut { reject log ip any any } {allow tcp any 172.16.10.0/24:22 } { allow tcp any 10.1.2.3:443 } { reject log ip any any }
  • 125.
    Une formation Écrire uneACE au format F5 Les ACEs au format F5 supportent également le filtrage L7 (HTTP): comment { action [logging_options] context } Exemple: { allow http any 10.1.2.3 https://ww?.alphorm.*/* } { allow http any 10.1.2.3 https://ww?.alphorm-test.*/* }
  • 126.
    Une formation Écrire uneACE au format Cisco La syntaxe est celle utilisée par Cisco ACS pour définir les « Downloadable ACL » Exemple : ip:inacl#10=permit tcp any 172.16.1.0 0.0.0.255 eq ssh ip:inacl#20=permit tcp any host 10.1.2.3 eq https ip:inacl#100=deny ip any any log
  • 127.
  • 128.
    Une formation Mohamed AmineKADIMI Utiliser les macros
  • 129.
    Une formation Définir lesmacros Comprendre les avantages des macros Connaître quelques propriétés des macros Plan
  • 130.
    Définition des macros Unemacro est un flux d’actions • Identique au flux configuré par le VPE • (Ré)utilisable au sein d’une politique
  • 131.
    Une formation Avantages desmacros L’utilisation des macros facilite la gestion de la politique en la rendant • Plus lisible et moins chargée • Plus flexible • Plus facile à modifier • Moins susceptible aux erreurs • …
  • 132.
    Propriétés des macros Lesmacros sont réutilisables au sein de la même politique On peut boucler l’exécution d’une macro (jusqu’à 5 exécutions) Une macro créée ne sert à rien si elle n’est pas appelée par la politique Une seule macro peut aboutir à différentes branches de sortie selon la logique définie
  • 133.
    Une formation Mohamed AmineKADIMI Exploiter les Macro Loops et les actions terminales
  • 134.
    Une formation Comprendre lesEndings et les Terminals Définir les Macro Loops Plan
  • 135.
    Une formation Endings etTerminals Un Ending dans le VPE est l’aboutissement de la politique
  • 136.
    Une formation Ending etTerminals Un Terminal est l’output d’une Macro
  • 137.
    Une formation Ending etTerminals Les Endings et les Terminals peuvent être personnalisés : • D’apparence (couleurs et noms) • De type d’action (Endings uniquement) • Allow • Deny • Redirect On peut ajouter autant de Terminals/Endings que l’on souhaite
  • 138.
    Une formation Les MacroLoops Une Macro Loop est une action terminale spéciale qui permet de rejouer la Macro jusqu’à 5 fois Exemple: pour permettre au client de retenter une authentification échouée
  • 139.
    Une formation Mohamed AmineKADIMI Configurer l'accès sécurisé en mode App Tunnel
  • 140.
    Une formation Définir lesApp Tunnels Configurer les App Tunnels Plan
  • 141.
    Une formation Définition duApp Tunnel Un App Tunnel est un tunnel sécurisé pour une seule application TCP : • Contrairement à un VPN qui est un tunnel sécurisé supportant plusieurs applications • Un App Tunnel identifie explicitement l’application tunnelisée (adresse + port) • Exemples: client RDP, application Web
  • 142.
    Une formation Configurer unApp Tunnel Configurer un objet App Tunnel • Ce n’est qu’un conteneur Configurer les « Resource Items » • Ce sont les définitions des applications tunnélisées Assigner l’App Tunnel à la policy APM
  • 143.
  • 144.
    Une formation Mohamed AmineKADIMI Configurer et déployer BIG-IP Edge Client
  • 145.
    Une formation Découvrir leBIG-IP Edge Client Découvrir les avantages du BIG-IP Edge Client Installer le client BIG-IP Edge Plan
  • 146.
    Découvrir BIG-IP EdgeClient BIG-IP Edge Client est une application de type client VPN : • Permettant de se connecter à un VPN via F5 APM • Sans utiliser de browser • Disponible pour plusieurs OS : Windows, Linux (CLI), Android, iOS, Chrome OS • Apporte certaines fonctionnalités
  • 147.
    Une formation Avantages duBIG-IP Edge Client Mode Always connected Reconnexion automatique Password caching Location Awareness Réutilisation des identifiants Windows
  • 148.
    Une formation Installer BIG-IPEdge Client Exporter le package d’installation depuis le BIG-IP puis l’installer sur les postes clients • Applicable pour Windows, MAC et Linux Installer le client depuis le store • Applicable pour Windows, MAC, Android, iOS, Chrome OS
  • 149.
    Une formation Mohamed AmineKADIMI Découvrir Endpoint Security
  • 150.
    Une formation Définir EndpointSecurity Découvrir les deux catégories d’Endpoint Security Plan
  • 151.
    Découvrir Endpoint Security Lafonctionnalité « Endpoint Security » permet de valider que le client distant est conforme à certaines conditions avant de lui accorder l’accès adapté : • L’antivirus est installé et à jour • Un patch Windows est installé • Le device ID d’un smartphone est valide • …
  • 152.
    Une formation Découvrir EndpointSecurity Les contrôles Endpoint Security sont classés en deux catégories : 1. Client-side Regroupe les contrôles basés sur des informations collectées localement sur le client 2. Server-side Regroupe les contrôles basés sur des informations présentes sur APM ou envoyées par le client
  • 153.
  • 154.
  • 155.
    Une formation Mohamed AmineKADIMI Utiliser l'Endpoint Security (client-side)
  • 156.
    Une formation Configurer lescontrôles client-side selon un scénario prédéfini Plan
  • 157.
    Une formation Scénario dubesoin client Les conditions pour avoir l’accès total: 1. Adresse MAC du client validé depuis AD 2. OS Windows 8 ou Windows 10 3. Firewall Windows activé Si 3 non satisfaite, permettre l’accès à une application web uniquement et assigner des ACL
  • 158.
    Une formation Mohamed AmineKADIMI Utiliser l'Endpoint Security (server-side)
  • 159.
    Une formation Configurer lescontrôles server-side selon un scénario prédéfini Plan
  • 160.
    Une formation Scénario dubesoin client 1. Si l’adresse IP du client appartient à un pays européen, afficher un texte légal que l’utilisateur doit accepter pour poursuivre 2. L’accès ne doit être autorisé que lors de la plage horaire de travail. Sinon, afficher un message informatif et refuser l’accès
  • 161.
    Une formation Mohamed AmineKADIMI Introduction à SAML
  • 162.
    Une formation Découvrir leSAML Comprendre le fonctionnement du SAML Plan
  • 163.
    Une formation Découvrir SAML SecurityAssertion Markup Language Langage basé sur XML, qui définit les normes d’échange d’informations d’authentification et d’autorisation entre fournisseurs de services et fournisseurs d’identité Utilisé pour le SSO surtout
  • 164.
    Une formation Découvrir SAML SansSSO, chaque application gère l’authentification d’une façon autonome
  • 165.
    Une formation Découvrir SAML AvecSAML, l’authentification est centralisée
  • 166.
    Une formation Aperçu duflux SAML Source: https://www.elastic.co/fr/blog/how-to-enable-saml-authentication-in-kibana-and-elasticsearch
  • 167.
    Une formation Mohamed AmineKADIMI Configurer SAML sur BIG-IP APM
  • 168.
    Une formation Comprendre lesdifférents modes de déploiement Déployer SAML sur F5 APM Plan
  • 169.
  • 170.
  • 171.
  • 172.
    Une formation Configurer SAMLsur F5 APM La configuration du SAML sur APM nécessite la configuration de plusieurs objets : • Le fournisseur du service souhaité (IdP et/ou SP) • Les connecteurs avec les SP/IdP externes • VS, Access Profile, ressources SAML • …
  • 173.
    Une formation Mohamed AmineKADIMI Personnaliser l'apparence des portails et clients BIG-IP
  • 174.
    Une formation Que peut-onpersonnaliser ? Comment personnaliser ? Plan
  • 175.
    Une formation Que peut-onpersonnaliser ? L’interface utilisateur peut supporter plusieurs langues • F5 affiche à l’utilisateur la langue préférée de son browser En plus, le contenu affiché peut être personnalisé pour chaque langue • Le texte • Le branding
  • 176.
    Une formation Exemples Activation deplusieurs langues Personnalisation du contenu
  • 177.
    Une formation Comment personnaliser? Trois méthodes de personnalisation Quick Start/Basic • Mise en œuvre rapide mais limitée General • Plus d’options, couvre la plupart des besoins Advanced • La plus avancée: modification directe du HTML/CSS
  • 178.
    Une formation Mohamed AmineKADIMI Définir et configurer un scénario d'accès distant
  • 179.
    Une formation Définir lebesoin du scénario Réaliser la configuration Plan
  • 180.
    Une formation Définition dubesoin Les utilisateurs sont classés en 3 profils dont voici les définitions : Admins IT Sales Others Network Access  Site interne    CRM  Fichier PDF  Lien Alphorm  Admins IT Sales Others Users user1 user2 user3 Auth. method AD + Radius AD + Radius AD Checks Bios S/N FW+AV actifs Bios S/N FW+AV actifs Bios S/N FW+AV actifs
  • 181.
    Une formation Définition dubesoin Exigences à respecter : • Un seul VS utilisable • Authentification AD • L’utilisateur ne doit pas pouvoir accéder aux ressources non autorisées • SSO à mettre en place pour le site interne
  • 182.
    Une formation Pour tester AdminsIT* Sales* Others user1  user2  user3  Utiliser les utilisateurs suivants * Groupes AD
  • 183.
    Une formation Mohamed AmineKADIMI Etendre le scénario avec des nouveaux besoins
  • 184.
    Une formation Définir lesnouveaux besoins Modifier la configuration Plan
  • 185.
    Une formation Définition dubesoin Nouvelles exigences à respecter : • Les « Admins IT » doivent être déconnectés au bout de 5 minutes d’inactivité • Si un client du profil « Others » demande l’URI /download: • Authentification AD uniquement • Ressources: fichiers téléchargeables uniquement
  • 186.
    Une formation Mohamed AmineKADIMI Mot de la fin
  • 187.
    Bilan de laformation
  • 188.
    Une formation F5 APMgère les accès distants, avec toutes les fonctions qui s’y apparentent • Authentification avancée supportant plusieurs méthodes • Autorisation basée sur plusieurs attributs possibles • Accounting APM est très granulaire et ergonomique Rôle de l’APM dans l’écosystème F5 BIG-IP
  • 189.
    Une formation Modes dedéploiement Plusieurs modes de déploiement sécurisés sont possibles • Web Application Access • Portal Access • Network Access • App Tunnel
  • 190.
    Une formation Les élémentsde base d’un déploiement APM • Le listener – point d’entrée • Définit les propriétés de base (langue, timeout…) • Définit les propriétés de l’accès distant (authentification, autorisation…) Virtual Server Access Profile Access Policy
  • 191.
    Une formation L’Access Policy Élémentcentral de la configuration APM : • Spécifie les critères d’authentification et d’autorisation • Définit les ressources autorisées à l’utilisateur Le VPE est au cœur de la configuration de l’Access Policy • Composé d’agents VPE et de macros
  • 192.
  • 193.
    Une formation L’authentification F5 APMrécolte les identifiants de l’utilisateur et les valide : • Auprès d’une base locale • Un annuaire AD/LDAP • RADIUS / TACACS+ • Authentification HTTP • Par certificat • …
  • 194.
    Une formation L’autorisation F5 APMgère les autorisations selon le profil authentifié • Exemple: définir les privilèges d’accès pour l’utilisateur selon son appartenance aux groupes AD AD est très souvent utilisé, et ce à travers l’agent AD Query
  • 195.
    Une formation Les ACLs Pourune connexion distante, les ACLs contrôlent le trafic autorisé/rejeté Deux types : 1. ACLs statiques 2. ACLs dynamiques
  • 196.
    Une formation Endpoint Security F5APM peut valider que le client est conforme à certaines conditions avant de lui accorder l’accès adapté Deux types : 1. Client-side 2. Server-side
  • 197.
    Une formation SAML Mécanisme d’authentificationpermettant d’implémenter le SSO Le client demande un service au Service Provider (SP), celui-ci délègue l’authentification à un Identity Provider (IdP) F5 peut faire office de SP et/ou d’IdP
  • 198.
    Une formation Personnalisation de l’apparencede l’APM On peut personnaliser le texte et/ou le branding Trois méthodes de personnalisation: 1. Quick Start/Basic 2. General 3. Advanced
  • 199.