Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Készítette: Rick Anderson
ASP.NET Core alapértelmezés szerint HTTPS-t használ. A HTTPStanúsítványokra támaszkodik a megbízhatóság, az azonosság és a titkosítás biztosítása érdekében.
Ez a dokumentum bemutatja, hogyan futtathat előre elkészített tárolórendszerképeket HTTPS-lel a .NET parancssori felületének (CLI)használatával. A Docker a Visual Studióval való fejlesztés során történő futtatásával kapcsolatos útmutatásért lásd: ASP.NET Core-alkalmazások fejlesztése a Dockerrel HTTPS-.
Ehhez a mintához a Docker 17.06 verzió vagy újabb, valamint a Docker-ügyfélszükséges.
Előfeltételek
Az aktuális .NET SDK.
Tanúsítványok
Egy hitelesítésszolgáltatótól származó tanúsítványra van szükség a termelési környezetben történő hosztinghoz egy tartomány esetén. Let's Encrypt ingyenes tanúsítványokat kínáló hitelesítésszolgáltató.
Ez a dokumentum önaláírt fejlesztési tanúsítványokat használ az előre elkészített rendszerképek localhostkeresztüli üzemeltetéséhez. Az utasítások hasonlóak a gyártási tanúsítványok használatához. A dotnet dev-certs által létrehozott tanúsítvány csak localhost használható, és nem olyan környezetben, mint a Kubernetes. A HTTPS Kubernetes-fürtön belüli támogatásához használja a TLS-tanúsítványok kezelése fürtben által biztosított eszközöket a TLS podokon belüli beállításához.
A dotnet dev-certs használatával önaláírt tanúsítványokat hozhat létre a fejlesztéshez és teszteléshez.
Éles tanúsítvány esetén:
- Nincs szükség a
dotnet dev-certseszközre. - A tanúsítványokat nem kell az utasításokban használt helyen tárolni. Minden helynek működnie kell, bár a tanúsítványokat nem ajánlott a helykönyvtárban tárolni.
Az alábbi szakaszban található utasítások a tanúsítványokat kötegekbe csatolják a konténerekbe a Docker -v parancssori opciójával. A COPY parancsával tanúsítványokat vehet fel a tárolólemezképekbe, de ez nem ajánlott. A tanúsítványok képre másolása a következő okok miatt nem ajánlott:
- A fejlesztői tanúsítványokkal való teszteléshez nehéz ugyanazt a rendszerképet használni.
- Nehéz ugyanazt a képet használni az éles hitelesítési tanúsítványokkal történő üzemeltetéshez.
- A tanúsítvány nyilvánosságra hozatalának jelentős kockázata van.
Előre elkészített tárolórendszerképek futtatása HTTPS használatával
Az operációs rendszer konfigurációjához kövesse az alábbi utasításokat.
Linux-tárolókat használó Windows
Hozzon létre egy tanúsítványt, és konfigurálja a helyi gépet:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
Az előző parancsokban cserélje le a <CREDENTIAL_PLACEHOLDER> egy jelszóra.
Futtassa a HTTPS-re konfigurált ASP.NET Core-ral a konténerképet egy parancshéjban:
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx -v %USERPROFILE%\.aspnet\https:/https/ mcr.microsoft.com/dotnet/samples:aspnetapp
Az előző kódban cserélje le a <CREDENTIAL_PLACEHOLDER> a jelszóra. A jelszónak meg kell egyeznie a tanúsítványhoz használt jelszóval.
Ha PowerShell-használ, cserélje le a %USERPROFILE%$env:USERPROFILE.
Megjegyzés: Ebben az esetben a tanúsítványnak .pfx fájlnak kell lennie. A mintatároló nem támogatja az .crt vagy .key fájl jelszóval vagy anélkül történő használatával. Ha például egy .crt fájlt ad meg, a tároló olyan hibaüzeneteket adhat vissza, mint a "A kiszolgáló módú SSL-nek tanúsítványt kell használnia a társított titkos kulccsal".
WSL-használatakor ellenőrizze a csatlakoztatási útvonalat, hogy a tanúsítvány megfelelően legyen betöltve.
macOS vagy Linux
Tanúsítvány létrehozása és helyi gép konfigurálása:
dotnet dev-certs https -ep ${HOME}/.aspnet/https/aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
Linuxon dotnet dev-certs https --trust a .NET 9 vagy újabb SDK szükséges. A .NET 8.0.401-en vagy korábbi SDK-n futó Linux esetén tekintse meg a Linux-disztribúció tanúsítványmegbízhatósági dokumentációját.
Az előző parancsokban cserélje le a <CREDENTIAL_PLACEHOLDER> egy jelszóra.
Futtassa a konténerképet a HTTPS-hez konfigurált ASP.NET Core-ral.
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx -v ${HOME}/.aspnet/https:/https/ mcr.microsoft.com/dotnet/samples:aspnetapp
Az előző kódban cserélje le a <CREDENTIAL_PLACEHOLDER> a jelszóra. A jelszónak meg kell egyeznie a tanúsítványhoz használt jelszóval.
Windows, amely Windows-tárolókat használ
Tanúsítvány létrehozása és helyi gép konfigurálása:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
Az előző parancsokban cserélje le a <CREDENTIAL_PLACEHOLDER> egy jelszóra. Ha PowerShell-használ, cserélje le a %USERPROFILE%$env:USERPROFILE.
Futtassa a konténerképet a HTTPS-hez konfigurált ASP.NET Core-ral.
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=c:\https\aspnetapp.pfx -v %USERPROFILE%\.aspnet\https:C:\https\ --user ContainerAdministrator mcr.microsoft.com/dotnet/samples:aspnetapp
MEGJEGYZÉS:<CREDENTIAL_PLACEHOLDER> a Kestrel tanúsítványok alapértelmezett jelszavának helyőrzője.
A jelszónak meg kell egyeznie a tanúsítványhoz használt jelszóval. Ha PowerShell-használ, cserélje le a %USERPROFILE%$env:USERPROFILE.
ASP.NET Core-alkalmazások fejlesztése a Dockerrel HTTPS-en keresztül
ASP.NET Core-alkalmazások fejlesztése a Dockerrel HTTPS- keresztül című témakörben talál információkat és példákat arról, hogyan fejleszthet ASP.NET Core-alkalmazásokat HTTPS-lel a Docker-tárolókban.
Lásd még:
ASP.NET Core alapértelmezés szerint HTTPS-t használ. A HTTPStanúsítványokra támaszkodik a megbízhatóság, az azonosság és a titkosítás biztosítása érdekében.
Ez a dokumentum bemutatja, hogyan futtathat előre elkészített tárolórendszerképeket HTTPS-lel a .NET parancssori felületének (CLI)használatával. A Docker a Visual Studióval való fejlesztés során történő futtatásával kapcsolatos útmutatásért lásd: ASP.NET Core-alkalmazások fejlesztése a Dockerrel HTTPS-.
Ehhez a mintához a Docker 17.06 verzió vagy újabb, valamint a Docker-ügyfélszükséges.
Előfeltételek
Az aktuális .NET SDK.
Tanúsítványok
Egy hitelesítésszolgáltatótól származó tanúsítványra van szükség a termelési környezetben történő hosztinghoz egy tartomány esetén. Let's Encrypt ingyenes tanúsítványokat kínáló hitelesítésszolgáltató.
Ez a dokumentum önaláírt fejlesztési tanúsítványokat használ az előre elkészített rendszerképek localhostkeresztüli üzemeltetéséhez. Az utasítások hasonlóak a gyártási tanúsítványok használatához. A dotnet dev-certs által létrehozott tanúsítvány csak localhost használható, és nem olyan környezetben, mint a Kubernetes. A HTTPS Kubernetes-fürtön belüli támogatásához használja a TLS-tanúsítványok kezelése fürtben által biztosított eszközöket a TLS podokon belüli beállításához.
A dotnet dev-certs használatával önaláírt tanúsítványokat hozhat létre a fejlesztéshez és teszteléshez.
Éles tanúsítvány esetén:
- Nincs szükség a
dotnet dev-certseszközre. - A tanúsítványokat nem kell az utasításokban használt helyen tárolni. Minden helynek működnie kell, bár a tanúsítványokat nem ajánlott a helykönyvtárban tárolni.
Az alábbi szakaszban található utasítások a tanúsítványokat kötegekbe csatolják a konténerekbe a Docker -v parancssori opciójával. A COPY parancsával tanúsítványokat vehet fel a tárolólemezképekbe, de ez nem ajánlott. A tanúsítványok képre másolása a következő okok miatt nem ajánlott:
- A fejlesztői tanúsítványokkal való teszteléshez nehéz ugyanazt a rendszerképet használni.
- Nehéz ugyanazt a képet használni az éles hitelesítési tanúsítványokkal történő üzemeltetéshez.
- A tanúsítvány nyilvánosságra hozatalának jelentős kockázata van.
Előre elkészített tárolórendszerképek futtatása HTTPS használatával
Az operációs rendszer konfigurációjához kövesse az alábbi utasításokat.
Linux-tárolókat használó Windows
Hozzon létre egy tanúsítványt, és konfigurálja a helyi gépet:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
Az előző parancsokban cserélje le a <CREDENTIAL_PLACEHOLDER> egy jelszóra.
Futtassa a HTTPS-re konfigurált ASP.NET Core-ral a konténerképet egy parancshéjban:
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx -v %USERPROFILE%\.aspnet\https:/https/ mcr.microsoft.com/dotnet/samples:aspnetapp
Az előző kódban cserélje le a <CREDENTIAL_PLACEHOLDER> a jelszóra. A jelszónak meg kell egyeznie a tanúsítványhoz használt jelszóval.
Ha PowerShell-használ, cserélje le a %USERPROFILE%$env:USERPROFILE.
Megjegyzés: Ebben az esetben a tanúsítványnak .pfx fájlnak kell lennie. A mintatároló nem támogatja az .crt vagy .key fájl jelszóval vagy anélkül történő használatával. Ha például egy .crt fájlt ad meg, a tároló olyan hibaüzeneteket adhat vissza, mint a "A kiszolgáló módú SSL-nek tanúsítványt kell használnia a társított titkos kulccsal".
WSL-használatakor ellenőrizze a csatlakoztatási útvonalat, hogy a tanúsítvány megfelelően legyen betöltve.
macOS vagy Linux
Tanúsítvány létrehozása és helyi gép konfigurálása:
dotnet dev-certs https -ep ${HOME}/.aspnet/https/aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
dotnet dev-certs https --trust csak macOS és Windows rendszeren támogatott. A linuxos tanúsítványokat a disztribúció által támogatott módon kell megbízhatónak minősítenie. Valószínűleg megbízhatónak kell jelölnie a tanúsítványt a böngészőben.
Az előző parancsokban cserélje le a <CREDENTIAL_PLACEHOLDER> egy jelszóra.
Futtassa a konténerképet a HTTPS-hez konfigurált ASP.NET Core-ral.
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx -v ${HOME}/.aspnet/https:/https/ mcr.microsoft.com/dotnet/samples:aspnetapp
Az előző kódban cserélje le a <CREDENTIAL_PLACEHOLDER> a jelszóra. A jelszónak meg kell egyeznie a tanúsítványhoz használt jelszóval.
Windows, amely Windows-tárolókat használ
Tanúsítvány létrehozása és helyi gép konfigurálása:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
Az előző parancsokban cserélje le a <CREDENTIAL_PLACEHOLDER> egy jelszóra. Ha PowerShell-használ, cserélje le a %USERPROFILE%$env:USERPROFILE.
Futtassa a konténerképet a HTTPS-hez konfigurált ASP.NET Core-ral.
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=c:\https\aspnetapp.pfx -v %USERPROFILE%\.aspnet\https:C:\https\ --user ContainerAdministrator mcr.microsoft.com/dotnet/samples:aspnetapp
MEGJEGYZÉS:<CREDENTIAL_PLACEHOLDER> a Kestrel tanúsítványok alapértelmezett jelszavának helyőrzője.
A jelszónak meg kell egyeznie a tanúsítványhoz használt jelszóval. Ha PowerShell-használ, cserélje le a %USERPROFILE%$env:USERPROFILE.
ASP.NET Core-alkalmazások fejlesztése a Dockerrel HTTPS-en keresztül
ASP.NET Core-alkalmazások fejlesztése a Dockerrel HTTPS- keresztül című témakörben talál információkat és példákat arról, hogyan fejleszthet ASP.NET Core-alkalmazásokat HTTPS-lel a Docker-tárolókban.