Contrôleur d'entrée Citrix ADC

Adresses IP autorisées ou bloquées

Allowlisting IP addresses vous permet de créer une liste d’adresses IP ou de plages d’adresses IP fiables à partir desquelles les utilisateurs peuvent accéder à vos domaines. Il s’agit d’une fonctionnalité de sécurité souvent utilisée pour limiter et contrôler l’accès uniquement aux utilisateurs de confiance.

Blocklisting IP addresses est un mécanisme de contrôle d’accès de base. Il refuse l’accès aux utilisateurs accédant à votre domaine à l’aide des adresses IP que vous avez bloquées.

Le CRD de réécriture et de répondeur fourni par Citrix vous permet de définir des stratégies de réécriture et de répondeur étendues à l’aide de jeux de données, de jeux de patsets et de mappages de chaînes, ainsi que d’activer les journaux d’audit pour les statistiques sur le Citrix ADC Ingress.

En utilisant les stratégies de réécriture ou de réponse, vous pouvez mettre sur liste d’autorisation ou de blocage les adresses IP/CIDR à l’aide desquelles les utilisateurs peuvent accéder à votre domaine.

Les sections suivantes décrivent différentes manières d’autoriser ou de bloquer les adresses IP/CIDR à l’aide des stratégies de réécriture ou de répondeur.

Adresses IP de la liste d’autorisation

À l’aide d’une stratégie de répondeur, vous pouvez créer une liste d’adresses IP autorisées et supprimer silencieusement les demandes des clients à l’aide d’adresses IP différentes des adresses IP autorisées.

Créez un fichier nommé allowlist-ip.yaml avec la configuration de stratégie de réécriture suivante :

apiVersion: citrix.com/v1
kind: rewritepolicy
metadata:
  name: allowlistip
spec:
  responder-policies:
    - servicenames:
        - frontend
      responder-policy:
        drop:
        respond-criteria: '!client.ip.src.TYPECAST_text_t.equals_any("allowlistip")'
        comment: 'Allowlist certain IP addresses'
  patset:
    - name: allowlistip
      values:
        - '10.xxx.170.xx'
        - '10.xxx.16.xx'
<!--NeedCopy-->

Vous pouvez également fournir les adresses IP sous forme de liste :

apiVersion: citrix.com/v1
kind: rewritepolicy
metadata:
  name: allowlistip
spec:
  responder-policies:
    - servicenames:
        - frontend
      responder-policy:
        drop:
        respond-criteria: '!client.ip.src.TYPECAST_text_t.equals_any("allowlistip")'
        comment: 'Allowlist certain IP addresses'
  patset:
    - name: allowlistip
      values: [ '10.xxx.170.xx', '10.xxx.16.xx' ]
<!--NeedCopy-->

Déployez ensuite le fichier YAML (allowlist-ip.yaml) à l’aide de la commande suivante :

kubectl create -f allowlist-ip.yaml

Listes d’adresses IP autorisées et envoi de la réponse 403 à la demande des clients qui ne figurent pas dans la liste d’autorisation

À l’aide d’une stratégie de répondeur, vous pouvez répertorier une liste d’adresses IP et envoyer la HTTP/1.1 403 Forbidden réponse aux demandes des clients à l’aide d’adresses IP différentes des adresses IP autorisées.

Créez un fichier nommé allowlist-ip-403.yaml avec la configuration de stratégie de réécriture suivante :

apiVersion: citrix.com/v1
kind: rewritepolicy
metadata:
  name: allowlistip
spec:
  responder-policies:
    - servicenames:
        - frontend
      responder-policy:
        respondwith:
          http-payload-string: '"HTTP/1.1 403 Forbidden\r\n\r\n" + "Client: " + CLIENT.IP.SRC + " is not authorized to access URL:" + HTTP.REQ.URL.HTTP_URL_SAFE +"\n"'
        respond-criteria: '!client.ip.src.TYPECAST_text_t.equals_any("allowlistip")'
        comment: 'Allowlist a list of IP addresses'
  patset:
    - name: allowlistip
      values: [ '10.xxx.170.xx',  '10.xxx.16.xx' ]
<!--NeedCopy-->

Déployez ensuite le fichier YAML (allowlist-ip-403.yaml) à l’aide de la commande suivante :

kubectl create -f allowlist-ip-403.yaml

Liste verte d’un CIDR

Vous pouvez créer une liste d’adresses CIDR à l’aide d’une stratégie de répondeur. Voici un exemple de configuration de stratégie de répondeur pour mettre en liste verte un CIDR :

apiVersion: citrix.com/v1
kind: rewritepolicy
metadata:
  name: blocklistips1
spec:
  responder-policies:
    - servicenames:
        - frontend
      responder-policy:
        respondwith:
          http-payload-string: '"HTTP/1.1 403 Forbidden\r\n\r\n" + "Client: " + CLIENT.IP.SRC + " is not authorized to access URL:" + HTTP.REQ.URL.HTTP_URL_SAFE +"\n"'
        respond-criteria: '!client.ip.src.IN_SUBNET(10.xxx.170.xx/24)'
        comment: 'Allowlist certain IPs'
<!--NeedCopy-->

Adresses IP de la liste de blocage

À l’aide d’une stratégie de répondeur, vous pouvez bloquer les adresses IP et supprimer silencieusement les demandes des clients à l’aide des adresses IP bloquées.

Créez un fichier nommé blocklist-ip.yaml avec la configuration de stratégie de répondeur suivante :

apiVersion: citrix.com/v1
kind: rewritepolicy
metadata:
  name: blocklistips
spec:
  responder-policies:
    - servicenames:
        - frontend
      responder-policy:
        respondwith:
        drop:
        respond-criteria: 'client.ip.src.TYPECAST_text_t.equals_any("blocklistips")'
        comment: 'Blocklist certain IPS'

  patset:
    - name: blocklistips
      values:
        - '10.xxx.170.xx'
        - '10.xxx.16.xx'
<!--NeedCopy-->

Déployez ensuite le fichier YAML (blocklist-ip.yaml) à l’aide de la commande suivante :

kubectl create -f blocklist-ip.yaml

Bloquer un CIDR

Vous pouvez bloquer un CIDR à l’aide d’une stratégie de répondeur. Voici un exemple de configuration de stratégie de répondeur pour bloquer un CIDR :

apiVersion: citrix.com/v1
kind: rewritepolicy
metadata:
  name: blocklistips1
spec:
  responder-policies:
    - servicenames:
        - frontend
      responder-policy:
        respondwith:
          http-payload-string: '"HTTP/1.1 403 Forbidden\r\n\r\n" + "Client: " + CLIENT.IP.SRC + " is not authorized to access URL:" + HTTP.REQ.URL.HTTP_URL_SAFE +"\n"'
        respond-criteria: 'client.ip.src.IN_SUBNET(10.xxx.170.xx/24)'
        comment: 'Blocklist certain IPs'
<!--NeedCopy-->

Liste autorisée d’adresses IP CIDR et de liste d’adresses IP bloquées

Vous pouvez créer une liste d’adresses CIDR et également des adresses IP bloquées à l’aide d’une stratégie de répondeur. Voici un exemple de configuration de stratégie de répondeur :

apiVersion: citrix.com/v1
kind: rewritepolicy
metadata:
  name: allowlistsub
spec:
  responder-policies:
    - servicenames:
        - frontend
      responder-policy:
        drop:
        respond-criteria: 'client.ip.src.TYPECAST_text_t.equals_any("blocklistips") || !client.ip.src.IN_SUBNET(10.xxx.170.xx/24)'
        comment: 'Allowlist a subnet and blocklist few IP's'

  patset:
    - name: blocklistips
      values:
        - '10.xxx.170.xx'
<!--NeedCopy-->

Bloquer les adresses IP d’un CIDR et d’une liste d’autorisation

Vous pouvez créer une liste de blocage d’adresses CIDR et également une liste d’adresses IP autorisées à l’aide d’une stratégie de répondeur. Voici un exemple de configuration de stratégie de répondeur :

apiVersion: citrix.com/v1
kind: rewritepolicy
metadata:
  name: blocklistips1
spec:
  responder-policies:
    - servicenames:
        - frontend
      responder-policy:
        drop:
        respond-criteria: 'client.ip.src.IN_SUBNET(10.xxx.170.xx/24) && !client.ip.src.TYPECAST_text_t.equals_any("allowlistips")'
        comment: 'Blocklist a subnet and allowlist few IP's'

  patset:
    - name: allowlistips
      values:
        - '10.xxx.170.xx'
        - '10.xxx.16.xx'
<!--NeedCopy-->