Nginx 服務器 SSL 證書安裝部署

操作場景

本文檔以證書名稱 menglinfeng.top 為例。
Nginx 版本以 nginx/1.18.0 為例。
當前服務器的操作系統為 CentOS 7,由于操作系統的版本不同,詳細操作步驟略有區別。
安裝 SSL 證書前,請您在 Nginx 服務器上開啟 “443” 端口,避免證書安裝后無法啟用 HTTPS。

前提條件

已準備遠程文件拷貝軟件,例如 WinSCP(建議從官方網站獲取最新版本)。
已準備遠程登錄工具,例如 PuTTY 或者 Xshell(建議從官方網站獲取最新版本)。
已購買國密標準(SM2)SSL 證書。

  1. 遠程登錄 Nginx 服務器。例如,使用 “PuTTY” 工具 登錄。
  2. 安裝編譯工具:如果您的系統是全新的,請先在服務器上安裝 C++ 開發環境、pcre-devel、zlib-devel 軟件為編譯提供環境支持。您可以使用如下命令進行安裝。
#安裝 C++ 開發環境
yum install -y gcc gcc-c++ 
#安裝 pcre-devel
yum install pcre-devel -y
#安裝 zlib-devel
yum install zlib-devel -y

3.下載并編譯安裝 Nginx:您可以通過在服務器上按以下順序輸入命令,下載 Nginx 國密版和國密模塊至服務器并編譯安裝,由于操作系統的版本不同,詳細操作步驟略有區別。(nginx安裝)

操作步驟
  1. 請在 SSL 證書管理控制臺 中選擇您需要安裝的證書并單擊下載。
  2. 在彈出的 “證書下載” 窗口中,服務器類型選擇 Nginx,單擊下載并解壓縮 menglinfeng.top 證書文件包到本地目錄。
    解壓縮后,可獲得相關類型的證書文件。其中包含 cloud.tencent.com_nginx 文件夾:
    文件夾名稱:menglinfeng.top_nginx
    文件夾內容:
    menglinfeng.top_bundle.crt 證書文件
    menglinfeng.top_bundle.pem 證書文件(可忽略該文件)
    menglinfeng.top.key 私鑰文件
    menglinfeng.top.csr CSR 文件
  3. 使用 “WinSCP”(即本地與遠程計算機間的復制文件工具)登錄 Nginx 服務器。
  4. 將已獲取到的 menglinfeng.top_bundle.crt 證書文件和 menglinfeng.top.key 私鑰文件從本地目錄拷貝到 Nginx 服務器的 /usr/local/nginx/conf 目錄(此處為 Nginx 默認安裝目錄,請根據實際情況操作)下。
  5. 遠程登錄 Nginx 服務器。例如,使用 “PuTTY” 工具 登錄。
  6. 編輯 Nginx 根目錄下的 conf/nginx.conf 文件。修改內容如下:
server {#SSL 訪問端口號為 443listen 443 ssl; #填寫綁定證書的域名server_name menglinfeng.top; #證書文件名稱ssl_certificate menglinfeng.top_bundle.crt; #私鑰文件名稱ssl_certificate_key menglinfeng.top.key; ssl_session_timeout 5m;#請按照以下協議配置ssl_protocols TLSv1.2 TLSv1.3; #請按照以下套件配置,配置加密套件,寫法遵循 openssl 標準。ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on;location / {#網站主頁路徑。此路徑僅供參考,具體請您按照實際目錄操作。#例如,您的網站運行目錄在/etc/www下,則填寫/etc/www。root html; index  index.html index.htm;}}
  1. 在 Nginx 根目錄下,通過執行以下命令驗證配置文件問題。
./sbin/nginx -t

若存在,請您重新配置或者根據提示修改存在問題。
可能會報錯

nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf

解決方法:nginx開啟https報錯
若不存在,請執行 步驟8。
8. 重啟 Nginx,即可使用 https://menglinfeng.top.com 進行訪問。

Nginx 配置Http和Https共存
server {listen 80;listen 443 ssl;#ssl on;server_name menglinfeng.top;ssl_certificate /usr/local/Tengine/sslcrt/ menglinfeng.top.crt;ssl_certificate_key /usr/local/Tengine/sslcrt/ menglinfeng.top.Key;
}

把ssl on;這行去掉,ssl寫在443端口后面。這樣http和https的鏈接都可以用

Nginx 配置SSL安全證書重啟避免輸入密碼

可以用私鑰來做這件事。生成一個解密的key文件,替代原來key文件。

openssl rsa -in server.key -out server.key.unsecure
Nginx SSL性能調優
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES256-SHA384:AES256-SHA256:RC4:HIGH:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!AESGCM;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
Nginx 配置Http跳轉Https
server {listen 80;server_name menglinfeng.top;rewrite ^(.*) https://$server_name$1 permanent;
}
server {listen 443;server_name menglinfeng.top;root /home/www;ssl on;ssl_certificate /etc/nginx/certs/server.crt;ssl_certificate_key /etc/nginx/certs/server.key;
}

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

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

相關文章

基于官方YOLOv4開發構建目標檢測模型超詳細實戰教程【以自建缺陷檢測數據集為例】

本文是關于基于YOLOv4開發構建目標檢測模型的超詳細實戰教程,超詳細實戰教程相關的博文在前文有相應的系列,感興趣的話可以自行移步閱讀即可:《基于yolov7開發實踐實例分割模型超詳細教程》 《YOLOv7基于自己的數據集從零構建模型完整訓練、…

springboot(ssm超市貨品信息管理系統 超市購物系統Java(codeLW)

springboot(ssm超市貨品信息管理系統 超市購物系統Java(code&LW) 開發語言:Java 框架:ssm/springboot vue JDK版本:JDK1.8(或11) 服務器:tomcat 數據庫:mysql 5.7(或8.0&am…

Linux技能篇-非交互式修改密碼

今天的文章沒有格式,簡單分享一個小技能,就是標題所說–非交互式修改密碼。 一、普通方式修改用戶密碼 最普通的修改密碼的命令就是passwd命令 [rootlocalhost ~]# passwd root Changing password for user root. New password: Retype new password:…

一文徹底看懂Python切片,Python切片理解與操作

1.什么是切片 切片是Python中一種用于操作序列類型(如列表、字符串和元組)的方法。它通過指定起始索引和結束索引來截取出序列的一部分,形成一個新的序列。切片是訪問特定范圍內的元素,就是一個Area。 說個笑話:切片不是切片,而是切片,但是又是切片。大家理解下呢(末…

高防cdn防護原理是什么,是否可以防護服務器嗎

隨著互聯網業務的迅速發展,網絡安全問題日益凸顯。在這樣的背景下,高防CDN作為一種有效的網絡安全解決方案,受到了越來越多的關注。那么高防CDN的防護原理是什么呢?接下來就跟小德一起深入了解下吧! 1. 高防CDN的基本概念 我們要明確什么是…

【云原生 Prometheus篇】Prometheus的動態服務發現機制

自動發現 一、Prometheus服務發現 理論部分1.1 Prometheus數據采集配置1.2 基于文件的服務發現1.3 基于consul的服務發現1.4 基于 Kubernetes API 的服務發現1.4.1 概念1.4.2 部分配置參數1.4.3 配置模板 二、實例一:部署基于文件的服務發現2.1 創建用于服務發現的文…

Spring事務底層原理(待完善)

EnableTransactionManagement 我們經常使用EnableTransactionManagement開啟事務, 這個注解導入一個類,Import(TransactionManagementConfigurationSelector.class), 會在spring容器增加兩個bean, AutoProxyRegistrar和ProxyTransactionManagementConfiguration. AutoProxyRe…

IDEA中常用快捷鍵

整理了一些IDEA開發常用的快捷鍵: 快捷鍵組合實現效果psvm Tab鍵 / main Tab鍵public static void main(String[] args)sout Tab鍵System.out.println()Ctrl X刪除當前行Ctrl D復制當前行AltInsert(或右鍵Generate)生成代碼(如get,set方法,構造函數等)CtrlAltT…

存儲區域

將應用程序加載到內存空間執行時,操作系統負責代碼段、數據段和BSS段的加載,并在內存中為這些段分配空間。 棧段亦由操作系統分配和管理,而不需要程序員顯示地管理;堆段由程序員自己管理,即顯示地申請和釋放空間。 進…

uniapp 輪播圖(含組件封裝,自動注冊全局組件)

效果預覽 組件封裝 src\components\SUI_Swiper.vue 可參考官網配置更多屬性 swipernavigator <script setup lang"ts"> import { ref } from vue defineProps({config: Object, })const activeIndex ref(0) const change: UniHelper.SwiperOnChange (e) &…

WPF面試題入門篇

入門篇[2] 1. 談談什么是WPF&#xff1f; WPF&#xff08;Windows Presentation Foundation&#xff09;是微軟公司開發的一種用于創建Windows應用程序的用戶界面框架。它是.NET Framework的一部分&#xff0c;提供了一種基于XAML&#xff08;可擴展應用程序標記語言&#xf…

【算法技巧】位運算

目錄 1.概述2.位運算技巧2.1.與運算 (&)2.1.1.判斷奇偶性2.1.2.判斷一個數是否是 2 的冪2.1.3.將英文字母轉換為大寫2.1.4.代替取模運算 2.2.或運算 (|)2.2.1.將英文字母轉換為小寫 2.3.異或運算 (^)2.3.1.消除成對相同的數2.3.2.不使用臨時變量來交換兩個數2.3.3.進行英文…

一起學docker系列之八使用 Docker 安裝配置 MySQL

目錄 前言步驟 1&#xff1a;拉取 MySQL 鏡像步驟 2&#xff1a;運行 MySQL 容器步驟 3&#xff1a;檢查容器狀態步驟 4&#xff1a;進入 MySQL 容器步驟 5&#xff1a;配置 MySQL 字符編碼步驟 6&#xff1a;重啟 MySQL 容器步驟 7&#xff1a;測試字符編碼步驟 8&#xff1a;…

防止應用程序截屏(容器式,防止極域電子教室和錄屏軟件錄制)

核心原理、實現目的 1、使用Panel容器將外部窗口嵌入自己寫的程序 2、使用防止截屏的函數來對窗口透明&#xff0c;這可以使本窗口內所有窗口在錄屏軟件上消失 3、解放&#xff0c;抓取&#xff0c;存儲句柄&#xff0c;實現擺脫錄屏&#xff08;極域監控&#xff09; 程序…

用 Addon 增強 Node.js 和 Electron 應用的原生能力

前言 Node.js Addon 是 Node.js 中為 JavaScript 環境提供 C/C 交互能力的機制。其形態十分類似 Java 的 JNI&#xff0c;都是通過提供一套 C/C SDK&#xff0c;用于在 C/C 中創建函數方法、進行數據轉換&#xff0c;以便 JavaScript / Java 等語言進行調用。這樣編寫的代碼通常…

Spring - Mybatis-設計模式總結

Mybatis-設計模式總結 1、Builder模式 2、工廠模式 3、單例模式 4、代理模式 5、組合模式 6、模板方法模式 7、適配器模式 8、裝飾者模式 9、迭代器模式 雖然我們都知道有26個設計模式&#xff0c;但是大多停留在概念層面&#xff0c;真實開發中很少遇到&#xff0c;…

【數據結構】時間和空間復雜度

馬上就要進入到數據結構的學習了 &#xff0c;我們先來了解一下時間和空間復雜度&#xff0c;這也可以判斷我們的算法是否好壞&#xff1b; 如何衡量一個算法的好壞&#xff1f; 就是看它的算法效率 算法效率 算法效率分析分為兩種&#xff1a;第一種是時間效率&#xff0c;第…

C++ Qt QVariant類型使用介紹與代碼演示

作者:令狐掌門 技術交流QQ群:675120140 csdn博客:https://mingshiqiang.blog.csdn.net/ 文章目錄 一、QVariant基本用法二、自定義類型使用QVariant三、其它用法賦值修改和替換值使用`QVariant::setValue()`設置值復制構造函數和賦值操作比較使用`QVariant::swap()`交換值使…

CVE-2023-22515:Atlassian Confluence權限提升漏洞復現 [附POC]

文章目錄 Atlassian Confluence權限提升(CVE-2023-22515)漏洞復現 [附POC]0x01 前言0x02 漏洞描述0x03 影響版本0x04 漏洞環境0x05 漏洞復現1.訪問漏洞環境2.構造POC3.復現 0x06 修復建議 Atlassian Confluence權限提升(CVE-2023-22515)漏洞復現 [附POC] 0x01 前言 免責聲明&…

vue中下載文件后無法打開的坑

今天在項目開發的時候臨時要添加個導出功能我就寫了一份請求加導出得代碼&#xff0c; 代碼&#xff1a; //導出按鈕放開exportDutySummarizing (dataRangeInfo) {const params {departmentName: dataRangeInfo.name,departmentQode: dataRangeInfo.qode}//拼接所需得urlcons…