成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > 為docker中的nginx配置https的方法步驟

為docker中的nginx配置https的方法步驟

熱門標(biāo)簽:云會外呼系統(tǒng) 智能電話機(jī)器人坐席 申請400電話價格多少 安陽ai電銷機(jī)器人軟件 柳州市機(jī)器人外呼系統(tǒng)報價 外呼系統(tǒng)不彈窗 外呼系統(tǒng)的經(jīng)營范圍 涪陵商都400電話開通辦理 廈門營銷外呼系統(tǒng)平臺

沒有 https 加持的網(wǎng)站會逐漸地被瀏覽器標(biāo)記為不安全的,所以為網(wǎng)站添加 https 已經(jīng)變得刻不容緩。對于商業(yè)網(wǎng)站來說,花錢購買 SSL/TLS 證書并不是什么問題。但對于個人用戶來說,如果能有免費的 SSL/TLS 證書可用將會是非常幸福的事情!Let's Encrypt 就是一個提供免費 SSL/TLS 證書的網(wǎng)站,由于其證書期限只有三個月,所以需要我們用自動化的方式去更新證書。本文將介紹如何為通過 docker 運行的 nginx 中的站點添加 https 支持,并自動完成證書的更新。本文的演示環(huán)境為:運行在 Azure 上的 Ubuntu 16.04 主機(jī)(此圖來自互聯(lián)網(wǎng)):

準(zhǔn)備環(huán)境

在 Azure 上創(chuàng)建 Ubuntu 類型的虛機(jī)事件非常容易的事情,安裝 docker 也無須贅言。比較容易忽略的是配置合適的網(wǎng)絡(luò)安全組規(guī)則,比如打開 80 和 443 端口:

還有就是配置 DNS:

創(chuàng)建一個普通的 http 站點

簡單起見,直接使用一個鏡像中的 nodejs 應(yīng)用作為 web 站點:

$ docker pull ljfpower/nodedemo
$ docker network create -d bridge webnet
$ docker run -d --restart=always --expose=3000 \

   --network=webnet --name=myweb \

   ljfpower/nodedemo

在用戶的家目錄下創(chuàng)建 nginx 目錄及其子目錄 conf.d、conf.crt 和 html,創(chuàng)建 logs 目錄及其子目錄 nginx 和 letsencrypt:

$ mkdir -p nginx/{conf.d,conf.crt,html}
$ mkdir -p logs/{nginx,letsencrypt}

說明,本文演示的示例中需要我們手動創(chuàng)建的文件和目錄結(jié)構(gòu)如下:

創(chuàng)建 nginx/nginx.conf 文件,內(nèi)容如下:

user nginx;
worker_processes auto;

error_log /var/log/nginx/error.log warn;
pid  /var/run/nginx.pid;

events {
 worker_connections 2048;
}

http {
 include  /etc/nginx/mime.types;
 default_type application/octet-stream;

 sendfile  on;
 keepalive_timeout 65;
 client_max_body_size 10M;

 include /etc/nginx/conf.d/*.conf;
}

然后創(chuàng)建 nginx/conf.d/default.conf 文件,內(nèi)容如下:

upstream web{
 server myweb:3000;
}
server {
 listen  80;
 listen  [::]:80;
 server_name filterinto.com www.filterinto.com;

 location ^~ /.well-known/acme-challenge/ {
  default_type "text/plain";
  root /usr/share/nginx/html;
 }
 location = /.well-known/acme-challenge/ {
  return 404;
 }
 location / {
  proxy_pass http://web;
 }
}

其中 /.well-known/acme-challenge/ 目錄是 certbot 工具在生成證書時創(chuàng)建的。接下來創(chuàng)建文件 nginx/html/index.html 文件,內(nèi)容如下:

<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8" />
 <title>Let's Encrypt First Time Cert Issue Site</title>
</head>
<body>
 <h1>Hello HTTPS!</h1>
 <p>
  Just used for the very first time SSL certificates are issued by Let's Encrypt's
  certbot.
 </p>
</body>
</html>

這個頁面也是 certbot 在生成證書時需要用到的。最后讓我們啟動容器(在用戶的家目錄下執(zhí)行下面的命令):

$ docker run -d \

 -p 80:80 \

 -v $(pwd)/nginx/conf.d:/etc/nginx/conf.d:ro \

 -v $(pwd)/nginx/nginx.conf:/etc/nginx/nginx.conf:ro \

 -v $(pwd)/logs/nginx:/var/log/nginx \

 -v $(pwd)/nginx/html:/usr/share/nginx/html \

 --restart=always \

 --name=gateway \

 --network=webnet \

 nginx:1.14

注意:這時沒有映射 443 端口,也沒有掛載存放證書的目錄。只能以 http 協(xié)議訪問訪問我們的站點:

為站點生成 SSL/TLS 證書

Let's Encrypt 是一個提供免費 SSL/TLS 證書的網(wǎng)站,它為用戶提供了 certbot 工具用來生成 SSL/TLS 證書。方便起見,我們把 certbot 簡單的封裝到容器中。在用戶的家目錄下創(chuàng)建 certbot 目錄,進(jìn)入 certbot 目錄并把下面的內(nèi)容保存到 Dockerfile 文件中:

FROM alpine:3.4
RUN apk add --update bash certbot
VOLUME ["/etc/letsencrypt"]

然后執(zhí)行下面的命令創(chuàng)建 certbot 鏡像:

$ docker build -t certbot:1.0 .

然后在 certbot 目錄下創(chuàng)建自動更新證書的腳本 renew_cert.sh,內(nèi)容如下:

#!/bin/bash
WEBDIR="$1"
LIST=('filterinto.com' 'www.filterinto.com')
LED_LIST=()
WWW_ROOT=/usr/share/nginx/html
for domain in ${LIST[@]};do
 docker run \

  --rm \

  -v ${WEBDIR}/nginx/conf.crt:/etc/letsencrypt \

  -v ${WEBDIR}/logs/letsencrypt:/var/log/letsencrypt \

  -v ${WEBDIR}/nginx/html:${WWW_ROOT} \

  certbot:1.0 \

  certbot certonly --verbose --noninteractive --quiet --agree-tos \

  --webroot -w ${WWW_ROOT} \

  --email="nick.li@grapecity.com" \

  -d "$domain"
 CODE=$?
 if [ $CODE -ne 0 ]; then
  FAILED_LIST+=($domain)
 fi
done

# output failed domains
if [ ${#FAILED_LIST[@]} -ne 0 ];then
 echo 'failed domain:'
 for (( i=0; i<${#FAILED_LIST[@]}; i++ ));
 do
  echo ${FAILED_LIST[$i]}
 done
fi

在用戶的家目錄中執(zhí)行 ./renew_cert.sh /home/nick 命令就可以生成新的證書(/home/nick 為當(dāng)前用戶的家目錄)。生成的證書被保存在 /home/nick/nginx/conf.crt/live 目錄下,以域名命名的目錄下保存著該域名的證書:

然后去檢查下 nginx/html 目錄,發(fā)現(xiàn)多了一個隱藏的 .well-known 目錄,這個目錄就是在生成證書時創(chuàng)建的:

有了 SSL/TLS 證書,接下來我們就可以配置 https 站點了。

為站點配置 SSL/TLS 證書

有了 SSL/TLS 證書,接下來更新 nginx 的配置文件就可以了,更新 nginx/conf.d/default.conf 的內(nèi)容如下:

upstream web{
 server myweb:3000;
}

server {
 listen  80;
 listen  [::]:80;
 server_name filterinto.com www.filterinto.com;

 location ^~ /.well-known/acme-challenge/ {
  default_type "text/plain";
  root /usr/share/nginx/html;
 }
 location = /.well-known/acme-challenge/ {
  return 404;
 }
 return 301 https://$server_name$request_uri;
}
server {
 listen  443;
 listen  [::]:443;
 server_name filterinto.com;

 # enable ssl
 ssl      on;
 ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
 ssl_prefer_server_ciphers on;
 ssl_ciphers    "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH EDH+aRSA !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4";

 # config ssl certificate
 ssl_certificate   conf.crt/live/filterinto.com/fullchain.pem;
 ssl_certificate_key  conf.crt/live/filterinto.com/privkey.pem;

 location ^~ /.well-known/acme-challenge/ {
  default_type "text/plain";
  root /usr/share/nginx/html;
 }
 location = /.well-known/acme-challenge/ {
   return 404;
 }
 location / {
  proxy_pass http://web;
 }
}
server {
 listen  443;
 listen  [::]:443;
 server_name www.filterinto.com;

 # enable ssl
 ssl      on;
 ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
 ssl_prefer_server_ciphers on;
 ssl_ciphers    "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH EDH+aRSA !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4";

 # config ssl certificate
 ssl_certificate   conf.crt/live/www.filterinto.com/fullchain.pem;
 ssl_certificate_key  conf.crt/live/www.filterinto.com/privkey.pem;

 location ^~ /.well-known/acme-challenge/ {
  default_type "text/plain";
  root /usr/share/nginx/html;
 }
 location = /.well-known/acme-challenge/ {
   return 404;
 }
 location / {
  proxy_pass http://web;
 }
}

然后刪除容器 gateway 并用下面的腳本重新創(chuàng)建:

$ docker run -d \

 -p 80:80 \

 -p 443:443 \

 -v $(pwd)/nginx/conf.d:/etc/nginx/conf.d:ro \

 -v $(pwd)/nginx/conf.crt:/etc/nginx/conf.crt:ro \

 -v $(pwd)/nginx/nginx.conf:/etc/nginx/nginx.conf:ro \

 -v $(pwd)/logs/nginx:/var/log/nginx \

 -v $(pwd)/nginx/html:/usr/share/nginx/html \

 --restart=always \

 --name=gateway \

 --network=webnet \

 nginx:1.14

現(xiàn)在就只能通過 https 來訪問站點了:

自動更新證書

Let's Encrypt 提供的 SSL/TLS 證書期限只有三個月,每過三個月要手動更新一次證書也夠嗆的,下面我們介紹自動更新證書的方法。

其實我們的配置已經(jīng)為自動化更新證書提供了最大的便利(其實是使用 docker 帶來的便利),在定時任務(wù)中添加下面兩條記錄就可以了:

0 0 1 * * /home/nick/certbot/renew_cert.sh /home/nick >> /home/nick/logs/cert.log 2>> /home/nick/logs/cert.error.log
0 1 1 * * docker exec gateway nginx -s reload

每月 1 號的 0 點更新證書,一個小時后 reload nginx 的配置。

總結(jié)

Let's Encrypt 是一個非常棒的網(wǎng)站,對于初學(xué)者和個人來說,能夠幫助我們輕松的實現(xiàn) HTTPS 站點(還是免費的)!在方便的同時,其隱患也是顯而易見的:既然誰都可以無門檻的獲得 SSL/TLS 證書,那么非法網(wǎng)站也可以通過它把自己偽裝成看上去合法的站點。 所以千萬不要片面的認(rèn)為 HTTPS 站點就是安全的!

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:巴中 福州 南充 綏化 蕪湖 晉城 撫順 孝感

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《為docker中的nginx配置https的方法步驟》,本文關(guān)鍵詞  為,docker,中的,nginx,配置,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《為docker中的nginx配置https的方法步驟》相關(guān)的同類信息!
  • 本頁收集關(guān)于為docker中的nginx配置https的方法步驟的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    免费看欧美女人艹b| 日本xxxxxxx免费视频| 精品香蕉一区二区三区| 精品国产一区二区亚洲人成毛片| 天堂久久精品忘忧草| 亚洲最色的网站| 麻豆一区二区三区视频| 欧美自拍偷拍午夜视频| 久久99成人| 亚洲电影中文字幕在线观看| 国产一区二区不卡视频在线观看| 两性午夜免费视频| 国产精品乱子伦| 丁香五六月婷婷久久激情| 成人h动漫免费观看网站| 午夜伊人狠狠久久| 2021av网| av综合网站| 综合视频在线| 国产精品69精品一区二区三区| 国产无套内射久久久国产| 天天操天天插| 美女网站色91| 色aⅴ色av色av偷拍| 高清欧美性猛交xxxx| 欧洲av一区| 欧美黄色精品| 日本一区二区三不卡| 免费一级片在线观看| 极品av少妇一区二区| 91精品亚洲一区在线观看| 一区二区三区福利| 亚洲欧美久久| 醉酒壮男gay强迫野外xx| 人人在草线视频在线观看| 中文视频一区视频二区视频三区| 99视频在线看| 久久福利毛片| sqte在线播放| 午夜在线观看一区| 国内拍拍自拍视频在线观看| 综合激情网站| 日本在线播放不卡| 日韩一区二区三区视频在线| 欧美最猛黑人xxxx黑人猛交黄| heyzo高清在线| 欧美精品一二三四区| 麻豆精品一二三| 97成人精品区在线播放| 一区二区亚洲| 中文字幕一区二区中文字幕| 日韩视频一区二区三区在线播放免费观看| 国产精品熟妇一区二区三区四区| 国产一级揄自揄精品视频| 一区二区三区四区国产精品| www.国产.com| 男男电影完整版在线观看| 日韩亚洲欧美精品| 中文在线第一页| h版电影在线播放视频网址| 五十路在线观看| 一区二区三区日本久久久| freexxxx性特大另类| 日韩激情一区| 午夜激情在线观看| 日韩成人精品视频| 国产xxx69麻豆国语对白| 国产系列电影在线播放网址| av素人天堂| 欧美日韩国产成人在线观看| 欧美黄色免费| 欧美 日韩 亚洲 一区| 国产午夜精品全部视频播放| 99re这里都是精品| 杨钰莹一级淫片aaaaaa播放| 欧美日韩色网| 免费亚洲网站| 午夜一级毛片| 久久中文免费视频| 欧美三级日本三级少妇99| 色先锋资源久久综合| 2019中文字幕视频| 亚洲午夜精品视频| 国产精品日韩久久久| 欧美日韩国产一级| 成人毛片av在线| 90岁老太婆乱淫| 玖玖国产精品视频| 日韩二区三区四区| a中文字幕www| 国产精品视频大全| 91精品中国老女人| 久久久久国产精品区片区无码| 亚洲国产成人精品视频| 天堂网免费视频| 999精品视频在这里| 亚洲一区二区三区在线观看视频| 麻豆mv在线观看| 亚洲成人网上| 波多野结衣电车| 高清不卡亚洲| 国产毛片精品| 99久久婷婷国产综合| 欧美天堂一区二区| 日本免费不卡一区二区| 精品人妻一区二区免费视频| 久久成人人人人精品欧| 日韩大片在线观看| 全球av集中精品导航福利| 久久机热这里只有精品| 久久性爱视频网站| 色婷婷av一区二区三区在线观看| 国产乱人伦丫前精品视频| 精品少妇久久久久久888优播| 一区精品在线| 国产啊啊啊视频在线观看| 丁香花在线观看完整版电影| 自拍视频在线免费观看| 中文字幕欧美激情极品| 视频一区三区| 欧美aaaaa喷水| 国产丝袜在线| 四虎影视一区二区| 无码人妻精品一区二区三区99不卡| 免费裸体美女网站| 在线日韩av永久免费观看| 免费久久精品| 国产精品密蕾丝视频下载| 国产激情视频一区二区三区欧美| 国产成人午夜99999| 国产男人精品视频| 亚洲成人第一网站| 亚洲成人a**址| 亚洲一二三四区不卡| 中文文精品字幕一区二区| www久久久久久| 国产精品视频首页| 日本免费看黄色| wwwcom羞羞网站| 日本一极黄色片| 无码人妻丰满熟妇精品| 欧美三级韩国三级日本一级| 国产黄色片网站| 日本精品不卡| 在线满18网站观看视频| 午夜精品一区二区三区电影天堂| 成年女人18级毛片毛片免费| 女人又爽又黄免费女仆| 亚洲欧美精品aaaaaa片| eeuss影院网站免费观看| 久久精品夜夜夜夜夜久久| 波多野结衣亚洲一二三| 国产精品免费一区二区三区| 亚洲精品国产a久久久久久| 欧美亚洲丝袜传媒另类| 国产视频精品自拍| 一本一道波多野毛片中文在线| 国产成人无遮挡在线视频| 99热99re6国产在线播放| 亚洲 欧美 日韩系列| 青青草国产一区二区三区| 怡红院视频网站| 日韩欧美一中文字暮专区| 日韩欧美国产一区二区| 欧美午夜一区二区三区免费大片| 国产乱码精品一区二区三区av| 成人做爰69片免费看网站| 91美女精品福利| 久久人人88| 久久人人精品| 三年片大全在线观看大全有哪些| 国产在线视频在线观看| 国产精品一区二区三区四区五区| 91精品国产毛片武则天| 国产一级二级三级| 波多野结衣与黑人| av免费在线播放| xfplay资源站色先锋在线观看| 亚洲国产成人av在线| 色综合久综合久久综合久鬼88| 高清国产在线一区| 91视频www| 日本成人在线免费视频| 少妇一级黄色片| 亚洲视频自拍| 中文字幕日韩亚洲| 在线观看的毛片| 精品综合久久久久久97| 国产女主播在线一区二区| 伊人久久精品视频| 97av在线视频免费播放| 日韩精品自拍偷拍| 9191国语精品高清在线| 日本在线аv| 懂色av中文在线| 九九爱在线视频观看免费视频| koreanbj精品视频一区| 日韩av网站电影| 美女视频一区在线观看| 在免费jizzjizz在线视频| 欧美日韩激情视频| 久久超级碰碰| 欧美性xxxx极品hd满灌| 日韩一级中文字幕| 黄色av一区二区三区| 国产精品免费电影| 国产成人羞羞电影网站在线观看| 中国在线观看免费国语版电影| 91热精品视频| 日本三级很黄试看120秒| 黄av在线播放| 三年中国国语在线播放免费| 亚洲韩国一区二区三区| 国产精品中文| 先锋影音一区二区| 国产精品久久91| 91免费版网站入口| 一本一道久久a久久精品综合| 在线观看精品| 国产精品视频一区视频二区| 影音先锋5566中文源资源| 精品人伦一区二区三区蜜桃免费| 亚洲一区二区三区四区五区午夜| 一区二区理论电影在线观看| 中文在线免费一区三区| 欧美成人福利在线观看| 素人一区二区三区| 精品久久久久久中文字幕| 中文字幕精品在线观看| 亚洲色图网友自拍| 成人18免费| 福利在线免费| 99久久免费精品高清特色大片| 特级西西人体高清大胆| 亚洲自拍欧美另类| 六月婷婷激情网| 久久久国产视频| 久草在线在线视频| 四虎国产精品永久在线国在线| 日本888xxxx| 在线亚洲+欧美+日本专区| 顶臀精品视频www| 可以在线观看的av| 国产91精品入口| 99中文字幕一区| 丰满饥渴老女人hd| 国产伦精品一区二区三区妓女下载| a黄色片在线观看| 日本黄区免费视频观看| 午夜精品久久久久影视| 国产一区二区三区四区在线观看| 亚洲欧美视频在线播放| 在线播放性xxx欧美| 国产视频1区| 亚洲精品国产av| 天堂资源在线中文| 欧美酷刑日本凌虐凌虐| 久久久精品国产99久久精品芒果| 欧美最猛性xxxxx喷水| 最新中文字幕av专区| 日日躁夜夜躁白天躁晚上躁91| 中文字幕日韩一区二区不卡| h小视频在线观看网| 亚洲欧美成人在线| 青春草在线视频| 热99精品里视频精品| 亚洲承认视频| 日本欧洲一区| 国产色综合久久| 中文字幕av高清在线观看| 亚洲 欧美 激情 小说 另类| 午夜日韩电影| 视频在线观看一区二区| 欧美性猛交xxxxx少妇| 影音先锋在线资源中文字幕| 九色成人搞黄网站| 欧美三级午夜理伦| 日韩高清一区| 高清av电影在线观看| 欧美国产日韩xxxxx| 欧美成人se01短视频在线看| 国产极品国产极品| 成人福利视频网站| av网站免费播放| 在线观看入口黄最新永久免费国产| 粉嫩aⅴ一区二区三区四区五区| 欧美乱做爰xxxⅹ久久久| 老鸭窝一区二区久久精品| 欧美区一区二区| 欧美做受高潮6| 九色精品91| 五月天婷婷久久| 日本黄色特级片| 国产精品视频久久久| 91免费在线播放| 午夜精品久久久久久久99热浪潮| 国产精品久久久av| 色综合久久久久综合| 色呦呦在线播放| 丰满人妻一区二区三区大胸| 亚洲一区二区三区在线| 亚洲精选av| 波多野结衣一区二区| 一级网站免费观看| 色99中文字幕| 小早川怜子久久精品中文字幕| 欧美一区二区三区久久久| 日韩精品极品视频在线观看免费| 亚洲欧美综合图区| 在线免费观看亚洲| 午夜视频在线观看网站| 黄色不卡一区| 亚洲精品国产品国语在线app| 精品国产老师黑色丝袜高跟鞋| 青娱乐在线免费视频| 欧美变态视频| 国产免费无遮挡| 免费网站在线观看人| 精品国产福利在线| 在线黄色av网站| 韩国精品美女www爽爽爽视频| 日韩三级视频在线看| 中文字幕永久在线观看| 国产乱了高清露脸对白| 亚洲欧洲自拍偷拍| √…a在线天堂一区| 免费看污黄网站在线观看| 青青操在线观看视频|