HCL AppScan 360° Instructions préalables

Ce document fournit une liste de contrôle complète des conditions préalables au déploiement de HCL AppScan 360°, couvrant le serveur de déploiement, le cluster Kubernetes, les dépendances externes et les ressources requises. Utilisez les commandes de validation pour vérifier la configuration. Pour obtenir des instructions de configuration détaillées, reportez-vous au Guide de préparation du fichier de configuration.

Conditions préalables du serveur de déploiement

Le serveur de déploiement est un système basé sur Linux utilisé pour lancer et gérer le déploiement de AppScan 360°.

Catégorie Exigence
Système d'exploitation Ubuntu 22.04/Ubuntu 24.04/RHEL 9
Logiciel
  • Shell Bash
  • Docker (pour le service de conteneur local, voir Installation de Docker), pour l'environnement Ubuntu
  • Podman (pour le service de conteneur local), pour l'environnement RHEL (souvent préinstallé)
  • Kubectl (pour la gestion des clusters Kubernetes, voir Installation de Kubectl)
  • Helm 4 (voir Installation de Helm)
Configuration
  • Les ports 80, 443, 5443, 6443, 7443, 8443 doivent être disponibles et ouverts à l'accès

  • Doit être en mesure d'atteindre les serveurs MSSQL et DPR désignés pour le mode Personnalisé

Conditions préalables du cluster Kubernetes

Le cluster Kubernetes héberge la plateforme AppScan 360° et nécessite des composants et des configurations spécifiques.
Catégorie Exigence
Composants
  • Contrôleur Ingress (NGINX, version 1.11.5, 1.12.1 ou ultérieure, par exemple).

    Configuration :

    - proxy-body-size : 2g

    - proxy-connect-timeout : 3600

    - proxy-read-timeout : 3600

    - proxy-send-timeout : 3600

    - enable-access-log-for-default-backend : true

    - ssl-redirect : true

    - use-http2 : true

    - use-forwarded-headers : true

    - compute-full-forwarded-for : true

  • Cert-manager (version 1.11.0 ou compatible)

    Référence : Installation de Cert-Manager

Stockage
  • Classe de stockage prenant en charge les modes d'accès ReadWriteMany (RWX) pour les volumes persistants

  • Pilote Kubernetes CSI avec prise en charge du contexte de sécurité fsGroup

Gestion de réseau
  • Double pile IPv4/IPv6 activée, si IPv6 est nécessaire

  • Prise en charge de la stratégie réseau pour les communications chiffrées

Nœuds worker
  • Assurez-vous que les ressources sont suffisantes pour l'examen dynamique et statique (voir Ressources requises)
Remarque : Pour l'examen dynamique, augmentez le nombre d'instances inotify dans le noyau dans tous les nœuds où les examens dynamiques sont exécutés :
  • Ajoutez fs.inotify.max_user_instances=524288 à /etc/sysctl.conf .

  • Redémarrez le nœud pour que les modifications soient prises en compte.

  • Pour les clusters plus petits, 32800 peut suffire, mais 524288 est recommandé pour un examen dynamique robuste.

Dépendances externes

AppScan 360° s'appuie sur des services externes qui doivent être configurés et accessibles.
Catégorie Exigence
Base de données

MSSQL Server 2019 ou version ultérieure, configuré avec les autorisations db_creator, accessible pour le stockage des données d'examen (environ 150 Ko par exécution d'examen)

Authentification
  • SSO - OIDC (keycloak/Okta) OU

  • Microsoft Active Directory/Domino (LDAP) via le port 389/636/TCP

  • Pour l'authentification des utilisateurs locaux par défaut : Admin (mot de passe : Admin12!), User (mot de passe : User123!) créé lors de l'installation

E-mail Serveur SMTP via le port 25/TCP pour l'envoi de notifications
Octroi des licences Accès au portail de gestion des licences HCL via le port 443/TCP pour l'activation de la licence (ID requis)
Registre de conteneur Registre de conteneur distant pour le stockage et l'extraction d'images de conteneur AppScan 360
Réseau Certificat approuvé pour une communication sécurisée (importez les certificats non approuvés dans le magasin de clés JRE du client, si nécessaire)
Stockage Stockage de fichiers pour les données d'examen (voir Exigences de stockage)

Exigences de stockage

AppScan 360° nécessite une base de données MSSQL et un stockage de fichiers. Les besoins de stockage estimés en fonction des exécutions d'examen sont les suivants :

Exécutions d'examen

Stockage sur serveur MSSQL

Stockage de fichiers

1 000 1 Go 10 Go
100,000 5 Go 100 Go
1 000 000 20 Go 1000 GB

Recommandation : Allouez au moins 200 Go pour le stockage du serveur MSSQL et le stockage de fichiers afin d'accueillir les journaux temporaires. Le stockage doit être chiffré, redondant, partageable entre les pods et prendre en charge le mode d'accès ReadWriteMany (RWX). Les anciens examens peuvent être supprimés manuellement pour libérer de l'espace.

Besoins en ressources

AppScan 360° Plateforme

Composant Mémoire (Min/Max) UC (vCore, Min/Max)
ASCP 42 Go/48 Go 10/12

Ressources d'examen

Scénario Mémoire (Min/Rec) UC (vCore, Min/Rec)
Analyse dynamique : examen unique 3 Go/4 Go 2/3
Analyse dynamique : cinq examens simultanés 15 Go/20 Go 10/15
Analyse dynamique : dix examens simultanés 30 Go/40 Go 20/30
Analyse statique : examen unique 16 Go/28 Go 2/4
Analyse statique : cinq examens simultanés 80 Go/140 Go 10/20
Analyse statique : dix examens simultanés 160 Go/280 Go 20/40
Analyse de la composition logicielle (SCA) : examen unique 1 Go/2 Go 2/5
Analyse de la composition logicielle (SCA) : cinq examens simultanés 2 Go/4 Go 7/10
Analyse de la composition logicielle (SCA) : dix examens simultanés 4 Go/6 Go 10/12
Remarque : Les ressources évoluent en fonction du nombre d'examens simultanés. Les nœuds nécessitent au moins 28 Go Go de RAM et 4 cœurs pour les examens statiques, et 4 Go Go de RAM, 3 cœurs et 200 Go d'espace disque pour les examens dynamiques. Assurez-vous que les licences AppScan 360° et la disponibilité des ressources Kubernetes sont suffisantes. Ne dépassez pas 25 examens simultanés.

Valider la configuration

Vérifiez les conditions préalables à l'aide des commandes suivantes :
  • Connectivité Kubernetes : kubectl version or kubectl get nodes

  • Connectivité Docker : docker version

  • Connectivité Helm : helm version

  • Cert-Manager : kubectl get pods --namespace cert-manager (assurez-vous que le pod cert-manager est en cours d'exécution)

  • Ingress : kubectl get ingress --all-namespaces (vérifiez les ressources Ingress)

  • Stockage : kubectl get storageclass and kubectl get pv (vérifiez la capacité de stockage RWX)

  • Connectivité SQL : ping <MSSQL_SERVER_IP> (remplacez par l'adresse IP actuelle)

  • Connexion à Docker : docker login <PRIVATE_REGISTRY_URL> (remplacez par l'adresse URL actuelle)

Notes supplémentaires

  • ID : Nécessaire pour accéder au portail de licence et de téléchargement HCL et à HCL Harbor.

  • Navigateur pris en charge : Utilisez les dernières versions de Chrome, Safari, Edge ou Firefox pour l'interface utilisateur AppScan 360.

  • Résolution d'écran : La résolution recommandée est de 1920 x 1080 pour un affichage optimal.

  • Ports réseau :

    • 22/TCP (SSH vers le serveur de déploiement)

    • 25/TCP (SMTP)

    • 389/TCP (LDAP)

    • 80, 443, 8080/TCP

  • Points d'accès :

    • Portail utilisateur : https://<CK_CONFIGURATION_DISCLOSED_SITE_URL>

    • API utilisateur : https://<CK_CONFIGURATION_DISCLOSED_SITE_URL>/api

    • API utilisateur (Swagger) : https://<CK_CONFIGURATION_DISCLOSED_SITE_URL>/swagger

  • Remarque : Publiez le FQDN Ingress avec l'adresse IP désignée dans le serveur DNS.