1、Nginx的安裝nginx
(1)因爲nginx的一些模塊依賴一些lib庫,因此在安裝nginx以前,必須先安裝這些lib庫,這些依賴庫主要有g++、gcc、openssl-devel、pcre-devel和zlib-devel 因此執行以下命令安裝:c++
$ yum install gcc-c++
$ yum install pcre pcre-devel
$ yum install zlib zlib-devel
$ yum install openssl openssl--devel session
(2)安裝以前,最好檢查一下是否已經安裝有nginxdom
$ find -name nginx ui
若是系統已經安裝了nginx,那麼就先卸載spa
$ yum remove nginx code
(3)首先進入/usr/local目錄server
$ cd /usr/local blog
從官網下載最新版的nginx進程
$ wget http://nginx.org/download/nginx-1.8.1.tar.gz
(4)解壓nginx壓縮包
$ tar -zxvf nginx-1.8.1.tar.gz
會產生一個nginx-1.8.1 目錄,這時進入nginx-1.8.1目錄
$ cd nginx-1.8.1
(5)接下來安裝,使用--prefix參數指定nginx安裝的目錄,make、make install安裝
$ ./configure $默認安裝在/usr/local/nginx
$ make
$ make install
(6)若是沒有報錯,順利完成後,最好看一下nginx的安裝目錄
$ whereis nginx
安裝完畢後,進入安裝後目錄(/usr/local/nginx)即可以啓動或中止它了。
2、Nginx的HTTPS配置
1.修改nginx.conf的相關位置
server {
listen 80;
listen 8011;
listen 10443 ssl;
server_name localhost;
#ssl on;
ssl_certificate /root/ssl/server.cer;
ssl_certificate_key /root/ssl/private.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
# autoindex on;
# autoindex_exact_size_off;
....
2.執行/nginx -t,若是出現「nginx: [emerg] unknown directive "ssl" in ...」錯誤的處理:
(1)到解壓的nginx目錄下
$ cd nginx-1.8.1
$ ./configure --with-http_ssl_module
若是出現:./configure: error: SSL modules require the OpenSSL library.
須要安裝:
$ yum -y install openssl openssl-devel
再執行:
$ ./configure
從新執行:
$ ./configure --with-http_ssl_module
$ make --注:切記不能make install 會覆蓋。
(2)備份原來nginx
$ cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
$ cp objs/nginx /usr/local/nginx/sbin/nginx
(3) 重啓nginx
$ /usr/local/nginx/sbin/nginx -s reload
注:但有時候執行nginx -s reload 不是很管用,須要kill -9 nginx進程,再從新啓動。
(記一次在配置nginx SSL時踩過的坑,執行nginx -s reload後,telnet 127.0.0.1 443 發現端口怎 麼也不通,就這樣折騰了很久,最後把nginx的進程kill了,重啓啓動,才OK了)
|
2.openssl s_client -tls1_1 -connect you.domain.com
:443 能夠查看SSL對TLS版本的支持
若是出現上圖,表示支持。
表示不支持。