裝好 VestaCP ,朋友就幫我測了 SSL 的狀況,結果在 GlobalSign 測試只有 B ,研究了一下發現這被稱為 Weak DH 。網路上就有個叫做 weakdh.org 的網站協助使用這解決這個問題,我也找到了解決方法,完成後分數可以到 A+ 唷XDD。
解決 Weak DH
因為預設的 Diffie-Hellman (這是什麼我也不知道XDDDDD)加密方法只有 1024-bits,自己產生一組大於2048-bits的key就OK了~。
在指令前建議先切到 root 再操作,不然可能會遇到權限不足無法寫入的問題,這指令可要花不少時間:
openssl dhparam -out /etc/nginx/dhparams.pem 4096
完成後需要修改 nginx 的設定(/etc/nginx/nginx.conf),找到字串 ssl_ 的部份,在 ssl_ciphers 後面加上:
ssl_dhparam /etc/nginx/dhparams.pem;<br /> add_header Strict-Transport-Security "max-age=31536000; includeSubdomains";
存檔後,重新載入 nginx 設定:
nginx -s reload
可以先去 weakdh.org 測試一下:
再去 GlobalSign 測試看看,應該就 A+ 啦~XD