Je suis en cours d'exécution d'un serveur nœud.js Express sur mon instance AWS AC2 Linux. Je dois l'exposer via HTTPS pour fonctionner correctement avec l'application réactive qui tire les données de celui-ci. J'ai été capable de générer mon propre certificat SSL, mais il ne sera pas reconnu par d'autres utilisateurs et l'application cliente via une erreur.
Pourriez-vous expliquer comment puis-je obtenir un certificat SSL public uniquement pour le serveur de nœuds. Le serveur utilise une adresse IP comme xxx.xx.xx.xx: 4500 / point final. AWS semble offrir SSL mais seulement si vous payez pour son équilibreur de charge et que je ne veux pas faire cela. P>
existe un moyen de vérifier le certificat que j'ai généré avec OpenSSL afin que je puisse l'utiliser publiquement? p>
Voici ma configuration de base: p>
const express = require('express'); const cors = require('cors'); const mysql = require('mysql'); const moment = require('moment'); var fs = require('fs'); const https = require('https') const app = express(); xxx https.createServer({key: fs.readFileSync('server.key'), cert: fs.readFileSync('server.cert')}, app).listen(4500, () => { console.log('Listening...') })
3 Réponses :
Si vous dans une région où Pour appliquer un certificat SSL, le moyen le plus simple est de l'utiliser sur un équilibreur de charge. Vérifiez ma réponse à cette question Apollo Server sur Ubuntu 18.04 Instance EC2 avec HTTPS . P>
Si vous souhaitez utiliser le certificat directement sur EC2. Essayez ce qui suit. Je n'ai pas essayé cela moi-même.
https://docs.aws.amazon. COM / ACM / Dernier / UserGuide / GS-ACM-Export-privé.html P>
Aussi j'ai vu des gens à l'aide de https://letsencrypt.org/ pour obtenir certes. p> Amazon Certificat Manager code> est suporté, vous pouvez obtenir un certificat SSL gratuitement.
https://docs.aws.amazon. COM / ACM / Dernier / userguide / GS-ACM-Demande-Public.html P>
Votre certificat auto-signé ne sera pas approuvé par le navigateur. p>
Une solution serait de vous procurer un domaine, puis un certificat SSL gratuit délivré par chiffration. Cela supprimerait l'erreur car les certificats cryptrices sont confiés par tous les grands navigateurs. P>
Une autre solution consiste à obtenir le plan gratuit de Cloudflare, qui comprend un certificat SSL. Plus d'infos ici .
P>
Il est possible de sécuriser votre IP avec un certificat SSL, mais il n'y a pas de solutions gratuites pour cela. P>
OpenSSL elle-même est un outil pour créer des certificats auto-signés. Ces certificats ne sont jamais appris à utiliser ces certificats.
Au lieu de cela, vous pouvez utiliser cette commande: P>
/etc/letsencrypt/live/example.com