国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

制作能在nginx和IIS中使用的ssl證書(shū)

發(fā)布時(shí)間:2021-08-15 18:37 來(lái)源: 閱讀:0 作者:沒(méi)有星星的夏季 欄目: 服務(wù)器 歡迎投稿:712375056

目錄

          如果覺(jué)得ssl/' target='_blank'>證書(shū)制作比較麻煩,這里是本文制作好的證書(shū): (提取碼:c6tj),密碼都是:123456

          園友可下載證書(shū),然后根據后文nginx和IIS的使用方法來(lái)使用證書(shū)。

        制作SSL證書(shū)

          好了,先創(chuàng )建一個(gè)空目錄,在這個(gè)空目錄下開(kāi)始制作:

        1、生成私鑰Key

          執行下面的命令生成私鑰Key:  

            sudo openssl genrsa -des3 -out demo.key 1024
            # openssl genrsa 命令是會(huì )用來(lái)生成RSA私有秘鑰,不會(huì )生成公鑰,因為公鑰提取自私鑰
           # -des3  指定加密私鑰文件用的算法,可以不用指定加密算法(自己測試用的話(huà)推薦不指定加密算法),可選:-des|-des3|-idea
           # -out demo.key  將生成的私鑰保存至指定文件
           # 1024  指定要生成的私鑰的長(cháng)度(單位 bit),默認為1024,一般要么就是1024或者2048

          生成過(guò)程中會(huì )讓輸入密碼,這里我測試使用的,直接輸入了:123456

          注:上面生成的demo.key中使用了-des3加密算法參數,所以在部署使用后,如果需要重啟,可能會(huì )要求輸入密碼確認,比如nginx -s reload時(shí),這樣在自己測試使用時(shí)就很麻煩了

          解決辦法有兩個(gè):

          a.生成密碼后再刪除密碼

          比如上面生成了一個(gè)demo.key的私鑰文件,執行下面的命令可以重置: 

            sudo openssl rsa -in demo.key -out temp.key && sudo rm demo.key && sudo mv temp.key demo.key

          b.在生成私鑰是不要指定-des3參數

          比如上面的生成demo.key的命令換成:  

            sudo openssl genrsa -out demo.key 1024

        2、生成證書(shū)請求文件

          執行下面的命令生成證書(shū)請求文件:

            sudo openssl req -new -key demo.key -out demo.csr
            # openssl req 命令主要的功能有,生成證書(shū)請求文件, 查看驗證證書(shū)請求文件,還有就是生成自簽名證書(shū)
           # -new 說(shuō)明生成證書(shū)請求文件
           # -key demo.key 指定已有的秘鑰文件生成秘鑰請求,只與生成證書(shū)請求選項-new配合。
           # -out demo.csr 指定生成的證書(shū)請求或者自簽名證書(shū)名稱(chēng)

          命令執行后會(huì )讓輸入一些證書(shū)信息,具體可參考下圖:

        3、生成crt證書(shū)文件

          執行下面的命令生成證書(shū)文件:  

            sudo openssl x509 -req -days 36500 -in demo.csr -signkey demo.key -out demo.crt
            # openssl x509 命令主要用于輸出證書(shū)信息,簽署證書(shū)請求文件、生成自簽名證書(shū)、轉換證書(shū)格式等
           # -req 表明后面輸入的是一個(gè)證書(shū)請求文件
           # -days 36500 證書(shū)的有效期,單位是天(一百年后我們再見(jiàn)吧)
           # -in demo.csr 指定輸入文件
           # -signkey demo.key 簽名證書(shū)秘鑰
           # -out demo.crt 指定證書(shū)的輸出文件

          如果提示類(lèi)似如下,說(shuō)明生成成功了:

        4、生成pfx證書(shū)安裝包

          執行下面命令生成安裝包文件: 

            sudo openssl pkcs12 -export -inkey demo.key -in demo.crt -out demo.pfx
            # openssl pkcs12 命令用于生成和分析pkcs12文件
           # -export 指定了一個(gè)PKCS#12文件將會(huì )被創(chuàng  )建
           # -inkey demo.key 指定私鑰文件的位置。如果沒(méi)有被指定,私鑰必須在-in filename中指定
           # -in demo.crt 指定私鑰和證書(shū)讀取的文件
           # -out demo.pfx 指定輸出的pkcs12文件

          執行命令后會(huì )輸入密碼,這里我輸入同樣是:123456  

          至此,證書(shū)就制作完成了,我們得到4個(gè)文件: 

            demo.crt:crt證書(shū)文件,nginx配置時(shí)可以用到
            demo.csr:crt證書(shū)請求文件,現在基本上沒(méi)什么用了
            demo.key:私鑰,nginx配置時(shí)可以用到
            demo.pfx:證書(shū)安裝包,iis部署時(shí)可以用到

        Nginx配置使用證書(shū)

          創(chuàng )建一個(gè)nginx配置配置文件:  

          server {
                listen 4430 ssl;
                listen [::]:4430 ssl;
        
                ssl on;
                ssl_certificate /home/feng/ssl/demo.crt;  #crt證書(shū)文件
                ssl_certificate_key /home/feng/ssl/demo.key;  #私鑰文件
                ssl_session_timeout 5m;
                ssl_protocols SSLv3 SSLv2 TLSv1 TLSv1.1 TLSv1.2;
                ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
                ssl_prefer_server_ciphers on;
        
                root /var/www/html;
                index index.html index.htm index.nginx-debian.html;
        
                server_name _;
        
                location / {
                        try_files $uri $uri/ =404;
                }
          }

          注意,這里我為了區分,沒(méi)有使用默認的443端口,而是使用了4430端口

          接著(zhù)使用 nginx -t 驗證和使用 nginx -s reload 重新加載后,使用瀏覽器訪(fǎng)問(wèn)4430可訪(fǎng)問(wèn)到了,只不過(guò)會(huì )提示存在風(fēng)險,畢竟證書(shū)是自己制作的,如下圖:

          點(diǎn)擊高級=》接受風(fēng)險就可以了

        IIS配置使用證書(shū)   

          IIS配置證書(shū)需要pfx證書(shū)安裝包(demo.pfx),這里以IIS7為例:

          打開(kāi)IIS,在主頁(yè)中點(diǎn)擊【服務(wù)器證書(shū)】

           點(diǎn)擊右邊操作的【導入】,選擇創(chuàng )建好的pfx證書(shū)文件,輸入創(chuàng )建文件時(shí)輸入的密碼(上面第4步創(chuàng )建pfx文件時(shí)輸入的密碼,這里是123456):

          接著(zhù)選擇你要設置添加https請求類(lèi)型的網(wǎng)站,在右邊操作中點(diǎn)擊【綁定】,然后按照下圖操作:

          然后重啟一下站點(diǎn),在指定的端口使用https請求了

          注:如果你的電腦安裝了VMware等工具,443端口可能啟動(dòng)報錯,可能提示:另一個(gè)程序正在使用此文件,進(jìn)程無(wú)法訪(fǎng)問(wèn)。解決辦法參考:

        程序中使用證書(shū)

          有時(shí),我們還可能需要在程序中使用證書(shū),比如在使用Grpc,我們默認是使用https的,或者我們只是想使用https請求,那么我們可能需要在程序中使用證書(shū)來(lái)操作,比如.net core中使用自制證書(shū)來(lái)生成https請求的項目:

          我們創(chuàng )建一個(gè).net core的web項目,使用上面創(chuàng )建的demo.pfx,修改Program.cs:  

            public class Program
            {
        
                public static void Main(string[] args)
                {
                    CreateHostBuilder(args).Build().Run();
                }
        
                public static IHostBuilder CreateHostBuilder(string[] args) =>
                    Host.CreateDefaultBuilder(args)
                        .ConfigureWebHostDefaults(webBuilder =>
                        {
                            webBuilder.ConfigureKestrel(options =>
                            {
                                options.ListenAnyIP(5000, listenOptions =>
                                {
                                    listenOptions.UseHttps(@"C:\inetpub\wwwroot\demo.pfx", "123456");
                                });
                            });
                            webBuilder.UseStartup<Startup>();
                        });
            }

          啟動(dòng)之后就可以使用https請求訪(fǎng)問(wèn)了

        以上就是制作能在nginx和IIS中使用的ssl證書(shū)的詳細內容,更多關(guān)于制作ssl證書(shū)的資料請關(guān)注腳本之家其它相關(guān)文章!

        免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。

        狠狠色噜噜狠狠狠狠米奇777| A级精品国产片在线观看| AV无码专区| 欧洲美熟女乱又伦AV影片| 精品亚洲AⅤ在线观看| 无码国产精品久久一区免费|