nginx設置https訪問

一:安裝依賴

Ubuntu:

apt-get install openssl-devel

apt-get install libssl-dev

centos:

apt-get install openssl-devel

apt-get install openssl

二:編譯nginx

查看 nginx 是否安裝 http_ssl_module 模塊

                           $ /nginx/nginx/sbin/nginx -V

如果出現 configure arguments: --with-http_ssl_module, 則已安裝(下面的步驟可以跳過,進入 nginx.conf 配置)

下載nginx安裝包

        # 下載安裝包到 opt 目錄
        $ cd /opt
        $ wget http://nginx.org/download/nginx-1.14.1.tar.gz

解壓安裝包

        $ tar -zxvf nginx-1.14.1.tar.gz

配置ssl模塊

        $ cd nginx-1.14.1
        $ ./configure --prefix=/opt/nginx --with-http_ssl_module

使用 make 命令編譯(使用make install會重新安裝nginx),此時當前目錄會出現 objs 文件夾。用新的 nginx 文件覆蓋當前的 nginx 文件。

        $ cp ./objs/nginx /opt/nginx/sbin/

再次查看安裝的模塊(configure arguments: --with-http_ssl_module說明ssl模塊已安裝)

        $ /usr/local/nginx/sbin/nginx -V
        nginx version: nginx/1.14.1
        ...
        configure arguments: --with-http_ssl_module

三:生成證書

進入你想創建證書和私鑰的目錄

cd /usr/local/nginx

創建服務器私鑰,命令會讓你輸入一個口令(記住這個密碼,以後每次重啓nginx需要輸入密碼,建議接下來的密碼都輸入一樣的,方便記憶)

openssl genrsa -des3 -out server.key 1024

創建簽名請求的證書(CSR)

openssl req -new -key server.key -out server.csr

需要設置相關的信息

最後標記證書使用上述私鑰和CSR

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

四:配置nginx

打開nginx.conf配置

添加ssl配置

server {

listen 443 ssl;

server_name work.com;

index index.html;

ssl on;

ssl_certificate /usr/local/nginx /server.crt;

ssl_certificate_key /usr/local/nginx /server.key;

ssl_session_timeout 5m;

location / {

root /usr/local/web/;

add_header 'Cache-Control' 'no-store';

}

}

五:測試

https://127.0.0.1:443

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章