域名SSL認證 (Nginx服務器 linux)

一:開始Nginx的SSL模塊

  • 1.1 Nginx若是未開啓SSL模塊,配置Https時提示錯誤
nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:37

緣由也很簡單,nginx缺乏http_ssl_module模塊,編譯安裝的時候帶上--with-http_ssl_module配置就好了,可是如今的狀況是個人nginx已經安裝過了,怎麼添加模塊,其實也很簡單,往下看: 作個說明:個人nginx的安裝目錄是/usr/local/nginx這個目錄,個人源碼包在/usr/local/src/nginx-1.6.2目錄html


  • 1.2 Nginx開啓SSL模塊

切換到源碼包:nginx

cd /usr/local/src/nginx-1.11.3

查看nginx原有的模塊安全

/usr/local/nginx/sbin/nginx -V

在configure arguments:後面顯示的原有的configure參數以下:session

--prefix=/usr/local/nginx --with-http_stub_status_module

那麼咱們的新配置信息就應該這樣寫:性能

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

運行上面的命令便可,等配置完ui

配置完成後,運行命令code

make

這裏不要進行make install,不然就是覆蓋安裝server

而後備份原有已安裝好的nginxhtm

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

而後將剛剛編譯好的nginx覆蓋掉原有的nginx(這個時候nginx要中止狀態)ip

cp ./objs/nginx /usr/local/nginx/sbin/

而後啓動nginx,仍能夠經過命令查看是否已經加入成功

/usr/local/nginx/sbin/nginx -V 

Nginx 配置Http和Https共存

server {
            listen 80 default backlog=2048;
            listen 443 ssl;
            server_name wosign.com;
            root /var/www/html;
  
            ssl_certificate /usr/local/Tengine/sslcrt/ wosign.com.crt;
            ssl_certificate_key /usr/local/Tengine/sslcrt/ wosign.com .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;
相關文章
相關標籤/搜索