CentOS服務器下安裝配置SSL


https是一個安全的訪問方式,數據在傳輸過程中是加密的,https基於SSL。

一、安裝apache和ssl模塊

1、安裝apache

#yum install httpd

2、安裝ssl模塊

#yum install mod_ssl

重啟apache:

#service httpd restart

安裝完mod_ssl會創建一個默認的SSL證書,路徑位於/etc/pki/tls,此時可以立即通過https訪問服務器了:

https://X.X.X.X/

如果不使用默認的證書,也可以使用openssl手動創建證書。

二、使用openssl手動創建證書
1、安裝openssl

#yum install openssl

2、生成服務器私鑰

#cd /etc/pki/tls
#openssl genrsa -out server.key 1024

注意:server.key是私鑰。

3、用私鑰server.key文件生成證書請求文件csr

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

注:server.csr是證書請求文件。

此步驟需要輸入一些證書信息:
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:shanghai
Locality Name (eg, city) [Default City]:shanghai
Organization Name (eg, company) [Default Company Ltd]:ccc
Organizational Unit Name (eg, section) []:bbb
Common Name (eg, your name or your server's hostname) []:www.test.com
Email Address []:a@a.com

輸入國家、省份、城市、公司、部門、姓名或服務器名、電子郵箱,隨后會要求輸入一個challengepassword(密碼),無需輸入,后面一律直接回車即可。

4、生成數字簽名crt文件(證書文件)

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

用私鑰簽名證書請求文件,證書的申請機構和頒發機構都是自己。

5、編輯apache的ssl配置文件

vim/etc/httpd/conf.d/ssl.conf

/etc/httpd/conf.d/ssl.conf文件配置具體如下:

<VirtualHost _default_:443>

DocumentRoot "/var/www/https"      //設置網頁存放目錄

ServerName *:443                  //服務器的端口

DirectoryIndex index.html index.html.var  //首頁名稱

SSLEngine on

SSLCertificateFile /etc/pki/tls/server.crt    //證書

SSLCertificateKeyFile /etc/pki/tls/server.key  //私鑰

</VirtualHost> 
6、重啟apache
#servicehttpd restart
訪問https://ip/,就能看到證書信息了。

由於不是第三方根證書頒發機構頒發的證書,而是自己頒發的證書,所以瀏覽器會提示安全證書不受信任。

!!!注意:首頁index.html 的文件權限為755,否則將會出現如上提示:

Forbidden

Youdon't have permission to access /main.html on this server.

解決方法:修改首頁index.html讀寫權限。

#Chmod755  index.html

關於openssl指令的補充說明:

#openssl [操作]  -out  filename  [bits]

參數說明:

[操作]  主要的操作有如下兩個:

      genrsa,建立RSA加密的Public key

      req,建立憑證要求文件或者是憑證文件

-out ,后面加上輸出的文件名,就是那把key name

bits,用在genrsa加密的公鑰的長度

-x509,X.509,CertificateData  Management.  一種驗證的管理方式

例:建立一支長度為1024bits的Public Key,注意文件名。

#openssl genrsa  -out  Server.key 1024

生成證書請求命令

#Openssl req  -new  -key file.key  -out  file.csr -config  /path/to/openssl.cnf

-config:指定openssl的配置文件路徑,不指定時,默認會訪問Unix格式的默認路徑:/usr/local/ssl/openssl.cnf。

例:#openssl req -new -key server.key -outserver.csr


免責聲明!

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



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