整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          內網使用自簽名證書 瀏覽也可以“安全”

          內網使用自簽名證書 瀏覽也可以“安全”


          正常情況下,我們瀏覽器是顯示安全小鎖的,需要網站具有域名的所有權,并且有權威的CA機構來頒發證書,保證了用戶通過https協議訪問的安全。顯示不安全的情況,大概有以下四種:

          1.證書過期

          目前各瀏覽器支持的證書有效期都在1年左右,所以很多網站管理人員經常忽略掉證書的有效期,導致證書過期,不能及時續費,這種情況瀏覽器就會在用戶訪問時提示不安全警告。

          2.域名不匹配

          SSL證書一個最主要的作用就是核驗網站身份,所以證書必須與對應的域名綁定,如果訪問的域名與證書中設置的域名不一致,瀏覽器也會發出警告。域名不匹配可能是配置證書時域名設置錯誤,也有可能因為多個網站使用同一張SSL證書導致。

          3.部署了不受信任的證書

          很多小公司為了節省成本,會選擇通過第三方平臺或者自己開發制作自簽名SSL證書。這些自簽名證書雖然也能使網站實現HTTPS協議,但由于不是由瀏覽器信任的CA機構簽發,會被瀏覽器判定為不安全證書進行提示。只有是由受信任根證書所簽發出來的SSL證書,瀏覽器才會認為是安全的,所以部署SSL證書一定要選擇權威、正規的SSL證書服務商。

          4.系統時間錯誤

          系統時間錯誤時很容易被忽視的一個原因,很多瀏覽器會根據系統時間而非自然時間來判斷網站的證書是否已經過期。所以如果系統時間設置錯誤,即便證書還沒有過期,也會被瀏覽器誤判,導致頁面顯示錯誤提示。這種情況也最好解決,只要將系統時間調整為正確時間就可以避免這種問題。

          場景

          本地測試機器兩臺:

          1.centos7.9.2009

          2.win10

          需要在測試機器上部署多套環境,例如discuz3.5,wordpress等等網站時,會出現類似不安全的提示:

          參考

          經過搜索之后發現,大致有三個比較大的部分

          1.使用openssl生成自簽名

          2.對網站進行證書設置

          3.客戶端電腦進行hosts設置,并安裝信任自簽名的證書

          解決

          1.使用openssl生成自簽名

          查看centos7.9中openssl的默認版本

          openssl version
          OpenSSL 1.0.2k  

          這個版本生成證書時不支持生成 證書主題背景的備用名稱。

          所以,我們需要先把openssl版本升級到1.1.1以上。

          升級openssl

          下載:https://www.openssl.org/source/

          wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz

          解壓編譯安裝

          tar -zxvf openssl-1.1.1c.tar.gz 
          cd openssl-1.1.1g
          sudo ./config --prefix=/usr/local/openssl
          sudo make -j 16
          sudo make install
          sudo mv /usr/bin/openssl /usr/bin/openssl.bak
          sudo ln -sf /usr/local/openssl/bin/openssl /usr/bin/openssl

          sudo vim /etc/ld.so.conf 打開文件,把/usr/local/openssl/lib加的文件最后:


          sudo ldconfig -v # 設置生效



          檢查版本,發現是1.1.1g,完成。

          使用以下命令生成證書和私鑰(這里我們生成十年的通配符*.pro.com)

          openssl req -x509 -newkey rsa:4096 -sha256 -days 3650 -nodes   -keyout pro.com.key -out pro.com.crt -subj "/CN=*.pro.com"   -addext "subjectAltName=DNS:pro.com,DNS:*.pro.com,IP:192.168.131.4"

          2.對網站進行證書設置

          3.客戶端電腦進行hosts設置,并安裝信任自簽名的證書

          這里的客戶端使用的windows10,路徑如圖所示

          如果直接無法修改,可以在桌面復制一份文件,改完之后使用管理員權限覆蓋到這里也可以。

          導出證書文件

          這里我們需要把crt文件導出到windows10機器上的桌面上(其他路徑也可以),然后開始導入

          選擇本地計算機,點擊下一步

          選擇受信任的根證書頒發機構

          點擊完成,之后就導入成功了。

          結果展示

          4.大功告成

          參考鏈接:

          https://www.coder.work/article/7758786

          https://www.cnblogs.com/digdeep/p/13615545.html

          https://www.zhihu.com/question/551300750/answer/2681354691


          歡迎大家提出不一樣的觀點,我們一起討論,

          我是辣個男人,一個運維人。

          使沒有域名只有IP地址,你仍然可以實現HTTPS加密。但是,這通常涉及一些額外的步驟和注意事項,因為大多數證書頒發機構(CA)要求有一個域名來驗證證書申請者的身份。不過,有些CA允許你為IP地址獲取證書。以下是實現這一目標的步驟和注意事項:

          1、確保是公網IP

          你必須有一個公網IP地址,SSL證書頒發機構(CA)不會為私有IP地址頒發證書。因為只有公網IP才能被互聯網上的客戶端直接訪問。

          2、管理權限

          確保您對該IP地址有管理權限,能夠進行必要的配置和證書申請操作。因為在申請SSL證書時,你需要證明你對該IP地址擁有管理權限。這通常通過上傳特定文件到服務器或者通過其他驗證方式完成。

          3、選擇證書類型

          大多數CA不直接為IP地址提供SSL/TLS證書。但是,有些CA(如JoySSL)提供IP地址SSL證書。需要找到支持此服務的CA,你需要申請一種特殊類型的SSL證書——IP地址證書。雖然早期只有企業或組織機構才能申請IP SSL證書,但現在個人用戶也可能有條件申請。您可以咨詢可信的SSL證書服務商(如JoySSL),了解當前對于IP地址證書的申請政策和流程。

          直接咨詢獲取IP地址證書https://www.joyssl.com/certificate/select/ip_certificate.html?nid=15

          4、獲取證書

          如果你選擇從CA獲取證書,你需要遵循他們的流程來申請IP地址證書。這通常涉及驗證你對IP地址的控制權,以及支付相關費用。

          5、安裝SSL證書

          驗證通過后,CA會頒發SSL證書給你,包括證書文件和私鑰。將獲得的SSL證書安裝到你的Web服務器上,并正確配置SSL/TLS設置。在你的Web服務器上安裝證書和私鑰。這通常涉及到編輯服務器的SSL/TLS配置文件,并指定證書和私鑰的路徑。配置服務器以監聽IP地址上的HTTPS端口(默認為443)。

          6、重定向HTTP請求

          如果你的服務器同時監聽HTTP和HTTPS端口,確保所有HTTP請求都被重定向到HTTPS。這可以通過服務器配置中的重定向規則來實現。

          7、測試HTTPS連接

          配置完成后,通過“https://[你的IP地址]”訪問,確認HTTPS加密是否生效,以及瀏覽器是否顯示安全連接標志。確保沒有錯誤或警告,并且內容正確加載。

          8、維護和更新

          定期檢查證書的有效期,并在需要時續訂或更新證書。

          監控SSL/TLS協議和加密算法的發展,并根據需要更新服務器配置。

          請注意,直接使用公網IP來部署HTTPS的場景相對較少,所以市面上沒有相應的免費IP地址證書提供,不過因此也順帶使IP地址證書對加密強度和安全性的提高,付費IP地址證書的安全性和穩定性是免費證書所無法比擬的。

          在現代網絡應用開發中,IP 歸屬地查詢功能為用戶提供了極大的便利。本文將向你展示如何將 APISpace 提供的 IP歸屬地查詢 API 快速集成到你的項目中,并在前端展示查詢結果。


          前端UI代碼

          首先,我們需要創建一個用戶友好的界面,讓用戶可以輸入 IP 地址并查看查詢結果。以下是一個簡單的 HTML 頁面示例:

          <!DOCTYPE html>
          <html lang="en">
          <head>
              <meta charset="UTF-8">
              <title>IP歸屬地查詢</title>
              <style>
                  body { font-family: Arial, sans-serif; }
                  .container { max-width: 300px; margin: auto; }
                  input, button { width: 100%; padding: 10px; margin-bottom: 10px; }
                  .result { margin-top: 20px; }
              </style>
          </head>
          <body>
              <div class="container">
                  <h2>IP歸屬地查詢</h2>
                  <input type="text" id="ipInput" placeholder="輸入IP地址" />
                  <button onclick="queryIP()">查詢</button>
                  <div id="result" class="result"></div>
              </div>
          
              <script src="script.js"></script> <!-- 引入JavaScript文件 -->
          </body>
          </html>


          接口請求與結果處理代碼

          接下來,我們將編寫 JavaScript 代碼來處理 API 請求和結果展示,這里我使用的接口是 APISpace 的 IP歸屬地查詢API。請將以下代碼保存為script.js文件,并確保它與HTML文件位于同一目錄下。

          https://www.apispace.com/eolink/api/ipguishu/introduction?utm_source=tth&utm_content=deep&utm_term=ipguishudi

          // script.js
          function queryIP() {
              var ip=document.getElementById('ipInput').value;
              if (ip) {
                  // 發送API請求
                  fetch('https://eolink.o.apispace.com/ipguishu/ip/geo/v1/district', {
                      method: 'GET',
                      headers: {
                          'X-APISpace-Token': '你的API密鑰' // 替換為你的API密鑰,登錄APISpace即可獲取
                      },
                      params: {
                          ip: ip
                      }
                  })
                  .then(response=> {
                      if (!response.ok) {
                          throw new Error('Network response was not ok');
                      }
                      return response.json();
                  })
                  .then(data=> {
                      if (data.code==="Success") {
                          // 顯示查詢結果
                          displayResult(data.data);
                      } else {
                          // 顯示錯誤信息
                          alert('查詢失敗: ' + data.msg);
                      }
                  })
                  .catch(error=> {
                      console.error('There has been a problem with your fetch operation:', error);
                      alert('查詢失敗: ' + error.message);
                  });
              } else {
                  alert('請輸入IP地址!');
              }
          }
          
          function displayResult(data) {
              var resultDiv=document.getElementById('result');
              resultDiv.innerHTML=`
                  <p>大洲: ${data.continent}</p>
                  <p>國家: ${data.country}</p>
                  <p>省份: ${data.prov}</p>
                  <p>城市: ${data.city}</p>
                  <p>區縣: ${data.district}</p>
                  <p>郵政編碼: ${data.zipcode}</p>
                  <p>時區: ${data.timezone}</p>
                  <p>查詢精度: ${data.accuracy}</p>
                  <p>所屬機構: ${data.owner}</p>
                  <p>運營商: ${data.isp}</p>
                  <p>采集方式: ${data.source}</p>
                  <p>國家編碼: ${data.areacode}</p>
                  <p>行政編碼: ${data.adcode}</p>
                  <p>自治域編碼: ${data.asnumber}</p>
                  <p>維度: ${data.lat}</p>
                  <p>經度: ${data.lng}</p>
                  <p>定位半徑: ${data.radius}</p>
              `;
          }

          請確保在實際部署時替換'你的API密鑰'為你從 APISpace 獲取的實際 API 密鑰。


          測試和部署

          在本地環境中打開HTML文件,輸入IP地址,點擊查詢按鈕,你將看到查詢結果展示在頁面上。測試無誤后,你可以將這個應用部署到任何靜態網頁托管服務上,如GitHub Pages。


          最后我們還上線了一個的非常好用的插件,簡直是工作提效大幫手 —— Buffup.AI。使用 Buffup Chrome 擴展程序,您可以輕松地將 ChatGPT 和其他 AI 功能集成到您的日常任務中-無論是搜索Web、發送電子郵件、增強寫作還是翻譯文本。感興趣的同學快去 Chrome 插件商店搜索添加使用起來吧~

          https://chromewebstore.google.com/detail/buffup-the-ai-copilot-of/nldfkphmngahpfflbfihipoahbbgbhca?utm_source=tth&utm_content=deep&utm_term=ipguishudi


          結語

          通過以上步驟,你已經成功地將IP歸屬地查詢API集成到你的項目中,并在前端展示了查詢結果。這個簡單的集成過程可以幫助你快速地為你的應用添加地理位置功能。記得在實際部署時,將API密鑰保密,避免泄露。


          主站蜘蛛池模板: 日韩精品一区二区三区色欲AV| 日本在线视频一区二区三区| 国产成人一区二区三区高清| 精品久久国产一区二区三区香蕉| 亚洲一区无码精品色| 日本午夜精品一区二区三区电影| 免费观看日本污污ww网站一区| 台湾无码一区二区| AV怡红院一区二区三区| 丰满爆乳一区二区三区| 国产在线一区视频| 亚洲国产综合精品一区在线播放| 国产自产在线视频一区| 国产精品一区三区| 91久久精品一区二区| 久久99国产精品一区二区| 国产成人精品久久一区二区三区| 夜夜嗨AV一区二区三区| 中文字幕日韩人妻不卡一区| 人妻夜夜爽天天爽爽一区| 精品国产一区二区三区久久狼| 国产丝袜美女一区二区三区| 亚洲午夜在线一区| 日韩社区一区二区三区| 日韩高清一区二区三区不卡| 成人日韩熟女高清视频一区| 亚洲中文字幕久久久一区| 色狠狠色狠狠综合一区| 色精品一区二区三区| 色国产精品一区在线观看| 日本高清无卡码一区二区久久 | 一区二区中文字幕| 国产精品一区二区无线| 精品无码AV一区二区三区不卡 | 激情无码亚洲一区二区三区| AV天堂午夜精品一区二区三区| 精品成人av一区二区三区| 亚洲AV无码国产一区二区三区 | 精品福利一区3d动漫| 日韩精品无码久久一区二区三| 亚洲一区二区免费视频|