配置https

引子:

最近在一篇文章中了解到EFF(電子前哨基金會)為了推廣https協議,成立了一個let'sencrypt項目,可以發放免費的證書,此證書可以被大多數主流瀏覽器所信任,這個邪惡的念頭一爆發,就讓我走上了一條坎坷的不歸路。

準備:
工具:certbot
環境:centOS7

獲取Certbot工具:
根據我在網上了解到的信息,獲取certbot工具有三種方法
第一種是通過git在github中下載

git clone https://github.com/certbot/certbot.git

第二種是通過epel-release軟件源,這個軟件源有許多yum中沒有的軟件包,包括certbot

yum install epel-release
yum install certbot

第三種是通過wget來進行下載

wget https://dl.eff.org/certbot-auto


由于鐘愛github,熟悉git所以直接使用git下載好了
執行命令

git clone https://github.com/certbot/certbot.git

?

生成證書:
下載完了之后,會創建一個certbot的目錄

cd certbot
certbot-auto certonly --standalone --email crisen@crisen.org  -d www.crisen.org

然后agree協議 靜靜等待生成證書即可
出現下面提示就說明安裝好了

IMPORTANT NOTES:- Congratulations! Your certificate and chain have been saved at/etc/letsencrypt/live/your.domain.com/fullchain.pem. Your certwill expire on 20XX-09-23. To obtain a new or tweaked version ofthis certificate in the future, simply run certbot again. Tonon-interactively renew *all* of your certificates, run "certbotrenew"
 - If you like Certbot, please consider supporting our work by:Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donateDonating to EFF:                    https://eff.org/donate-le

證書會生成在/etc/letsencrypt/live目錄下

部署證書:
接著把證書的公鑰和私鑰配置到nginx的ssl目錄下,創建軟鏈接

ln -s /etc/letsencrypt/live/www.crisen.org/fullchain.pem   /usr/local/nginx/conf/ssl/www.crisen.org.crt
ln -s /etc/letsencrypt/live/www.crisen.org/privkey.pem /usr/local/nginx/conf/ssl/www.crisen.org.key

當然直接復制過去也是可行的

cp -i  /etc/letsencrypt/live/www.crisen.org/fullchain.pem  /usr/local/nginx/conf/ssl/www.crisen.org.crt
cp -i /etc/letsencrypt/live/www.crisen.org/privkey.pem  /usr/local/nginx/conf/ssl/www.crisen.org.key

接下來只要配置 nginx 的https服務就可以了 下面是我的nginx服務器配置文件

server {listen 80;listen 443 ssl http2;ssl_certificate /usr/local/nginx/conf/ssl/www.crisen.org.crt;ssl_certificate_key /usr/local/nginx/conf/ssl/www.crisen.org.key;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;ssl_prefer_server_ciphers on;ssl_session_timeout 10m;ssl_session_cache builtin:1000 shared:SSL:10m;ssl_buffer_size 1400;add_header Strict-Transport-Security max-age=15768000;ssl_stapling on;ssl_stapling_verify on;ssl_trusted_certificate   /usr/local/nginx/conf/ssl/www.crisen.org.crt;server_name www.crisen.org;access_log /data/wwwlogs/www.crisen.org_nginx.log combined;index index.html index.htm index.php;include /usr/local/nginx/conf/rewrite/none.conf;root /data/wwwroot/profiles;if ($ssl_protocol = "") { return 301 https://$host$request_uri; }
location ~ [^/]\.php(/|$) {#fastcgi_pass remote_php_ip:9000;fastcgi_pass unix:/dev/shm/php-cgi.sock;fastcgi_index index.php;include fastcgi.conf;}location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {expires 30d;access_log off;}location ~ .*\.(js|css)?$ {expires 7d;access_log off;}
}
nginx config

效果測試:
然后進入到www.crisen.org測試一下

出現了可信任的證書 到此配置完畢


踩過的坑:
服務器操作系統版本過低:
開始的時候我的操作系統是centOS5.1版本的,內置的python只有2.4,結果沒有辦法啟動certbot出現,

因為certbot-auto是python寫的,并且必須要2.6以上的版本才可以,

網上查看了許多文檔,也確定了certbot只支持更加現代的操作系統
解決辦法:備份網站數據,升級服務器操作系統

轉載于:https://www.cnblogs.com/crisenchou/p/5923419.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/256292.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/256292.shtml
英文地址,請注明出處:http://en.pswp.cn/news/256292.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

C# —— 序列化與反序列化

概念 序列化 通過使用不同的類(BinaryFormatter,SoapFormatter,XmlSerializer)將對象狀態轉換為可保持或傳輸的格式的過程,具體是將對象轉變為字節流,其目的是為了保存數據的狀態,方便后續還原調用。包括三種序列化形式:二進制序列化,SOAP序列化,XML序列化。于此過…

CentOS 6.5安裝VNC server

1. 安裝桌面,安裝時選擇了Desktop可以忽略 # yum groupinstall Desktop # yum install gnome-core xfce4 firefox 2. 安裝VNC server # yum install tigervnc-server 3. 配置服務 # chkconfig vncserver on 4. 設置VNC用戶密碼 # vncpasswd 5. 配置文件 # vi /etc/s…

【圖像處理】——圖像灰度直方圖的繪制(直接調用函數和自定義函數)

目錄 一、灰度直方圖概念 二、直接調用opencv的函數caclHist() 1、函數介紹 2、實例 <

Codeforces 722C. Destroying Array

C. Destroying Arraytime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou are given an array consisting of n non-negative integers a1,?a2,?...,?an. You are going to destroy integers in the array one by o…

C#中數據類型及其轉換知識點匯總

概念 C#中數據類型分為兩大類&#xff0c;分別是值類型和引用類型。 值類型變量是從類 System.ValueType 中派生出來的&#xff0c;當聲明一個值類型變量時&#xff0c;系統分配內存來存儲值。 整形 包括8種類型&#xff0c;區別在于字節數和有無符號。 浮點型 float占用…

10億個字符串的排序問題

一、問題描述 有一個大文件&#xff0c;里面有十億個字符串&#xff0c;亂序的&#xff0c;要求將這些字符串以字典的順序排好序 二、解決思路 將大文件切割成小文件&#xff0c;每個小文件內歸并排序&#xff1b; 對所有的小文件進行歸并排序——多重歸并排序 三、解決方案 3.…

MVC學習IIS的不同版本(一)

一&#xff1a;IIS5.0運行在進程InetInfo.exe中&#xff0c;該進程寄宿著一個名為World Wide Publishing Service&#xff08;W3VC&#xff09;的window服務。 W3VC的主要功能&#xff1a;包括HTTP請求的監聽、工作進程和配置管理 檢測到HTTP 請求時&#xff1a; 根據擴展名判斷…

Halcon中visualize_object_model_3d算子詳解

概念 此函數用于顯示3d模型。該函數功能很多,包括設置位姿,顏色,鼠標翻轉、縮放、平移,選擇和取消選擇目標,降低鼠標靈敏度,切換檢查模式等。 參數 visualize_object_model_3d( : : WindowHandle, ObjectModel3D, CamParam, PoseIn, GenParamName, GenParamValue, Tit…

random()模塊隨機函數的用法總結

random()是Python中生成隨機數的函數&#xff0c;是由random模塊控制&#xff0c;random()函數不能直接訪問&#xff0c;需要導入random 模塊&#xff0c;然后再通過相應的靜態對象調用該方法才能實現相應的功能 目錄 1. random.random() 2. random.uniform() 3. random.ra…

ansible命令應用示例

ansible命令應用示例 ping slave組ansible slave -m ping 用bruce 用戶以root 身份pingansible slave -m ping -u bruce --sudo 用bruce 用戶sudo 到batman 用戶pingansible slave -m ping -u bruce --sudo --sudo-user batman 給slave組安裝ftpan…

史上超全halcon常見3D算子匯總(一)

讀取3D模型 read_object_model_3d 此算子用于讀取3D對象。 read_object_model_3d( : : FileName, Scale, GenParamName, GenParamValue : ObjectModel3D, Status) FileName:文件名,halcon支持多種3d數據格式的讀取,包括 .off, .ply, .dxf, .om3, .obj, .stl等格式。 1).…

Python:常用模塊簡介(1)

sys模塊 >>> sys.platform #返回操作系統平臺名稱 win32 >>> sys.stdin #輸入相關 <open file <stdin>, mode r at 0x000000000337B030> >>> sys.stdout #輸出相關 <open file <stdout>, mode w at 0x000000000337…

【圖像處理】——Python實現圖像加噪(隨機噪聲、椒鹽噪聲、高斯噪聲等)

目錄 1、隨機噪聲 2、椒鹽噪聲 3、高斯噪聲 補充:numpy.clip函數 4、其他噪聲 1、隨機噪聲 隨機噪聲就是通過隨機函數在圖像上隨機地

100NED

將生活融入編程轉載于:https://www.cnblogs.com/nedhome/p/5036680.html

Windows10 VS2019下使用CMake3.20.1打開PCL1.11.0程序

安裝CMake 為什么要使用cmake cmake 是kitware 公司以及一些開源開發者在開發幾個工具套件(VTK)的過程中衍生品&#xff0c;成為一個獨立的開放源代碼項目。 CMake是一個很強大的編譯配置工具&#xff0c;支持多種平臺和編譯器&#xff0c;通過編寫CMakeLists.txt&#xff0c…

Java 并發---ConcurrentHashMap

concurrent包下的并發容器 JDK5中添加了新的concurrent包&#xff0c;相對同步容器而言&#xff0c;并發容器通過一些機制改進了并發性能。因為同步容器將所有對容器狀態的訪問都串行化了&#xff0c;這樣保證了線程的安全性&#xff0c;所以這種方法的代價就是嚴重降低了并發性…

【圖像處理】——圖像濾波(Python+opencv實現三種方法:均值濾波、中值濾波、高斯濾波等)

目錄 一、什么是濾波以及濾波的目的? 二、均值濾波(cv2.blur()) 1、原理 2、關鍵代碼

UIScrollView事件攔截

在日常的開發中,我們經常會用到UIScrollView,然而,它是一個問題頻出的控件,比如在nib中使用它就必須手動為它創建一個ContentView.當然了使用春代碼的時候使用了懶加載機制使得它能夠擁有一個contentView,今天我們不談這個問題,我們來談談UIScrollView的事件攔截相關的知識. 在…

Windows10下安裝QT5.14.2并用VS2019打開

安裝 從官網下載&#xff1a;QT 安裝方法僅需要注意&#xff1a; 1.最好不要安裝在C盤。 2.根據開發需要安裝功能模塊&#xff0c;具體見參考文章。 https://jingyan.baidu.com/article/656db918d9292ae380249c4f.html 因為是用于PCL編程的&#xff0c;所以只選了msvc2017_64,…