| 結合高機能系統家具與室內設計,專業團隊免費丈量規劃 為您打造夢想居家空間!  | 提供各大品牌冷氣維修,各型號不冷 不開機,各式問題排除,來電速洽  | 
[php] 利用Openssl實作ssl網頁加密  | 
|   房東:分析師 發表時間:2015-12-04  | [檢舉] | 
|  
 一般的網頁伺服器架設起來之後 往往都是沒有作加密的動作 在網際網路的傳輸上都是以明碼做傳輸 以下為利用wireshark擷取封包實例 
 
 此為80port且為加密的網頁傳輸情形 可以看到完全都是明碼 
 
 而此為將網頁的通訊port改為443而未做ssl加密傳輸情形 可以看到只有port轉向443輸出,仍然是明碼傳輸 
 
 而此為利用openssl製做加密憑證來進行ssl加密 可以看到傳輸都是利用編碼加密過的方式來做加密 在此可以看出來是得實做ssl加密才會稍微安全一點 單單轉換傳輸的port到443不會有加密的效果 
 而實做的方式如下 
 
 至appserv官方網站下載appserv 
 
 安裝過程就不贅述,完成後可看到此畫面 
 
 開啟C:\\AppServ\\Apache2.2\\conf內的httpd.conf 
 
 將LoadModule ssl_module modules/mod_ssl.so這行前面的#註解拿掉並存檔 
 
 接著可在C:\\AppServ\\Apache2.2\\bin資料夾底下看見openssl.exe 
 
 開啟後輸入genrsa -out server.key 1024產生rsa私鑰 
 
 輸入req -new -out server.csr -key server.key -config ../conf/openssl.cnf產生簽署申請 Country Name為國籍鍵入TW State or Province Name為省份鍵入Taiwan Locality Name為所在地 Organization Name為組織名稱 Organizational Unit Name為組織內單位 Common Name為domain name Email Address為管理者的電子信箱 剩餘兩項可不填入 
   鍵入genrsa -out ca.key 1024產生ca的rsa私鑰 
 
 鍵入req -new -x509 -days 365 -key ca.key -out ca.crt -config ../conf/openssl.cnf利用ca私鑰產生簽署憑證 下面的參數同上面設定 
 
 接著於C:\\AppServ\\Apache2.2\\bin資料夾內新建demoCA資料夾 
 
 接著於demoCA資料夾內新增newcerts資料夾與index.txt跟serial檔案 並利用記事本開啟serial後鍵入01後存檔 
 
 利用ca替網站簽署認證 鍵入ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config ../conf/openssl.cnf 
 
 接著將C:\\AppServ\\Apache2.2\\bin底下的server.crt與server.key兩個檔案 複製至C:\\AppServ\\Apache2.2\\conf資料夾底下 
 
 接著於httpd.conf內新增此兩行 #Virtual host with SSL Include C:\\Appserv\\Apache2.2\\conf\\extra\\http-vhost-ssl.conf 並存檔 並於C:\\Appserv\\Apache2.2\\conf\\extra\\內新增http-vhost-ssl.conf檔案 
 輸入以下內容: 
 ## SSL Global Context 
 # Secure Shell ver. 
 然後存檔 
 接著重新啟動Apache伺服器 
 
 若是出現此檔案遺失 
 
 則開啟C:\\Windows\\php.ini 將extension=php_exif.dll放置於extension=php_mbstring.dll之後即可解決 
 
 接著於網頁鍵入127.0.0.1觀看網頁即可看到此畫面 點擊連結即可連至https頁面 
 
 由於憑證是我們自己產生的,沒有經過認證 所以是不可靠的,但是我們只是需要他的SSL加密 
 
 可於網址列的鎖點左鍵看到我們剛剛產生的憑證資訊,這樣就代表成功\了 
 在實做的過程中我發現電腦當中443port被佔用著 利用netstat -ano指令可以看到是哪個pid去佔著這個port 再利用process explorer來觀看是哪個程式佔用著 
 檔案為smss.exe 在網路上搜尋此檔案可能為病毒 如果在多個資料夾底下有搜尋到此檔案 那可能就是中毒了 但是如果檔案路徑在C:\\Windows\\system32資料夾底下 那應該是正常的檔案 但是他一直佔著服務該怎麼辦? 
 
 將此服務停止即可釋放出443port 
 同樣會佔用443port的常用軟體還有vm workstation及skype這兩個 皆可在netstat -ano這指令當中看到是哪個程式佔用 再去關掉即可 
 http://joe01032002.pixnet.net/blog/post/92665237 
  | 
廣利不動產-新板特區指名度最高、值得您信賴的好房仲 您的托付,廣利用心為您服務 廣利不動產-板橋在地生根最實在--新板特區指名度最高、值得您信賴的好房仲 完整房訊,房屋、店面熱門精選物件,廣利不動產 優質仲介,房屋租賃、買賣資訊透明,交易真安心!  | 
| 1 樓住戶:阿凱 發表時間:2015-12-04  | [檢舉] | |
| 
 Certificate Authority(CA) 憑證簡介 瞭解 CA 憑證的概念後,現在就先拿 Apache Httpd Server 來作網站的測試。免錢的 OpenSSL 就是一個好的工具,而 AppServ 套件本身即有 Apache、MySQL、PHP、phpMyAdmin 與 OpenSSL 工具,是最方便的軟體了。 一、準備檔案: 把 LoadModule ssl_module modules/mod_ssl.so 的#註解拿掉 三、在 C:\AppServ\Apache2.2\bin資料夾底下看見openssl.exe,滑鼠double click執行它,用它來作憑證 
 Country Name為國籍鍵入TW Step 3 & 4 是模擬 CA 第三方認證單位  
 
 
 
 http://mistech.pixnet.net/blog/post/80886829-appserv-%2B-openssl-setup-ssl%28https%29-in-win32--%E6%86%91%E8%AD%89%E5%BB%BA%E7%AB%8B  |