centos 配置nginx TLS 1.2/SSL 服務器


環境清單

系統:centos7.6 64位 (其它版本未驗證)

openssl-1.1.0k

zlib-1.2.11

pcre-8.41

nginx-1.13.5

安裝gcc c++編譯環境

#yum -y install gcc gcc-c++

安裝openssl

openssl 1.1.1編譯有問題,所以用1.1.0k

#cd /tmp

#wget https://www.openssl.org/source/old/1.1.0/openssl-1.1.0k.tar.gz

#tar xf openssl-1.1.0k.tar.gz

tar命令用xzf解壓出來的有問題,去掉z參數,用xf

#cd openssl-1.1.0k

#./config --prefix=/usr/local/openssl-1.1.0k --openssldir=/usr/local/openssl-1.1.0k --libdir=lib shared -Wl,-R,'$(LIBRPATH)' -Wl,--enable-new-dtags enable-ec_nistp_64_gcc_128 enable-tls1_2

#make

#make install

 

修改系統ssl配置

#mv /usr/bin/openssl /usr/bin/openssl.old

#mv /usr/include/openssl /usr/include/openssl.old

#ln -s /usr/local/openssl-1.1.0k/ /usr/bin/openssl

#ln -s /usr/local/openssl-1.1.0k/include/openssl/ /usr/include/openssl

 

安裝zlib

http://www.zlib.net/ 下載zlib-1.2.11.tar.gz上傳到 /tmp

#cd /tmp

#tar xf zlib-1.2.11.tar.gz

#cd /tmp/zlib-1.2.11

#./configure --prefix=/usr/local/zlib-1.2.11

#make

#make install

#echo "/usr/local/zlib-1.2.11/lib" >> /etc/ld.so.conf

# ldconfig -v

安裝nginx

#cd /usr/local

#wget https://ftp.pcre.org/pub/pcre/pcre-8.41.tar.gz

#tar xvf pcre-8.41.tar.gz

#cd pcre-8.41

#./configure

#make

#make install

#cd /tmp

#wget http://nginx.org/download/nginx-1.13.5.tar.gz

#tar xvf nginx-1.13.5.tar.gz

#cd nginx-1.13.5

#./configure --prefix=/usr/local/nginx1.13.5 --with-http_ssl_module --with-pcre=/usr/local/pcre-8.41 --with-openssl=../openssl-1.1.0k --with-zlib=../zlib-1.2.11 --with-stream

 

注意:

1、上面參數里的 ../openssl-1.1.0是openssl安裝包路徑,完整路徑是:/tmp/openssl-1.1.0,不是安裝好的/usr/local/openssl-1.1.0

2、上面參數里的 ../zlib-1.2.11是zlib安裝包路徑,完整路徑是:/tmp/ zlib-1.2.1,不是安裝好的/usr/local/ zlib-1.2.1

#make

#make install

ssl證書

以阿里雲為例,購買阿里雲ssl證書,可選免費單域名,配置好后下載ngxinx服務器證書。

將下載的證書解壓,會有兩個文件:.key和.pem文件,拷貝兩個文件到 /etc/pki/tls/certs

Nginx配置

編輯nginx.conf文件,找到server塊,修改如下,紅字部分為添加配置:

server {

         listen       80;

         listen      443 ;

         server_name  testssl.xxx.cn;

         ssl_certificate      /etc/pki/tls/certs/5795782_testssl.xxx.cn.pem;

         ssl_certificate_key  /etc/pki/tls/certs/5795782_testssl.xxx.cn.key;

         ssl_session_timeout  5m;

         ssl_protocols TLSv1.2;

         ssl_ciphers  HIGH:!aNULL:!MD5;

         ssl_prefer_server_ciphers   on;

         ssl on;

 

        #charset koi8-r;

 

        #access_log  logs/host.access.log  main;

……

驗證

瀏覽器調試模式

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM