6.2. Configuration du contrôleur d’entrée secondaire
Il est nécessaire de configurer un contrôleur d’entrée secondaire pour segmenter votre trafic externe protégé par WAF de votre contrôleur d’entrée standard (et par défaut).
Conditions préalables
Certificat SAN ou wildcard de confiance pour votre domaine personnalisé, tel que CN=*.apps.example.com
ImportantAmazon CloudFront utilise HTTPS pour communiquer avec le contrôleur secondaire d’entrée de votre cluster. Comme expliqué dans la documentation Amazon CloudFront, vous ne pouvez pas utiliser un certificat autosigné pour la communication HTTPS entre CloudFront et votre cluster. Amazon CloudFront vérifie que le certificat a été délivré par une autorité de certification de confiance.
Procédure
Créez un nouveau secret TLS à partir d’une clé privée et d’un certificat public, où fullchain.pem est votre chaîne de certificats wildcard complète (y compris les intermédiaires) et privkey.pem est la clé privée de votre certificat wildcard.
Exemple :
oc -n openshift-ingress create secret tls waf-tls --cert=fullchain.pem --key=privkey.pem
$ oc -n openshift-ingress create secret tls waf-tls --cert=fullchain.pem --key=privkey.pemCopy to Clipboard Copied! Toggle word wrap Toggle overflow Créer une nouvelle ressource IngressController:
Exemple waf-ingress-controller.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Le remplacement par le domaine personnalisé que vous souhaitez utiliser pour IngressController.
- 2
- Filtre l’ensemble d’itinéraires desservis par le contrôleur Ingress. Dans ce tutoriel, nous utiliserons le sélecteur de route waf, mais si aucune valeur n’était fournie, aucun filtrage ne se produirait.
Appliquer le logiciel IngressController:
Exemple :
oc apply -f waf-ingress-controller.yaml
$ oc apply -f waf-ingress-controller.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow Assurez-vous que votre IngressController a réussi à créer un équilibreur de charge externe:
oc -n openshift-ingress get service/router-cloudfront-waf
$ oc -n openshift-ingress get service/router-cloudfront-wafCopy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE router-cloudfront-waf LoadBalancer 172.30.16.141 a68a838a7f26440bf8647809b61c4bc8-4225395f488830bd.elb.us-east-1.amazonaws.com 80:30606/TCP,443:31065/TCP 2m19s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE router-cloudfront-waf LoadBalancer 172.30.16.141 a68a838a7f26440bf8647809b61c4bc8-4225395f488830bd.elb.us-east-1.amazonaws.com 80:30606/TCP,443:31065/TCP 2m19sCopy to Clipboard Copied! Toggle word wrap Toggle overflow
6.2.1. Configurer l’AWS WAF Copier lienLien copié sur presse-papiers!
Le service AWS WAF est un pare-feu d’application Web qui vous permet de surveiller, de protéger et de contrôler les requêtes HTTP et HTTPS qui sont transmises à vos ressources d’application Web protégées, comme ROSA.
Créer un fichier de règles AWS WAF pour s’appliquer à notre ACL web:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Cela activera les jeux de règles gérés Core (Common) et SQL AWS.
Créer un AWS WAF Web ACL en utilisant les règles que nous avons spécifiées ci-dessus:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow