Configurer le chiffrage SSL
SSL (Secure Sockets Layer) est un protocole de sécurité de chiffrement qui chiffre les données transmises entre un client et un serveur. Dans FlowForce Server, vous pouvez chiffrer les connexions HTTP suivantes avec les certificats SSL :
•La connexion entre un navigateur et FlowForce Web Server
•La connexion entre un consommateur de service Web (par ex., une application client) et le service FlowForce Server
•La connexion interne entre FlowForce Web Server et FlowForce Server
Pour les deux premières connexions, vous avez besoin d’un certificat SSL et d’une clé privée correspondant à ce certificat. Pour des raisons de sécurité, vous pourrez éventuellement utiliser un certificat SSL séparé et une clé privée pour chaque connexion. Si vous souhaitez utiliser le même certificat et la même clé privée pour les deux connexions, il faudra que FlowForce Server et FlowForce Web Server aient tous les deux le même nom de domaine entièrement qualifié (FQDN). Par exemple, si FlowForce Web Server écoute sur https://somehost:8083, alors FlowForce Server devrait écouter sur https://somehost:4647. Veuillez noter que vous pourrez toujours changer ultérieurement de port, dans ce cas ; seul le nom d'hôte est important.
Pour la dernière connexion, il n’y pas besoin d’avoir un troisième certificat et paire de clé privée - vous pouvez utiliser le même certificat SSL comme FlowForce Server. Dans ce cas, FlowForce Web Server agit comme client HTTP pour FlowForce Server.
FlowForce Server Advanced Edition
Si vous utilisez FlowForce pour échanger des données AS2, vous avez aussi la possibilité d'utiliser des certificats SSL pour signer ou chiffrer les données en tant que partie du service AS2 ( voir AS2 Integration).
Procédures de chiffrement SSL
Si la communications doit être chiffrée avec le protocole SSL, suivez les instructions ci-dessous. Dans cet exemple. Nous avons utilisé un kit outil OpenSSL open-source pour gérer le chiffrement SSL. Les étapes listées ci-dessous, doivent donc être effectuées sur un ordinateur sur lequel OpenSSL est disponible. Généralement, OpenSSL est pré-installé sur la plupart des distributions Linux et sur des appareils macOS. Il peut donc être installé sur les ordinateurs Windows. Pour télécharger des liens pour les binaires d'installation, voir le Wiki OpenSSL.
SSL nécessite l'installation d'une clé privée sur FlowForce Server, Cette clé privée sera utilisée pour chiffrer toutes les données envoyées aux clients. Pour créer la clé privée, utilisez la commande OpenSSL suivante :
openssl genrsa -out private.key 2048
La commande ci-dessus crée un fichier nommé private.key, qui contient votre clé privée. Veuillez noter où vous avez enregistré le fichier. Il vous faudra la clé privée (i) pour générer la Certificate Signing Request (CSR), et (ii) l'installer sur FlowForce Server (voir l’étape 7 ci-dessous) La valeur 2048 se réfère à la taille 2048-bit de la clé privée, qui est la force de chiffrage minimum généralement acceptée par l’autorité de certification.
Exigences de clé privéeÉtant donné que FlowForce Server est exécuté sans supervision, le fait d'activer SSL exige que la clé privée du certificat soit non-chiffrée, ce qui signifie qu’elle ne doit pas être protégée par un mot de passe. Autrement, la clé privée ne peut pas être utilisée par FlowForce Server. Pour cette raison, le fichier qui entrepose la clé privée doit avoir un accès restreint et être accessible uniquement au personnel compétent de votre organisation.
Afin d'identifier si la clé du mot de passe est protégée par mot de passe ou est non-chiffrée, ouvrez le fichier de clé privée en utilisant un éditeur de texte ou la ligne de commande. Une clé privée non-chiffrée commence avec les lignes suivantes :
-----BEGIN RSA PRIVATE KEY----- Proc-Type: 4,ENCRYPTED DEK-Info: AES-256-CBC,DFC3FAD546517ED6336CFF72AA23F6C7
Pour déchiffrer la clé privée, utilisez la commande OpenSSL suivante :
openssl rsa -in enc.key -out dec.key
Notez aussi les exigences suivantes :
•La clé privée doit être dans le format PEM (Privacy Enhanced Mail). L'extension de fichier des fichiers PEM est généralement .pem, mais elle peut aussi être .key, .cert, .cer ou .crt. •La clé privée doit être stockée de manière sécurisée.
|
2.Créer une Certificate Signing Request (CSR)
Une Requête de signature de certificat (Certificate Signing Request) (CSR) est envoyée à l'Autorité de certification (CA), comme VeriSign ou Thawte, pour demander un certificat de clé public. La CSR est basée sur votre clé privée et contient des informations concernant votre organisation. Créer une CSR avec la commande OpenSSL suivante (qui fournit le fichier privé-clé, private.key, qui a été créé dans l'étape 1, en tant que l'un de ces paramètres) :
openssl req -new -nodes -key private.key -out my.csr
Au cours de la génération de la CSR vous devrez donner des informations concernant votre organisation, (comme celle que vous trouverez ci-dessous). Cette information sera utilisée par l'autorité de certification pour vérifier l'identité de votre entreprise.
•Pays •Lieu (la ville où votre commerce se situe) •Organisation (le nom de votre entreprise). Ne pas utiliser des caractères spéciaux ; ils invalideront votre certificat •Nom commun (le nom DNS de votre serveur). Il doit correspondre exactement au nom officiel de votre serveur, à savoir les applis client du nom DNS seront utilisées pour vous connecter au serveur. •Un mot de passe défiant. Garder cette entrée vierge.
|
Dans la prochaine étape, vous avez besoin d’un certificat SSL auprès d'une autorité de certificat (CA) reconnue, comme VeriSign ou Thawte. Pour le reste de ces instructions, nous suivons la procédure VeriSign. La procédure avec d'autres CA est semblable.
1.Se rendre sur le site web VeriSign. 2.Cliquez sur Acheter Certificats SSL. 3.Plusieurs types de certificats SSL sont disponibles. Pour FlowForce Server, les certificats Secure Site ou Secure Site Pro sont suffisants. Une EV (vérification étendue) n'est pas nécessaire, puisque les utilisateurs ne verront pas de « barre d'adresse verte ». 4.Suivez les étapes d'inscription et saisir les informations nécessaires pour passer votre commande. 5.Lorsque vous êtes invités pour CSR (créé dans l’étape 2 : Créer une Requête de signature de certificat ci-dessus), copier et coller le contenu du fichier my.csr dans le formulaire de commande. 6.Payer le certificat avec votre carte de crédit.
L'obtention des certificats de clé publiques auprès de l'autorité de certificat (CA) SSL prend généralement deux ou trois jours ouvrés. Veuillez y penser lorsque vous configurez votre FlowForce Server.
Méthode alternative : Créer des certificats SSL auto-signésEn alternative, si FlowForce Server est exécuté sur un réseau privé, vous pouvez configurer votre propre autorité de certification racine SSL (uniquement si vous y êtes autorisé au sein de votre organisation). Aucun navigateur ou système d’exploitation ne fait confiance à une telle autorité par défaut. C’est pourquoi, vous devez configurer chaque appareil (ou navigateur, selon le cas) qui se connecte à FlowForce Server pour faire confiance à votre certificat racine auto-signé. Autrement, le navigateur affichera des avertissements ou l’appel de service Web n’aura pas de succès. Pour plus d'information, voir Créer des certificats SSL auto-signés.
|
4.Recevoir clé publique de la CA
Votre autorité de certificat achèvera le processus d'inscription en deux ou trois jours ouvrés. Pendant ce temps, vous pourrez recevoir des e-mails ou des appels téléphoniques pour vérifier si vous êtes autorisé à demander un certificat SSL pour votre domaine DNS. Veuillez travailler avec l'autorité pour achever le processus.
Une fois que le processus d'autorisation et d'inscription est achevé, vous obtiendrez un e-mail contenant la clé publique de votre certificat SSL. La clé publique sera en texte clair ou attaché en tant que fichier .cer.
|
5.Enregistrer la clé publique dans le fichier
Pour utiliser avec FlowForce Server, la clé publique doit être enregistrée comme fichier .cer. Si la clé publique était fournie en tant que texte, copier-coller toutes les lignes depuis
--BEGIN CERTIFICATE-- ... --END CERTIFICATE--
dans un fichier de texte que nous appellerons mycertificate.cer.
|
6.Enregistrer les certificats intermédiaires de la CA sous le fichier
Lorsque vous signez un certificat avec une Autorité de Certificat, vous recevrez des certificats intermédiaires (primaires et secondaires) qui constituent la chaîne de confiance entre votre serveur et l'autorité de certificat. Si vous recevez un certificat primaire et un certificat secondaire, vous devez les combiner en un seul fichier (le soi-disant Certificate Chain File), tel qu’affiché dans les instructions ci-dessous.
1.Utiliser un éditeur de texte tel que Notepad, créez un nouveau fichier texte. Dans notre exemple, nous avons l'appelons appelé intermediate.pem. Vous pouvez choisir un autre nom de fichier et une extension. 2.Ouvrez chaque certificat intermédiaire dans un éditeur de texte et copiez-collez le contenu dans intermediary.pem. De manière importante, le texte de certificat doit être copié dans l’ordre inversé : Le certificat intermédiaire secondaire est le premier ; le premier va en deuxième (liste de code ci-dessous).
--BEGIN CERTIFICATE-- ... (secondary intermediate certificate)... --END CERTIFICATE-- --BEGIN CERTIFICATE-- ... (primary intermediate certificate)... --END CERTIFICATE
3.Enregistrez les changements. Vous aurez besoin de intermediary.pem sur la page de configuration FlowForce plus tard.
|
7.Activer SSL pour FlowForce serveur/Web Server
Les instructions ci-dessous vous montrent comment activer SSL pour FlowForce Web Server (le service qui pilote l’interface d'administration Web de FlowForce) et FlowForce Server (le service responsable pour exposer les services Web créés depuis les tâches de FlowForce aux clients HTTP(S).
Pour activer SSL pour FlowForce Server/Web Server, suivez les instructions ci-dessous :
1.Ouvrez la page de configuration de FlowForce Server et cliquez sur Configurer les paramètres. 2.Dépendant de vos besoins, naviguez vers les paramètres de FlowForce Web Server ou FlowForce Server. 3.Choisissez la case à cocher Activé dans la section de connexion chiffrée SSL. 4.Sélectionnez Toutes Interfaces (0.0.0.0) dans la liste déroulante de l’adresse de liaison. Cette valeur signifie que FlowForce Server/FlowForce Web Server sera accessible à l’extérieur, et non seulement depuis l’appareil actuel. 5.Saisir le nom (domaine) de l’hôte et le port là où FlowForce Server/Web Server doit écouter les connexions SSL chiffrées. Le nom de domaine saisi dans le champ Nom d'hôte doit correspondre au Nom commun du certificat SSL. Le port ne doit pas être utilisé. Dépendant du cas, vous pouvez aussi saisir une adresse IP différente. Si vous avez saisi une adresse IP dans le champ Autre sans saisir un nom d'hôte, cette adresse IP doit correspondre au Nom Commun du certificat SSL. 6.Saisir le chemin vers le fichier de chaîne de certificat dans le champ Fichier de certificat. La certificat doit être dans le format PEM (Privacy Enhanced Mail). L'extension de fichier des fichiers PEM est généralement .pem, mais elle peut aussi être .key, .cert, .cer ou .crt. Le certificat doit être émis pour le nom de domaine sur lequel FlowForce Server est exécuté. 7.Saisir le chemin vers le fichier clé privée dans le champ Fichier clé privée. La clé privée doit être dans le format PEM (Privacy Enhanced Mail). L'extension de fichier des fichiers PEM est généralement .pem, mais elle peut aussi être .key, .cert, .cer ou .crt. La clé privée doit être stockée de manière sécurisée. Pour que la clé privée puisse être utilisable dans FlowForce, elle ne doit pas être protégée par un mot de passe, voir Exigences de clé privée.. 8.Saisir le chemin vers le fichier de chaîne de certificat dans le champ Fichier de chaîne de certificat. S'il n'y a pas de certificat intermédiaire, vous pouvez laisser ce champ vide. Si plusieurs certificats intermédiaires sont disponibles, alors vous devez tous les combiner en un soi-disant Fichier de chaîne (voir Enregistrer les Certificats intermédiaires CA dans un fichier (étape 6) ci-dessus). 9.Cliquez sur Appliquer les paramètres et redémarrer les services FlowForce en bas de la page de configuration.
En option, supprimez la case à cocher Activé sous Connexion non chiffrée. Veuillez noter que cela rendra FlowForce Server/Web Server non disponible par le biais d'un HTTP clair, vous devriez donc uniquement prendre cette lors que la connexion chiffrée SSL Début fonctionne. Au lieu de désactiver complètement la connexion HTTP, vous pouvez la limiter aux connexions locales uniquement (l’option local uniquement dans la liste déroulante de l’adresse de liaison).
Veuillez prendre note des points suivants :
•Le navigateur (ou client de connexion) affichera des avertissements si le Nom commun (CN) du certificat SSL ne correspond pas au nom du domaine ou à l’adresse IP sur laquelle FlowForce Server est exécuté. •Si vous utilisez des certificats auto-signés, le navigateur (ou le client de connexion) affichera des avertissements si vous n'avez pas ajouté votre certificat racine CA dans la boutique de certificat du système d'exploitation, ou dans la boutique de certificat du navigateur (voir Importer des certificats de racine)
|
Vous pouvez désormais utiliser l’outil de test SSL pour vérifier si la communication sécurisée avec votre serveur via HTTPS fonctionne correctement. Ceci vous dira (i) si le fichier de certificat de la clé publique a été construit correctement avec une chaîne de confiance intermédiaire à l’étape 6, et (ii) si votre serveur peut être atteint correctement par le biais du pare-feu.
|