1. 程式人生 > 實用技巧 >拒絕亡羊補牢!SQL Server伺服器安全防護!

拒絕亡羊補牢!SQL Server伺服器安全防護!

拒絕亡羊補牢!SQL Server伺服器安全防護! 當今社會網路日益普及,人們徹徹底底感受到了它的無所不能,可就在人們享受它所帶來便捷的同時,網路病毒、***也接種而來,不斷有報道個人、企業、單位等等遭到病毒以及***的***襲擊後系統出現故障無法使用、資料被竊取、硬碟被格式化、客戶的機密資料被公開在網上傳播等等,看來網路日益普及的今天,網路安全也迫在眉睫!<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

SQL Server伺服器對IT界來說可謂家喻戶曉,尤其在中國,由於小中型企業佔絕大多數,而且他們首選的資料庫七、八成都是
SQL Server 資料庫,可以看出SQL Server資料庫在中國應用的普遍性,由此SQL Server資料庫的安全防護也顯的極為重要,一但資料庫伺服器被******奪取管理許可權後,他們便能肆意進行操作,竊取客戶資料、低格磁碟、變相勒索等等,由此造成的損失不是能用金錢就可以來衡量了。

既然知道了SQL Server伺服器的重要性,何不先下手為強,及早的為SQL Server伺服器築起一道銅牆鐵壁,將到訪的惡意行為統統拒之門外! 下圖為SQL Server資料庫安全防範的典型架構,也是在此力推的防護架構: 從圖中可以看出,客戶端在訪問後臺資料庫時首先經過外圍防火牆,過濾掉非法使用者訪問,然後通過
Web伺服器來訪問資料庫中屬於自己的資料,假設這時第一道防火牆被***拿下,***想利用Web伺服器滲入後臺伺服器!是不是有點緊張了,不用擔心, Web伺服器與後臺伺服器之間還建有一層防火牆,而這層防火牆免去了客戶端訪問Web伺服器時漏洞百出的協議,可以將限制在拉昇一個級別,如果***的***有一定水準向這層防火牆在次發起***時,肯定需要一定時間,這段時間就是管理員進行手工防範的時候,理所當然就對管理員就有了新的要求,那麼能力有限的管理員到了這步真的只能任由***擺佈了嗎,那倒未必。
其實真真的防禦還在最後,打個比方吧,某天一張藏寶圖落在了10個人手中,寶藏是箱金幣,拿到了可以夠幾輩子花,於是這
10個人便踏上了尋寶的旅途,一路艱辛一路困阻,到最後只剩下一個人
到達了目的地,可找到它時卻發現寶箱上了一把怎麼也打不開的鎖!這就是問題的關鍵了。

回過頭來看,假設第二層防火牆也被***癱瘓了,當***赤裸裸的面對後臺所有資料庫時,卻發現到了這一步怎麼也進不去了,這就時最終的效果,也是本文所要論述的中心-----SQL Server配置。

SQL Server安全性可以被分為以下兩種:

1.載體安全性

2.配置安全性

什麼是載體安全性?從字面就可以理解出,載體顧名思義就是裝載它的實體,我們知道資料庫的裝載平臺除了系統就沒有別的了,所以載體安全性就可以理解為系統安全性。 那麼什麼又是配置安全性?配置安全性可以理解為針對資料庫本身所作的安全配置措施。 一.載體安全性 載體安全性細劃之後又可以分為: 1.系統安全性 2.物理安全性 3.網路配置安全性 1. 系統安全性 在系統安全性的防範中主要有以下幾點:

1.及時更新補丁,不給系統留下任何補丁漏洞。

2.安裝防毒軟體

3.禁用使用者,刪除系統中的隱藏使用者,注意這裡所說的隱藏使用者是圖形介面看不到的使用者,檢視及刪除的辦法必須在登錄檔中進行操作:

開啟執行,輸入regedit 展開HKEY_Local_MACHINE

展開SAM

右擊選擇許可權

出現如下向導

勾選administrator完全控制權限,點選確定結束操作

然後在出現的介面中按F5,展開SAM

如下圖,SAM前多了一個加號,展開SAM


出現的介面中展開Domains

展開Account,展開Users

展開Names,這時當前系統的所有使用者都出現在了列表中 假設要刪除__vmware使用者 如下圖,在__vmware__user使用者中右擊選擇刪除即可

4.組策略中,如禁用自動播放等等

2 物理安全性

物理安全性主要屬於行政方面的管理

1.不安置於公共場合 2.禁止閒雜人員進入

3. 網路配置安全性

網路配置安全性可以分為以下幾點

1.禁用不需要的服務(如:FTPtelnet

2.SQL伺服器與其它伺服器獨立安裝,避免由其它伺服器中的漏洞被利用從而***到SQL 伺服器

3.配合防火牆做相應配置,根據防火牆策略的要求做出相應調整

二.配置安全性

配置安全性可以理解為針對資料庫本身所作的安全配置措施,首先來了解下使用者對SQL Server的訪問方式以及驗證方式由哪些 ①使用者的訪問控制 1.訪問方式:

1.windows登入

Windows帳戶登入

2.SQL_Server登入

SQL_Server帳戶SA登入

2.驗證方式:

1.windows驗證 Windows驗證的這種驗證方式相對來說安全性較高,但當前工作環境如果是域或工作組的話,利用windows驗證會很麻煩,需要手工逐個去新增

2.SQL Server驗證

相反SQL Server驗證的這種驗證方式會變的很靈活,它不論在域或是工作組只需要一個SA帳戶就行,不過理所當然它的安全性會變低,由於SQL Server不能更改sa使用者名稱稱,也不能刪除這個超級使用者,所以,我們必須對這個帳號進行最強的保護,使用一個極為複雜的密碼是首選,並且最好不在資料庫中使用sa這個帳戶,除非在沒有其它方法登入到 SQL Server 例項時在使用sa賬戶 資料庫管理員應建立一個與sa有著一樣許可權的超級使用者賬戶來管理資料庫。 資料存貯安全

1. 備份 俗話說留得青山在不怕沒柴燒,每天對資料庫進行備份是一個不錯的習慣,假如SQL伺服器因為物理故障損壞造成資料丟失,因為之前有了備份就不用太擔心了。

下面來介紹幾種用命令列來進行備份的常見備份方式,在備份之前需要提前配置好備份裝置,也就是備份存放的目錄路徑

如圖,展開SQL伺服器 展開管理

右擊備份選項,選擇新建備份裝置

輸入備份名稱,在隨後的備份操作中直接呼叫備份名稱就可以

指定備份路徑

點選確定即完成備份目錄新建 下面是用命令列進行備份的幾種常見方法方法 1. 完全備份 Backup database 資料庫名 to 備份裝置 2. 差異備份 Backup database 資料庫名 to 備份裝置 with diff erential 3. 事務日誌備份 Backup log 資料庫名 to 備份裝置 二.還原 備份雖然有了,但還得會還原才行,常見的還原方式有 1. 完全恢復還原

功能強,完全恢復

2. 大容量日誌恢復還原

功能中,大容量操作步記錄,例如select into bulk insert操作的記錄

3. 簡單模式還原

功能弱,不記錄日誌

知道了還原模式通常有哪些,我們就可以用命令來檢視當前資料庫的還原模式 select databaseproperty ('資料庫名','recovery') 當然用命令還可以手工更改當前資料庫的還原模式 alter database 資料庫名 set recovery simple(簡單模式)、full(完全恢復)、bulk_logged(大容量模式)

.傳輸的安全性

傳輸安全性可以理解為SSL的加密連線,就是對傳輸資料進行加密,下圖為大家演示。

首先需要用到的就是CA證書服務,掛入系統ISOWIN+R開啟執行視窗,輸入sysocmgr /i:sysoc.inf開啟windows新增刪除元件向選中其中的CA證書服務,注:CA證書服務需要IIS的支援,請在安裝前完成IIS安裝

點選下一步繼續安裝

出現CA型別選擇嚮導,預設獨立根CA,點選下一步繼續 輸入CA公用名稱,這裡測試用輸入SQL_Test點選下一步繼續

採用預設安裝路徑,點選下一步完成安裝

安裝完畢後,在瀏覽器中輸入[url]http://itet-06/certsrv[/url],開啟CA證書申請介面,其中itet-06CA伺服器的計算機名,如下圖 選擇申請一個證書

選擇高階證書申請 選擇建立並向CA提交一個申請 在姓名選項中輸入當前計算機名,這點很重要,其他選項實驗環境下可以不填