摘要:因為是在網(wǎng)站上看到有提供免費的證書,因為決定在上安裝試用一下。因為我不想中斷服務(wù),所以我手動把停用,把以前備用的一個啟動起來,占住端口以提供服務(wù)。更便捷的方法,請參考
因為是在segmentfault網(wǎng)站上看到letsencrypt有提供免費的ssl證書,因為決定在CentOS上安裝試用一下。
安裝過程很簡單,按照教程一步步來就能搞定:
$ git clone https://github.com/certbot/certbot $ cd certbot $ ./certbot-auto --help
但是教程的下一步就有問題了,安裝完之后的目錄下并沒有certbot這個可執(zhí)行文件,而只有certbot-auto,但其實它們兩個是一回事,直接用就可以。
當(dāng)我執(zhí)行./certbot-auto時,出現(xiàn)了以下錯誤:
Error: Multilib version problems found. This often means that the root cause is something else and multilib version checking is just pointing out that there is a problem. Eg.: 1. You have an upgrade for openssl which is missing some dependency that another package requires. Yum is trying to solve this by installing an older version of openssl of the different architecture. If you exclude the bad architecture yum will tell you what the root cause is (which package requires what). You can try redoing the upgrade with --exclude openssl.otherarch ... this should give you an error message showing the root cause of the problem. 2. You have multiple architectures of openssl installed, but yum can only see an upgrade for one of those arcitectures. If you don"t want/need both architectures anymore then you can remove the one with the missing update and everything will work. 3. You have duplicate versions of openssl installed already. You can use "yum check" to get yum show these errors.
感覺上好像是openssl版本不匹配,于是執(zhí)行
yum update openssl
然后再次執(zhí)行./certbot-auto,這次就沒問題了。
先退出界面,然后執(zhí)行
./certbot-auto --help
這次發(fā)現(xiàn)多了一些內(nèi)容。然后執(zhí)行:
./certbot-auto certonly --standalone -d www.myserver.com
因為是standalone,它試圖在80端口上啟動一個服務(wù)器,但是因為80端口已經(jīng)被nginx占用,所以執(zhí)行不成功,需要暫時停用一下nginx。因為我不想中斷服務(wù),所以我手動把nginx停用,把以前備用的一個apache啟動起來,占住80端口以提供服務(wù)。這樣我就不再需要standalone參數(shù),而可以使用apache參數(shù)了,如下:
./certbot-auto certonly --apache -d www.myserver.com
但又出現(xiàn)了錯誤,它在443的虛擬主機(jī)上找不到我的服務(wù)器,原來我只在80端口上配置了虛擬主機(jī),于是在Apache的conf文件上胡亂配上一個虛擬主機(jī),以便使用443端口。但還是連接不通。報如下錯誤:
- The following errors were reported by the server: Domain: www.myserver.com Type: connection Detail: Failed to connect to host for DVSNI challenge
仔細(xì)一想,原來是我在防火墻上把443端口禁用了,打開443端口后,終于成功!
- Congratulations! Your certificate and chain have been saved at /etc/letsencrypt/live/www.myserver.com/fullchain.pem. Your cert will expire on 2016-08-15. To obtain a new version of the certificate in the future, simply run Certbot again.
接下來,你會在上述目錄下看到4個文件:
cert.pem@ chain.pem@ fullchain.pem@ privkey.pem@
這4個文件里,我們在nginx配置中只會用到后2個,因為fullchain.pem就相當(dāng)于cert.pem+chain.pem。
nginx的配置如下:
server { listen 443; server_name www.myserver.com; root /var/www/html; ssl on; ssl_certificate /etc/letsencrypt/live/www.myserver.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/www.myserver.com/privkey.pem; location / { index index.php index.html index.htm; } location ~ /. { return 403; } location ~ .php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
最后還要記得配置80端口,這樣它才會強(qiáng)行把所有指向80端口的http鏈接轉(zhuǎn)變?yōu)閔ttps請求:
server { listen 80; server_name www.myserver.com; return 301 https://www.myserver.com$request_uri; }
到止為止,重啟nginx,終于可以在瀏覽器端看見那個漂亮的綠色小鎖頭了!
2016年6月9日補(bǔ)充:
其實在nginx下配置letsencrypt遠(yuǎn)沒有那么麻煩,首先需要在ini文件中的server塊中添加如下設(shè)置:
location ~ /.well-known { allow all; }
主要目的是因為letsencrypt在驗證時需要往這個文件夾下寫文件驗證,但其實你自己不必創(chuàng)建這個文件夾。
然后你再執(zhí)行如下語句:
./letsencrypt-auto certonly -a webroot --webroot-path=/var/www/html -d www.example.com
其余步驟同上。
更便捷的方法,請參考https://segmentfault.com/a/11...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/39288.html
摘要:于是,程序不再是原先單一的服務(wù),而是,變成了一系列密切相關(guān)的服務(wù)。需要注意的是,在模式下申請證書,需要向證明服務(wù)器能被訪問。 首先,祝各位新年快樂,萬事如意,雞年大吉。 這次要來說說一個和前端并不太相關(guān)的東西——docker compose,一個整合發(fā)布應(yīng)用的利器。 如果,你對 docker 有一些耳聞,那么,你可能知道它是什么。 不過,你不了解也沒有關(guān)系,在作者眼中,docker 就...
摘要:于是,程序不再是原先單一的服務(wù),而是,變成了一系列密切相關(guān)的服務(wù)。需要注意的是,在模式下申請證書,需要向證明服務(wù)器能被訪問。 首先,祝各位新年快樂,萬事如意,雞年大吉。 這次要來說說一個和前端并不太相關(guān)的東西——docker compose,一個整合發(fā)布應(yīng)用的利器。 如果,你對 docker 有一些耳聞,那么,你可能知道它是什么。 不過,你不了解也沒有關(guān)系,在作者眼中,docker 就...
摘要:官網(wǎng)安裝安裝非常簡單直接克隆就可以了生成通配符證書期間需要根據(jù)提示設(shè)置記錄用作你對判斷你是否擁有域名使用權(quán)其中換成你的一級域名即可參數(shù)說明表示安裝模式,有安裝模式和驗證模式兩種類型的插件。 官網(wǎng):https://letsencrypt.org/ 安裝Lets Encrypt 安裝非常簡單直接克隆就可以了 git clone https://github.com/letsencrypt/...
摘要:在上使用免費的如果你使用來做負(fù)載均衡,在上可以很方便的使用。提供期限為三個月的免費證書,到期之后需要,官方還提供自動的工具是一個自動申請和續(xù)期證書的工具。在官網(wǎng)可以找到各種和服務(wù)器下的安裝方法。常見的和安裝起來十分方便。 在Amazon Linux 上 使用 Lets encrypt 免費的SSL 如果你使用ELB來做負(fù)載均衡,在AWS上可以很方便的使用SSL。如果不使用ELB就需要自...
摘要:可以使用多個添加多個域名可以幫我們自動注冊證書,是靜態(tài)資源所指的路徑。輸入命令之后選擇即可,后續(xù)將會讓你繼續(xù)輸入郵箱信息如果出現(xiàn)字樣,則證明證書已被自動注冊。 本文以Debian 8為服務(wù)器栗子 最近升級了個人博客為https協(xié)議,寫一個詳細(xì)的教程幫助更多人升級https。 https的詳細(xì)原理在此文中省略,簡略來說,既是客戶端在訪問服務(wù)器時需要一個數(shù)字證書(里面包括公鑰),它由權(quán)威機(jī)...
閱讀 2861·2021-10-14 09:50
閱讀 1218·2021-10-08 10:21
閱讀 3646·2021-10-08 10:16
閱讀 3063·2021-09-27 14:02
閱讀 3135·2021-09-23 11:21
閱讀 2109·2021-09-07 10:17
閱讀 407·2019-08-30 14:00
閱讀 2105·2019-08-29 17:26