From e9a73c0670806d394dd4cbf5aa5d968e82735d5e Mon Sep 17 00:00:00 2001 From: maliming Date: Thu, 26 Oct 2023 10:29:57 +0800 Subject: [PATCH] Add `Configuring SSL certificate` document. Resolve #17974 --- docs/en/Deployment/Index.md | 1 + docs/en/Deployment/SSL.md | 34 ++++++++++++++++++++++++++++++++++ docs/en/docs-nav.json | 4 ++++ 3 files changed, 39 insertions(+) create mode 100644 docs/en/Deployment/SSL.md diff --git a/docs/en/Deployment/Index.md b/docs/en/Deployment/Index.md index 3eb299b483d..37d6c5bcc51 100644 --- a/docs/en/Deployment/Index.md +++ b/docs/en/Deployment/Index.md @@ -6,6 +6,7 @@ However, there are some topics that you should care about when you are deploying ## Guides +* [Configuring SSL certificate(HTTPS)](SSL.md): Explains how to configure SSL certificate(HTTPS) for your application. * [Configuring for OpenIddict](Configuring-OpenIddict.md): Notes for some essential configurations for OpenIddict. * [Configuring for Production](Configuring-Production.md): Notes for some essential configurations for production environments. * [Optimization for Production](Optimizing-Production.md): Tips and suggestions for optimizing your application on production environments. diff --git a/docs/en/Deployment/SSL.md b/docs/en/Deployment/SSL.md new file mode 100644 index 00000000000..c48c916d93c --- /dev/null +++ b/docs/en/Deployment/SSL.md @@ -0,0 +1,34 @@ +# Configuring Configuring SSL certificate(HTTPS) + +A website needs an SSL certificate in order to keep user data secure, verify ownership of the website, prevent attackers from creating a fake version of the site, and gain user trust. + +This document introduces how to get and use SSL certificate(HTTPS) for your application. + +## Get a SSL Certificate from a Certificate Authority + +You can get a SSL certificate from a certificate authority (CA) such as [Let's Encrypt](https://letsencrypt.org/) or [Cloudflare](https://www.cloudflare.com/learning/ssl/what-is-an-ssl-certificate/) and so on. + +Once you have a certificate, you need to configure your web server to use it. The following references show how to configure your web server to use a certificate. + +* [Host ASP.NET Core on Linux with Apache: HTTPS configuration](https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-apache) +* [Host ASP.NET Core on Linux with Nginx: HTTPS configuration](https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-nginx) +* [How to Set Up SSL on IIS 7 or later](https://learn.microsoft.com/en-us/iis/manage/configuring-security/how-to-set-up-ssl-on-iis) + +## Create a Self-Signed Certificate + +You can create a self-signed certificate for testing purposes or internal use. + +There is an article about [how to create a self-signed certificate](https://learn.microsoft.com/en-us/dotnet/core/additional-tools/self-signed-certificates-guide), If you are using IIS, you can use the following this document to [obtain a Certificate](https://learn.microsoft.com/en-us/iis/manage/configuring-security/how-to-set-up-ssl-on-iis#obtain-a-certificate) + +## Common Problems + +### The remote certificate is invalid because of errors in the certificate chain: UntrustedRoot + +This error may occur when using IIS. You need to trust your certificate by `Manage computer certificates`. + +## References + +* [ABP commercial IIS Deployment](https://docs.abp.io/en/commercial/latest/startup-templates/application/deployment-iis) +* [HTTPS in ASP.NET Core](https://learn.microsoft.com/en-us/aspnet/core/security/enforcing-ssl) +* [Let's Encrypt](https://letsencrypt.org/getting-started) +* [Cloudflare's Free SSL / TLS](https://www.cloudflare.com/application-services/products/ssl/) \ No newline at end of file diff --git a/docs/en/docs-nav.json b/docs/en/docs-nav.json index 582dcf98cce..fa0a98915aa 100644 --- a/docs/en/docs-nav.json +++ b/docs/en/docs-nav.json @@ -1363,6 +1363,10 @@ "text": "Deployment", "path": "Deployment/Index.md", "items": [ + { + "text": "Configuring SSL certificate(HTTPS)", + "path": "Deployment/SSL.md" + }, { "text": "Configuring OpenIddict", "path": "Deployment/Configuring-OpenIddict.md"