隨著互聯(lián)網(wǎng)的發(fā)展,HTTPS協(xié)議的使用已經(jīng)成為了一項非常重要的網(wǎng)絡(luò)安全措施。而SSL證書則是HTTPS協(xié)議必不可少的部分。對于許多網(wǎng)站管理者來說,PHPStudy是一款非常方便易用的PHP集成環(huán)境軟件,然而,如何在PHPStudy上配置SSL證書卻讓很多人感到望而卻步。因此,本文將會詳細介紹如何在PHPStudy上配置SSL證書,希望能對需要的讀者有所幫助。
一、生成SSL證書
1.打開openssl工具,輸入以下命令生成根證書文件serverca.crt和私鑰文件serverca.key。
openssl req -new -x509 -days 3650 -keyout serverca.key -out serverca.crt
其中,-days選項代表證書的有效期,默認為30天;-keyout選項指定私鑰文件的存放位置;-out選項指定證書文件的存放位置。
2.接著輸入以下命令生成服務(wù)器證書請求文件server.csr和私鑰文件server.key。
openssl req -newkey rsa:2048 -days 3650 -keyout server.key -out server.csr
其中,-newkey選項表示同時生成私鑰文件和證書請求文件;-keyout選項指定私鑰文件的存放位置;-out選項指定證書請求文件的存放位置。
3.再,輸入以下命令生成服務(wù)器證書文件server.crt。
openssl x509 -req -in server.csr -CA serverca.crt -CAkey serverca.key -CAcreateserial -days 3650 -out server.crt
其中,-req選項代表使用請求文件生成證書文件;-in選項指定請求文件的位置;-CA和-CAkey選項分別指定根證書文件和私鑰文件的位置;-CAcreateserial選項表示生成證書序列號文件;-days選項表示證書的有效期;-out選項指定證書文件的存放位置。
二、配置PHPStudy
1.將生成的根證書文件serverca.crt和服務(wù)器證書文件server.crt復(fù)制到PHPStudy的安裝目錄下的nginx/conf/ssl文件夾內(nèi)。
2.打開nginx/conf/nginx.conf文件,并添加以下代碼。
server {
listen 443 ssl;
server_name localhost;
ssl_certificate ssl/server.crt;
ssl_certificate_key ssl/server.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
}
其中,listen指定端口為443;ssl_certificate指定證書文件的位置;ssl_certificate_key指定私鑰文件的位置;ssl_session_cache和ssl_session_timeout分別指定緩存的大小和超時時間;ssl_ciphers指定SSL加密算法;ssl_prefer_server_ciphers表示使用服務(wù)器設(shè)置的加密算法。
3.重啟PHPStudy的Nginx服務(wù)。
至此,PHPStudy的SSL證書配置完成??梢栽跒g覽器中輸入https://localhost訪問測試了。
通過本文的介紹,我們了解到如何通過openssl工具生成SSL證書,并在PHPStudy中進行配置。了解SSL證書生成和配置的方法可以幫助我們更好地進行網(wǎng)站的安全維護,同時提高網(wǎng)站的用戶體驗和信譽度。
互億無線始終致力于為您提供全面的SSL證書解決方案,確保您網(wǎng)站的安全性和信任度。我們承諾為您提供多種類型的SSL證書,涵蓋DV(域名驗證)、OV(組織驗證)以及EV(擴展驗證)證書,滿足您多重的安全需求。我們?yōu)槟尸F(xiàn)多樣化的證書類型,涵蓋單域名、多域名和通配符證書。以適應(yīng)您的網(wǎng)站架構(gòu)。我們與全球知名的證書品牌,包括Globalsign、DigiCert、GeoTrust、TRUST Asia、GoDaddy等建立了緊密合作關(guān)系,確保您獲得高品質(zhì)的SSL證書。
![]() |
一站式SSL證書申請中心 |
![]() |
SSL證書快速簽發(fā)體驗 |
![]() |
為您呈現(xiàn)高性價比的SSL證書價格方案 |
![]() |
提供完備的SSL證書服務(wù) |
問:linux生成SSL證書的方法?
答:1、生成加密自簽名(SSL)證書使用命令:opensslreq-new-x509-newkeyrsa:2048-keyout/data/server.key-out/data/server.crt注:執(zhí)行命令后,需要輸入密碼,然后依次輸入國家、地區(qū)、城市、組織、組織單位、Commonname和Email。其中,Commonname,可以寫自己的名字或域名,如果要支持https,Commonname應(yīng)該與域名保持一致,否則會引起瀏覽器警告。2、生成不加密的簽名(SSL)證書1)生成私鑰使用openssl工具生成RSA私鑰opensslgenrsa-des3-out/data/server.key2048注:生成rsa私鑰,des3算法,2048位強度,server.key是一個密鑰文件名,生成一個私鑰,要求您輸入這個key文件的密碼至少提供四個密碼,因為您必須在生成時輸入密碼。您可以在輸入后刪除它(因為它將來會被nginx使用。每次reloadnginx配置,您都需要驗證此PAM密碼)。2)刪除密碼mv/data/server.key/data/server.key.org(或cp/data/server.key/data/server.key.org)opensslrsa-in/data/server.key.org-out/data/server.key3)生成CSR(證書簽名請求)生成私鑰后,根據(jù)這個key文件生成證書請求csr文件使用OpenSSL實現(xiàn)自簽名,具體操作如下:opensslreq-new-key/data/server.key-out/data/server.csr注:執(zhí)行命令后,需要輸入密碼,然后依次輸入國家、地區(qū)、城市、組織、組織單位、Commonname和Email。其中,Commonname,可以寫自己的名字或域名,如果要支持https,Commonname應(yīng)該與域名保持一致,否則會引起瀏覽器警告。4)生成自簽名crt證書最后,根據(jù)key和csr生成crt證書文件openslx509-req-days3650-in/data/server.csr-signkey/data/server.key-out/data/server.crt
問:SSL證書驗證過程有什么?
答:我們知道證書鏈的概念,所以,通過服務(wù)器返回網(wǎng)站證書路徑,我們通過終端證書-中間證書-根證書逐步驗證,如果在信任證書列表中找到根證書可以簽署證書鏈上的證書,證書是信任的。這很容易實現(xiàn),因為JavaJDK幫助我們實現(xiàn)了必要的驗證邏輯,并且對客戶端是透明的,使用默認的TrustManager:SSLContextcontext=SSLContext.getInstance("TLS");///Trustmanager傳null將使用系統(tǒng)默認的“SunX509”TrustManagercontext.init(null,null,null);URLurl=newURL("https://www.baidu.com");HttpsURLConnectionconnection=(HttpsURLConnection)url.openConnection();connection.setSSLSocketFactory(context.getSocketFactory());InputStreamis=connection.getInputStream();當SSLContextinit方法的第二個參數(shù)傳輸?shù)絥ull時,Trustmanager將使用默認的Sunx509實現(xiàn),代碼如下:TrustManagerFactorymgr=TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm())mgr.init((KeyStore)null);TrustManager[]var2=var4.getTrustMan·agers();當然,功能也可以在TrustManager上擴展,但除非場景極其特殊,否則一般不建議做。上述驗證方法在Android系統(tǒng)中基本相似。在啟動REST接口訪問時,可以根據(jù)場景使用不同的驗證方法。那么,當網(wǎng)站嵌入網(wǎng)站時,如何保證訪問的安全呢?以下是網(wǎng)站的一些方法:當webview加載頁面時,將對證書進行驗證。當驗證錯誤時,將回調(diào)該方法。Ssleror對象將傳遞證書。您可以在這里進行自定義驗證。自定義驗證邏輯可以對傳入的證書進行任何自定義驗證。同時,通過以上分析,可以看出,要求的安全取決于客戶端和服務(wù)器之間的許多合同。同時,客戶端對證書的驗證是整個保證的基礎(chǔ)。v
問:如何創(chuàng)建自簽名SSL證書?
答:自簽名SSL證書是指用戶使用工具生成,而不是值得信賴的CA機構(gòu)頒發(fā)的證書,通常只用于測試。第一步:生成私鑰使用OpenSSL工具生成RSA私鑰。$opensslgenrsa-des3-outserver.key2048注:生成rsa私鑰,des3算法,2048位強度,server.key是密鑰文件名。第二步:生成CSR(證書簽名請求)生成私鑰后,可以創(chuàng)建csr文件。您可以使用OpenSSL工具實現(xiàn)自簽名,操作以下命令并填寫相關(guān)信息。$opensslreq-new-keyserver.key-outserver.csr在命令行中,根據(jù)提示信息輸入國家、地區(qū)、城市、組織、組織單位、Comonname和Email。其中,Commonname,您可以寫下您的名稱或域名,如果您想支持https,Commoname應(yīng)該與域名保持一致,否則會引起瀏覽器警告。第三步:生成自簽證證書$openslx509-req-days365-inserver.csr-signkeyserver.key-outserver.crt這樣,您就可以創(chuàng)建一個簡單的自簽名SSL證書。需要注意的是,該證書不是由值得信賴的CA機構(gòu)頒發(fā)的。當我們通過瀏覽器訪問時,我們會提醒證書的發(fā)行人未知,存在很大的安全風險,因此不建議使用。
驗證碼已發(fā)送到您的手機,請查收!
輸入驗證碼后,點擊“開通體驗賬戶”按鈕可立即開通體驗賬戶。