国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

不制作證書是否能加密SQLSERVER與客戶端之間傳輸的數據?

2024-07-21 02:50:16
字體:
來源:轉載
供稿:網友
不制作證書是否能加密SQLSERVER與客戶端之間傳輸的數據?不制作證書是否能加密SQLSERVER與客戶端之間傳輸的數據?

在做實驗之前請先下載network monitor抓包工具

微軟官網下載:http://www.microsoft.com/en-us/download/details.aspx?id=4865

Microsoft Network Monitor 這是微軟提供的網絡抓包工具

雖然它是微軟提供的,但所有的協議parser解析代碼全部都是開源的,采用其支持的特有腳本語言編寫,易理解、易擴展;

它自帶協議parser比較全面,同時有一個開源社區提供持續支持;

另外,它也提供API幫助我們開發自己的網絡抓包、協議分析工具。

針對TDS協議解析需求:Network Monitor自帶TDS協議解析器和UI比較友好Network Monitor自帶TDS協議解析器在解析和結果展示方面更全面,以下是一個畫面片段,顯示了一個SQL Batch包。

先了解一下SQLSERVER的加密階段一共有兩個階段在認證階段,SQLSERVER會使用自生成的自簽名證書,加密客戶端發過來的登陸用戶名和密碼在數據傳輸階段,如果不使用證書,那么數據是使用明文在網絡上進行傳送的大家可以看一下這篇文章:SQL Server 連接加密 (1) -- SQL Server connection encyption網上有很多制作證書的教程,但是制作證書都比較麻煩,客戶端和服務器端都要弄很多東西。詳細制作證書的過程可以參考園子里的這篇文章:在SQL Server 2005 中開啟SSL(圖文結合)
當然這篇文章不是講解這個network monitor抓包工具的,所以輕輕帶過就算了那么,不制作證書怎么加密傳輸的數據啊????答案就是:同樣使用在認證階段的自生成的自簽名證書詳細步驟:步驟1:在SQLSERVER服務器端這邊設置強行加密步驟2:重啟SQLSERVER,只有重啟SQLSERVER設置才能生效步驟3:打開network monitor,新建一個capture步驟4:啟動capture,開始捕獲步驟5:在客戶端這邊連上服務器端的SQLSERVER,然后你會在network monitor里的看到SSMS這個進程已經出現在Network Conversations窗口步驟6:選中他,你會在Frame Summary窗口看到幀信息步驟7:如果你在服務器端開啟了“強行加密”,那么收到的數據包都會是加密的大家在PRotocol Name這一欄看到的是TLS協議,而不會是TDS協議步驟8:查看幀數據步驟9:如果沒有加密的明文數據,network monitor就能夠查看出來,并且Protocol Name這一欄顯示的是TDS協議,因為數據包并沒有使用TLS協議進行封裝

TipS:當關閉了SSMS的查詢窗口之后,連接還是存在的

很多人會問,關閉了連接,怎么連接還存在,客戶端為什么還會跟服務器端進行通信?????

實際上,這個是客戶端的連接池機制,客戶端不斷發送keep alive數據包給服務器,下次有同樣的連接進行重用了,不需要再進行三次握手o(∩_∩)o


總結

本人介紹了不使用制作證書的方式來對傳輸的數據進行加密的方法,實際上設置客戶端而不設置服務器端也是可以的

不過設置客戶端比較麻煩,還需要在連接字符串里加上encrypt屬性設置為Yes

設置服務器端和設置客戶端的加密的區別

服務器端:所有的連接都是加密的

客戶端:只是設置了加密的那個連接是加密的,其他沒有設置加密的連接依然是明文傳輸數據

當然,使用SQLSERVER自生成的證書安全性是不及自己制作的證書的安全性高!!

相關連接:

加密與 SQL Server 的連接

使用自簽名證書加密的 SSL 連接不提供強安全性。它們容易在傳輸中途受到攻擊。在生產環境中或在連接到 Internet 的服務器上,不應依賴使用自簽名證書的 SSL。

始終要對客戶端應用程序與 SQL Server 連接時傳輸的憑據(在登錄數據包中)進行加密。SQL Server 將使用可信證書頒發機構頒發的證書(如果可用)。如果未安裝可信證書,則在啟動實例時 SQL Server 將生成自簽名證書,并使用自簽名證書對憑據進行加密。自簽名證書有助于提高安全性,但它不提供針對通過服務器進行的身份欺騙的保護。如果使用自簽名證書,并且 ForceEncryption 選項的值設置為“是”,則將使用自簽名證書對通過網絡在 SQL Server 和客戶端應用程序之間傳輸的所有數據進行加密

有關SQL server connection Keep Alive 的FAQ(3)

有關SQL server connection Keep Alive 的FAQ(2)

有關SQL server connection Keep Alive 的FAQ(1)

SQL Server 連接加密 (1) -- SQL Server connection encyption

SQL Server 連接加密 (2) -- SQL Server connection encyption

如有不對的地方,歡迎大家拍磚o(∩_∩)o


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 姜堰市| 桂平市| 娱乐| 汉阴县| 疏附县| 南昌市| 武陟县| 宁南县| 平度市| 新疆| 石林| 乌海市| 永吉县| 饶河县| 安新县| 杂多县| 镇安县| 建阳市| 两当县| 竹山县| 荔波县| 岱山县| 都匀市| 黄平县| 汾西县| 安徽省| 兰西县| 安吉县| 耒阳市| 白水县| 革吉县| 久治县| 通城县| 栾川县| 区。| 柘荣县| 溆浦县| 平果县| 宝丰县| 兴国县| 苏尼特左旗|