自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

微服務(wù)部署—使用Docker安裝Nginx并配置免費(fèi)的SSL證書(shū)詳解

開(kāi)發(fā) 架構(gòu)
免費(fèi)的證書(shū)有效期只有一年,而且是單域名證書(shū),對(duì)于小型項(xiàng)目或者剛剛起步的網(wǎng)站,可以節(jié)省成本,就是在操作上需要每年重新申請(qǐng)一次。一般云服務(wù)廠(chǎng)商都會(huì)有證書(shū)申請(qǐng)個(gè)數(shù)限制,但對(duì)于初期項(xiàng)目來(lái)說(shuō)基本夠用了。

SSL(Secure Socket Layer,安全套接字層)證書(shū)是一種數(shù)字證書(shū),用于加密網(wǎng)站與訪(fǎng)問(wèn)者之間的數(shù)據(jù)傳輸。SSL證書(shū)是網(wǎng)站安全和可靠性的重要保證,是建立信任和保護(hù)用戶(hù)隱私的重要手段。其作用可以總結(jié)為以下幾點(diǎn):

  • 數(shù)據(jù)安全:SSL證書(shū)能夠加密網(wǎng)站和客戶(hù)端之間的通信,保護(hù)敏感數(shù)據(jù)不被竊取或篡改。
  • 身份驗(yàn)證:SSL證書(shū)能夠驗(yàn)證網(wǎng)站的身份,確保用戶(hù)訪(fǎng)問(wèn)的是真實(shí)的、受信任的網(wǎng)站,而不是惡意網(wǎng)站。
  • 提高信任度:擁有SSL證書(shū)的網(wǎng)站將獲得瀏覽器的安全標(biāo)志,如綠色鎖頭,增加用戶(hù)對(duì)網(wǎng)站的信任度和滿(mǎn)意度。
  • SEO優(yōu)化:谷歌將SSL證書(shū)視為網(wǎng)站安全性的重要指標(biāo),并將其作為SEO排名的一個(gè)因素,擁有SSL證書(shū)的網(wǎng)站在搜索引擎中的排名更有優(yōu)勢(shì)。

常見(jiàn)的SSL證書(shū)包括以下幾種:

  • 域名驗(yàn)證證書(shū)(Domain Validated Certificate,DVC):只驗(yàn)證域名的所有權(quán),是最基本的SSL證書(shū),適用于小型網(wǎng)站或非商業(yè)網(wǎng)站。
  • 組織驗(yàn)證證書(shū)(Organization Validated Certificate,OVC):需要驗(yàn)證域名的所有權(quán)和組織的合法性,適用于中型商業(yè)網(wǎng)站。
  • 擴(kuò)展驗(yàn)證證書(shū)(Extended Validation Certificate,EVC):需要驗(yàn)證域名的所有權(quán)、組織的合法性以及更嚴(yán)格的標(biāo)準(zhǔn),如證明公司實(shí)體存在等,適用于大型商業(yè)網(wǎng)站和金融機(jī)構(gòu)等。
  • 通配符證書(shū)(Wildcard Certificate):適用于一個(gè)域名下多個(gè)子域名的SSL證書(shū)。
  • 多域名證書(shū)(Multi-Domain Certificate):適用于同一SSL證書(shū)下綁定多個(gè)域名的情況,也稱(chēng)為SAN證書(shū)(Subject Alternative Name Certificate)。
  • 代碼簽名證書(shū)(Code Signing Certificate):用于保護(hù)軟件或應(yīng)用程序,驗(yàn)證軟件的來(lái)源和完整性。
創(chuàng)建Nginx宿主機(jī)掛載目錄并賦權(quán)。
mkdir -p /opt/container/nginx/html /opt/container/portal /opt/container/nginx/www /opt/container/nginx/logs /opt/container/nginx/etc /etc/ssl/nginx

chmod -R 777 /opt/container/nginx/html /opt/container/portal /opt/container/nginx/www /opt/container/nginx/logs /opt/container/nginx/etc /etc/ssl/nginx

1234
默認(rèn)映射沒(méi)有配置文件,需要將容器中的配置文件復(fù)制到目錄下。

通過(guò)Docker安裝的Nginx,映射的目錄往往沒(méi)有默認(rèn)的配置文件和頁(yè)面,如果隨便從其他位置復(fù)制,如果配置文件版本不同,會(huì)導(dǎo)致Nginx無(wú)法訪(fǎng)問(wèn)。為了解決這個(gè)問(wèn)題,先創(chuàng)建一個(gè)Nginx容器,將配置文件和默認(rèn)的頁(yè)面提前復(fù)制到宿主機(jī)的映射目錄,再把容器刪除即可。我們只是用到它的默認(rèn)配置文件和頁(yè)面,后面步驟是具體搭建Nginx。

docker pull nginx
docker run --name nginx -p 80:80 -d nginx
# 復(fù)制nginx默認(rèn)頁(yè)面
docker cp nginx:/usr/share/nginx/html/* /opt/container/nginx/html
# 復(fù)制 所有的配置文件
docker cp nginx:/etc/nginx/* /opt/container/nginx/etc

# 用完之后,把容器刪除
docker stop 容器id
docker rm 容器id
12345678910
編寫(xiě)docker-compose-nginx.yml文件。

習(xí)慣用docker-compose搭建Docker服務(wù),感覺(jué)可以對(duì)配置等內(nèi)容留檔,當(dāng)然你也可以選擇直接使用Docker命令創(chuàng)建Nginx。

  • /opt/container/nginx/html 映射N(xiāo)ginx默認(rèn)頁(yè)面存放目錄。
  • /opt/container/portal 映射開(kāi)發(fā)的應(yīng)用前端頁(yè)面存放目錄。
  • /etc/ssl/nginx 存放Nginx SSL證書(shū)。

(二選一)docker-compose的方式創(chuàng)建Nginx:

version: '3'
services:
    ##nginx配置
    nginx:
      image: nginx:latest
      restart: always
      container_name: nginx
      environment:
        - TZ=Asia/Shanghai
      ports:
        - 8000:80
        - 4443:443
      volumes:
        - /opt/container/nginx/html:/usr/share/nginx/html/
        - /opt/container/portal:/nginx/html/
        - /opt/container/nginx/www:/var/www
        - /opt/container/nginx/logs:/var/log/nginx
        - /opt/container/nginx/etc:/etc/nginx
        - "/etc/localtime:/etc/localtime"
        - "/usr/share/zoneinfo/Asia/Shanghai:/etc/timezone"
        - /etc/ssl/nginx:/nginx/ssl
123456789101112131415161718192021

(二選一)docker命令的方式創(chuàng)建Nginx:

docker run \
-p 80:80 \
-p 443:443 \
--name=nginx \
-e TZ="Asia/Shanghai" \
--restart=always \
-v /opt/container/nginx/html:/usr/share/nginx/html \
-v /opt/container/portal:/nginx/html \
-v /opt/container/nginx/www:/var/www \
-v /opt/container/nginx/logs:/var/log/nginx \
-v /opt/container/nginx/etc:/etc/nginx \
-v /etc/localtime:/etc/localtime \
-v /usr/share/zoneinfo/Asia/Shanghai:/etc/timezone \
-v /etc/ssl/nginx:/nginx/ssl \
-d nginx:latest
123456789101112131415
docker-compose啟動(dòng)Nginx命令。

如果使用docker命令安裝,則不需要這一步驟。

cd /opt/software
docker-compose -f docker-compose-nginx.yml up -d
12
在云服務(wù)器上申請(qǐng)免費(fèi)的SSL證書(shū),各大云服務(wù)器廠(chǎng)商都可以免費(fèi)申請(qǐng),這里以阿里云為例,免費(fèi)申請(qǐng)SSL證書(shū)。
  • 登錄阿里云控制臺(tái),進(jìn)入[數(shù)字證書(shū)管理服務(wù)] > [SSL證書(shū)] > [免費(fèi)證書(shū)]。

  • 點(diǎn)擊 [創(chuàng)建證書(shū)] > [證書(shū)申請(qǐng)],然后按要求填寫(xiě)申請(qǐng)信息,然后提交審核。

  • 等待申請(qǐng)通過(guò),在證書(shū)列表中,就會(huì)看到已申請(qǐng)的SSL證書(shū),然后點(diǎn)擊下載按鈕,選擇需要部署的服務(wù)器類(lèi)型,我們這里使用的是nginx,所以選擇下載nginx服務(wù)器類(lèi)型的SSL證書(shū)。

  • 下載成功后,可以得到一個(gè)包含域名的zip包,里面有.key和.pem文件

將下載的SSL證書(shū).key和.pem文件上傳到Linux服務(wù)器/etc/ssl/nginx目錄,這里因?yàn)槲覀儎?chuàng)建docker容器時(shí)指定的映射目錄是這個(gè)。

修改nginx.conf配置文件,將證書(shū)配置到對(duì)應(yīng)域名配置中,然后重啟nginx服務(wù),域名就可以通過(guò)https訪(fǎng)問(wèn)了。
server {
        listen 80;
        listen 443 ssl;
        ssl_certificate /nginx/ssl/證書(shū)名稱(chēng).pem;
        ssl_certificate_key /nginx/ssl/證書(shū)名稱(chēng).key;
        server_name  域名;

        gzip on;
        gzip_buffers 32 4K;
        gzip_comp_level 6;
        gzip_min_length 100;
        gzip_types application/javascript text/css text/xml text/plain application/x-javascript image/jpeg image/gif image/png;
        gzip_disable "MSIE [1-6]\."; 
        gzip_vary on;
        #charset koi8-r;
        access_log  /var/log/nginx/portal.access.log  main;
        location / {
            proxy_set_header Host $http_host;               
            proxy_set_header X-Real-Ip $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://172.17.0.1:8080/;
        }
    }

免費(fèi)證書(shū)的優(yōu)勢(shì)通常包括以下幾點(diǎn):

  • 節(jié)省成本:免費(fèi)證書(shū)不需要支付任何費(fèi)用,可以為企業(yè)和個(gè)人節(jié)省一定的成本。
  • 風(fēng)險(xiǎn)低:雖然免費(fèi)證書(shū)的安全性可能沒(méi)有付費(fèi)證書(shū)高,但是使用免費(fèi)證書(shū)也可以提高網(wǎng)站的加密度,降低網(wǎng)站的風(fēng)險(xiǎn)。
  • 簡(jiǎn)單易用:免費(fèi)證書(shū)通常非常容易申請(qǐng)和安裝,無(wú)需太多的技術(shù)知識(shí)。
  • 全球范圍內(nèi)認(rèn)可:雖然免費(fèi)證書(shū)是免費(fèi)的,但是它們通常具有與付費(fèi)證書(shū)相同的加密等級(jí)和瀏覽器兼容性。這意味著它們?cè)谌蚍秶鷥?nèi)得到認(rèn)可和接受。
  • 短期有效期:免費(fèi)證書(shū)的有效期通常比付費(fèi)證書(shū)短,需要更頻繁地更新或重新申請(qǐng),但這也可以確保證書(shū)的安全性和有效性。

免費(fèi)的證書(shū)有效期只有一年,而且是單域名證書(shū),對(duì)于小型項(xiàng)目或者剛剛起步的網(wǎng)站,可以節(jié)省成本,就是在操作上需要每年重新申請(qǐng)一次。一般云服務(wù)廠(chǎng)商都會(huì)有證書(shū)申請(qǐng)個(gè)數(shù)限制,但對(duì)于初期項(xiàng)目來(lái)說(shuō)基本夠用了。

責(zé)任編輯:姜華 來(lái)源: 今日頭條
相關(guān)推薦

2023-09-08 08:14:14

2023-06-28 15:56:10

微服務(wù)容器無(wú)服務(wù)器計(jì)算

2023-09-14 20:55:52

NodeJSDocker

2024-03-26 12:08:20

加密NginxHTTP

2023-09-12 07:06:04

2019-10-21 11:00:29

微服務(wù)架構(gòu)部署策略

2023-10-13 18:57:22

2023-09-26 07:34:24

Docker部署依賴(lài)包

2023-10-12 09:13:14

2019-12-20 10:28:54

工具代碼開(kāi)發(fā)

2010-12-15 16:17:59

服務(wù)部署

2022-05-07 09:49:59

IPSSLLinux

2019-02-21 15:42:22

ZStack裸金屬部署

2023-10-17 14:29:35

2016-10-24 17:47:38

2021-05-27 05:24:50

SSL證書(shū)https

2019-05-22 14:42:43

SSLNginx反向代理

2024-01-04 07:39:53

LinuxCentOS 8Docker

2016-10-18 10:23:14

Docker容器SSL證書(shū)

2015-01-04 09:30:32

云計(jì)算Docker容器技術(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)