保護SQL Server的十個步驟(轉)
保護SQL Server的十個步驟(轉)[@more@]這裡介紹了為提高 SQL Server 安裝的安全性,您可以實施的十件事情:
1.安裝最新的服務包。
為了提高伺服器安全性,最有效的一個方法就是升級到 SQL Server 2000 Service Pack 3a (SP3a)。
另外,您還應該安裝所有已釋出的安全更新。
2.使用 Microsoft 基線安全性分析器(MBSA)來評估伺服器的安全性。
MBSA 是一個掃描多種 Microsoft 產品的不安全配置的工具,包括 SQL Server 和 Microsoft SQL Server 2000 Desktop Engine (MSDE 2000)。它可以在本地執行,也可以透過網路執行。該工具針對下面問題對 SQL Server 安裝進行檢測:
1) 過多的sysadmin固定伺服器角色成員。
2) 授予sysadmin以外的其他角色建立 CmdExec 作業的權利。
3) 空的或簡單的密碼。
4) 脆弱的身份驗證模式。
5) 授予管理員組過多的權利。
6) SQL Server資料目錄中不正確的訪問控制表(ACL)。
7) 安裝檔案中使用純文字的sa密碼。
8) 授予guest帳戶過多的權利。
9) 在同時是域控制器的系統中執行SQL Server。
10) 所有人(Everyone)組的不正確配置,提供對特定登錄檔鍵的訪問。
11) SQL Server 服務帳戶的不正確配置。
12) 沒有安裝必要的服務包和安全更新。
Microsoft 提供 MBSA 的免費下載。
3.使用 Windows 身份驗證模式。
在任何可能的時候,您都應該對指向 SQL Server 的連線要求 Windows 身份驗證模式。它透過限制對Microsoft Windows®使用者和域使用者帳戶的連線,保護 SQL Server 免受大部分 Internet 的工具的侵害,而且,您的伺服器也將從 Windows 安全增強機制中獲益,例如更強的身份驗證協議以及強制的密碼複雜性和過期時間。另外,憑證委派(在多臺伺服器間橋接憑證的能力)也只能在 Windows 身份驗證模式中使用。在客戶端,Windows 身份驗證模式不再需要儲存密碼。儲存密碼是使用標準 SQL Server 登入的應用程式的主要漏洞之一。
要在 SQL Server 的 Enterprise Manager 安裝 Windows 身份驗證模式,請按下列步驟操作:
1) 展開伺服器組。
2) 右鍵點選伺服器,然後點選屬性。
3) 在安全性選項卡的身份驗證中,點選僅限 Windows。
4.隔離您的伺服器,並定期備份。
物理和邏輯上的隔離組成 了SQL Server 安全性的基礎。駐留資料庫的機器應該處於一個從物理形式上受到保護的地方,最好是一個上鎖的機房,配備有洪水檢測以及火災檢測/消防系統。資料庫應該安裝在企業內部網的安全區域中,不要直接連線到 Internet。定期備份所有資料,並將副本儲存在安全的站點外地點。
5.分配一個強健的sa密碼。
sa帳戶應該總擁有一個強健的密碼,即使在配置為要求 Windows 身份驗證的伺服器上也該如此。這將保證在以後伺服器被重新配置為混合模式身份驗證時,不會出現空白或脆弱的sa。
要分配sa密碼,請按下列步驟操作:
1) 展開伺服器組,然後展開伺服器。
2) 展開安全性,然後點選登入。
3) 在細節窗格中,右鍵點選SA,然後點選屬性。
4) 在密碼方框中,輸入新的密碼。
6.限制 SQL Server服務的許可權。
SQL Server 2000 和 SQL Server Agent 是作為 Windows 服務執行的。每個服務必須與一個 Windows 帳戶相關聯,並從這個帳戶中衍生出安全性上下文。SQL Server允許sa 登入的使用者(有時也包括其他使用者)來訪問作業系統特性。這些作業系統呼叫是由擁有伺服器程式的帳戶的安全性上下文來建立的。如果伺服器被攻破了,那麼這些作業系統呼叫可能被利用來向其他資源進行攻擊,只要所擁有的過程(SQL Server服務帳戶)可以對其進行訪問。因此,為 SQL Server 服務僅授予必要的許可權是十分重要的。
我們推薦您採用下列設定:
1) SQL Server Engine/MSSQLServer
如果擁有指定例項,那麼它們應該被命名為MSSQL$InstanceName。作為具有一般使用者許可權的Windows 域使用者帳戶執行。不要作為本地系統、本地管理員或域管理員帳戶來執行。
2) SQL Server Agent Service/SQLServerAgent
如果您的環境中不需要,請禁用該服務;否則請作為具有一般使用者許可權的Windows域使用者帳戶執行。不要作為本地系統、本地管理員或域管理員帳戶來執行。
重點: 如果下列條件之一成立,那麼 SQL Server Agent 將需要本地 Windows管理員許可權:
SQL Server Agent 使用標準的 SQL Server 身份驗證連線到SQL Server(不推薦)。
SQL Server Agent 使用多伺服器管理主伺服器(MSX)帳戶,而該帳戶使用標準 SQL Server 身份驗證進行連線。
SQL Server Agent 執行非sysadmin固定伺服器角色成員所擁有的 Microsoft ActiveX®指令碼或 CmdExec 作業。
如果您需要更改與 SQL Serve r服務相關聯的帳戶,請使用 SQL Server Enterprise Manager。Enterprise Manager 將為 SQL Server 所使用的檔案和登錄檔鍵設定合適的許可權。不要使用 Microsoft 管理控制檯的"服務"(在控制皮膚中)來更改這些帳戶,因為這樣需要手動地調製大量的登錄檔鍵和NTFS檔案系統許可權以及Micorsoft Windows使用者許可權。
帳戶資訊的更改將在下一次服務啟動時生效。如果您需要更改與 SQL Server 以及 SQL Server Agent 相關聯的帳戶,那麼您必須使用 Enterprise Manager 分別對兩個服務進行更改。
7.在防火牆上禁用 SQL Server 埠。
SQL Server 的預設安裝將監視 TCP 埠 1433 以及UDP埠 1434。配置您的防火牆來過濾掉到達這些埠的資料包。而且,還應該在防火牆上阻止與指定例項相關聯的其他埠。
8.使用最安全的檔案系統。
NTFS 是最適合安裝 SQL Server 的檔案系統。它比 FAT 檔案系統更穩定且更容易恢復。而且它還包括一些安全選項,例如檔案和目錄 ACL 以及檔案加密(EFS)。在安裝過程中,如果偵測到 NTFS,SQL Server 將在登錄檔鍵和檔案上設定合適的 ACL。不應該去更改這些許可權。
透過 EFS,資料庫檔案將在執行 SQL Server 的帳戶身份下進行加密。只有這個帳戶才能解密這些檔案。如果您需要更改執行 SQL Server 的帳戶,那麼您必須首先在舊帳戶下解密這些檔案,然後在新帳戶下重新進行加密。
9.刪除或保護舊的安裝檔案。
SQL Server 安裝檔案可能包含由純文字或簡單加密的憑證和其他在安裝過程中記錄的敏感配置資訊。這些日誌檔案的儲存位置取決於所安裝的SQL Server版本。在 SQL Server 2000 中,下列檔案可能受到影響:預設安裝時:Program FilesMicrosoft SQL ServerMSSQLInstall資料夾中,以及指定例項的:Program FilesMicrosoft SQL Server MSSQL$Install資料夾中的sqlstp.log, sqlsp.log和setup.iss
如果當前的系統是從 SQL Server 7.0 安裝升級而來的,那麼還應該檢查下列檔案:%Windir% 資料夾中的setup.iss以及Windows Temp資料夾中的sqlsp.log。
Microsoft釋出了一個免費的實用工具 Killpwd,它將從您的系統中找到並刪除這些密碼。
10.稽核指向 SQL Server 的連線。
SQL Server 可以記錄事件資訊,用於系統管理員的審查。至少您應該記錄失敗的 SQL Server 連線嘗試,並定期地檢視這個日誌。在可能的情況下,不要將這些日誌和資料檔案儲存在同一個硬碟上。
要在 SQL Server 的 Enterprise Manager 中稽核失敗連線,請按下列步驟操作:
1) 展開伺服器組。
2) 右鍵點選伺服器,然後點選屬性。
3) 在安全性選項卡的稽核等級中,點選失敗。
4) 要使這個設定生效,您必須停止並重新啟動伺服器。
1.安裝最新的服務包。
為了提高伺服器安全性,最有效的一個方法就是升級到 SQL Server 2000 Service Pack 3a (SP3a)。
另外,您還應該安裝所有已釋出的安全更新。
2.使用 Microsoft 基線安全性分析器(MBSA)來評估伺服器的安全性。
MBSA 是一個掃描多種 Microsoft 產品的不安全配置的工具,包括 SQL Server 和 Microsoft SQL Server 2000 Desktop Engine (MSDE 2000)。它可以在本地執行,也可以透過網路執行。該工具針對下面問題對 SQL Server 安裝進行檢測:
1) 過多的sysadmin固定伺服器角色成員。
2) 授予sysadmin以外的其他角色建立 CmdExec 作業的權利。
3) 空的或簡單的密碼。
4) 脆弱的身份驗證模式。
5) 授予管理員組過多的權利。
6) SQL Server資料目錄中不正確的訪問控制表(ACL)。
7) 安裝檔案中使用純文字的sa密碼。
8) 授予guest帳戶過多的權利。
9) 在同時是域控制器的系統中執行SQL Server。
10) 所有人(Everyone)組的不正確配置,提供對特定登錄檔鍵的訪問。
11) SQL Server 服務帳戶的不正確配置。
12) 沒有安裝必要的服務包和安全更新。
Microsoft 提供 MBSA 的免費下載。
3.使用 Windows 身份驗證模式。
在任何可能的時候,您都應該對指向 SQL Server 的連線要求 Windows 身份驗證模式。它透過限制對Microsoft Windows®使用者和域使用者帳戶的連線,保護 SQL Server 免受大部分 Internet 的工具的侵害,而且,您的伺服器也將從 Windows 安全增強機制中獲益,例如更強的身份驗證協議以及強制的密碼複雜性和過期時間。另外,憑證委派(在多臺伺服器間橋接憑證的能力)也只能在 Windows 身份驗證模式中使用。在客戶端,Windows 身份驗證模式不再需要儲存密碼。儲存密碼是使用標準 SQL Server 登入的應用程式的主要漏洞之一。
要在 SQL Server 的 Enterprise Manager 安裝 Windows 身份驗證模式,請按下列步驟操作:
1) 展開伺服器組。
2) 右鍵點選伺服器,然後點選屬性。
3) 在安全性選項卡的身份驗證中,點選僅限 Windows。
4.隔離您的伺服器,並定期備份。
物理和邏輯上的隔離組成 了SQL Server 安全性的基礎。駐留資料庫的機器應該處於一個從物理形式上受到保護的地方,最好是一個上鎖的機房,配備有洪水檢測以及火災檢測/消防系統。資料庫應該安裝在企業內部網的安全區域中,不要直接連線到 Internet。定期備份所有資料,並將副本儲存在安全的站點外地點。
5.分配一個強健的sa密碼。
sa帳戶應該總擁有一個強健的密碼,即使在配置為要求 Windows 身份驗證的伺服器上也該如此。這將保證在以後伺服器被重新配置為混合模式身份驗證時,不會出現空白或脆弱的sa。
要分配sa密碼,請按下列步驟操作:
1) 展開伺服器組,然後展開伺服器。
2) 展開安全性,然後點選登入。
3) 在細節窗格中,右鍵點選SA,然後點選屬性。
4) 在密碼方框中,輸入新的密碼。
6.限制 SQL Server服務的許可權。
SQL Server 2000 和 SQL Server Agent 是作為 Windows 服務執行的。每個服務必須與一個 Windows 帳戶相關聯,並從這個帳戶中衍生出安全性上下文。SQL Server允許sa 登入的使用者(有時也包括其他使用者)來訪問作業系統特性。這些作業系統呼叫是由擁有伺服器程式的帳戶的安全性上下文來建立的。如果伺服器被攻破了,那麼這些作業系統呼叫可能被利用來向其他資源進行攻擊,只要所擁有的過程(SQL Server服務帳戶)可以對其進行訪問。因此,為 SQL Server 服務僅授予必要的許可權是十分重要的。
我們推薦您採用下列設定:
1) SQL Server Engine/MSSQLServer
如果擁有指定例項,那麼它們應該被命名為MSSQL$InstanceName。作為具有一般使用者許可權的Windows 域使用者帳戶執行。不要作為本地系統、本地管理員或域管理員帳戶來執行。
2) SQL Server Agent Service/SQLServerAgent
如果您的環境中不需要,請禁用該服務;否則請作為具有一般使用者許可權的Windows域使用者帳戶執行。不要作為本地系統、本地管理員或域管理員帳戶來執行。
重點: 如果下列條件之一成立,那麼 SQL Server Agent 將需要本地 Windows管理員許可權:
SQL Server Agent 使用標準的 SQL Server 身份驗證連線到SQL Server(不推薦)。
SQL Server Agent 使用多伺服器管理主伺服器(MSX)帳戶,而該帳戶使用標準 SQL Server 身份驗證進行連線。
SQL Server Agent 執行非sysadmin固定伺服器角色成員所擁有的 Microsoft ActiveX®指令碼或 CmdExec 作業。
如果您需要更改與 SQL Serve r服務相關聯的帳戶,請使用 SQL Server Enterprise Manager。Enterprise Manager 將為 SQL Server 所使用的檔案和登錄檔鍵設定合適的許可權。不要使用 Microsoft 管理控制檯的"服務"(在控制皮膚中)來更改這些帳戶,因為這樣需要手動地調製大量的登錄檔鍵和NTFS檔案系統許可權以及Micorsoft Windows使用者許可權。
帳戶資訊的更改將在下一次服務啟動時生效。如果您需要更改與 SQL Server 以及 SQL Server Agent 相關聯的帳戶,那麼您必須使用 Enterprise Manager 分別對兩個服務進行更改。
7.在防火牆上禁用 SQL Server 埠。
SQL Server 的預設安裝將監視 TCP 埠 1433 以及UDP埠 1434。配置您的防火牆來過濾掉到達這些埠的資料包。而且,還應該在防火牆上阻止與指定例項相關聯的其他埠。
8.使用最安全的檔案系統。
NTFS 是最適合安裝 SQL Server 的檔案系統。它比 FAT 檔案系統更穩定且更容易恢復。而且它還包括一些安全選項,例如檔案和目錄 ACL 以及檔案加密(EFS)。在安裝過程中,如果偵測到 NTFS,SQL Server 將在登錄檔鍵和檔案上設定合適的 ACL。不應該去更改這些許可權。
透過 EFS,資料庫檔案將在執行 SQL Server 的帳戶身份下進行加密。只有這個帳戶才能解密這些檔案。如果您需要更改執行 SQL Server 的帳戶,那麼您必須首先在舊帳戶下解密這些檔案,然後在新帳戶下重新進行加密。
9.刪除或保護舊的安裝檔案。
SQL Server 安裝檔案可能包含由純文字或簡單加密的憑證和其他在安裝過程中記錄的敏感配置資訊。這些日誌檔案的儲存位置取決於所安裝的SQL Server版本。在 SQL Server 2000 中,下列檔案可能受到影響:預設安裝時
如果當前的系統是從 SQL Server 7.0 安裝升級而來的,那麼還應該檢查下列檔案:%Windir% 資料夾中的setup.iss以及Windows Temp資料夾中的sqlsp.log。
Microsoft釋出了一個免費的實用工具 Killpwd,它將從您的系統中找到並刪除這些密碼。
10.稽核指向 SQL Server 的連線。
SQL Server 可以記錄事件資訊,用於系統管理員的審查。至少您應該記錄失敗的 SQL Server 連線嘗試,並定期地檢視這個日誌。在可能的情況下,不要將這些日誌和資料檔案儲存在同一個硬碟上。
要在 SQL Server 的 Enterprise Manager 中稽核失敗連線,請按下列步驟操作:
1) 展開伺服器組。
2) 右鍵點選伺服器,然後點選屬性。
3) 在安全性選項卡的稽核等級中,點選失敗。
4) 要使這個設定生效,您必須停止並重新啟動伺服器。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-960707/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 十個步驟提高 SQL Server 安裝的安全性SQLServer
- Excel 匯入 SQL Server 步驟:ExcelSQLServer
- 10招步驟保護IIS伺服器安全伺服器
- 【轉載】SQL Server 維護SQLServer
- 專家教你加強網路防護的四個步驟(轉)
- [譯]如何通過7個簡單步驟保護您的Linux伺服器Linux伺服器
- realvnc server,realvnc server的9個安裝步驟VNCServer
- SQL Server資料庫備份保護的關鍵UMSQLServer資料庫
- Oracle中SQL語句解析的步驟(轉)OracleSQL
- SQL Server最佳化方法、步驟和技術SQLServer
- SQL Server 遷移至MySQL 關鍵步驟的梳理總結ServerMySql
- 一次SQL Server遷移到Oracle的實施步驟SQLServerOracle
- 門戶專案成功十步驟 (轉)
- 【DataGuard】調整Data Guard資料保護模式詳細步驟模式
- 保護Amazon EC2中的SQL Server資料安全HESQLServer
- Win10如何取消豆沙綠保護_win10取消豆沙綠護眼色的步驟Win10
- SQL Server 資料庫查詢死鎖的處理步驟SQLServer資料庫
- 保證軟體開發過程遵循ISO 26262標準的十個進階步驟
- RequisitePro中需求管理的12個步驟(轉)UI
- Win10系統怎樣關閉Windows檔案保護 win10關閉windows檔案保護的步驟Win10Windows
- win10桌面眼睛保護模式怎麼開啟_win10設定電腦眼睛保護模式步驟Win10模式
- SQL處理的主要步驟SQL
- Windows的保護模式 (轉)Windows模式
- 開原始碼評審的十個通用步驟 | Linux 中國原始碼Linux
- 保護你的 PL/SQL 程式碼!SQL
- SQL Server觸發器建立、刪除、修改、檢視示例步驟SQLServer觸發器
- 解決問題的8個步驟-轉載
- 專案的實現:成功的八個步驟(轉)
- 優化 SQL 語句的步驟優化SQL
- 用SQL建立索引的方法步驟SQL索引
- 邦芒面試:十個步驟帶你俘獲面試官的心面試
- iOS移動應用安全加固:保護您的App免受惡意攻擊的重要步驟iOSAPP
- 關於pl/sql的程式碼保護SQL
- 【步驟】如何辦理資訊系統安全等級保護備案證明?
- 專案組合管理(PPM)的4個步驟(轉)
- Sql Server系列:索引維護SQLServer索引
- 十步完全理解SQLSQL
- 十步完全理解 SQLSQL