windows伺服器詳細安全設定

zhubaojie發表於2018-07-20

1)、系統安全基本設定

1.安裝說明:系統全部NTFS格式化,重新安裝系統(採用原版win2003),安裝防毒軟體(Mcafee),並將防毒軟體更新,安裝sp2補釘,安裝IIS(只安裝必須的元件),安裝SQL2000,安裝.net2.0,開啟防火牆。並將伺服器打上最新的補釘。

2)、關閉不需要的服務

Computer Browser:維護網路計算機更新,禁用  

Distributed File System: 區域網管理共享檔案,不需要禁用  

Distributed linktracking client:用於區域網更新連線資訊,不需要禁用  

Error reporting service:禁止傳送錯誤報告  

Microsoft Serch:提供快速的單詞搜尋,不需要可禁用  

NTLMSecuritysupportprovide:telnet服務和Microsoft Serch用的,不需要禁用  

PrintSpooler:如果沒有印表機可禁用  

Remote Registry:禁止遠端修改登錄檔  

Remote Desktop Help Session Manager:禁止遠端協助 其他服務有待核查

3)、設定和管理賬戶

1、將Guest賬戶禁用並更改名稱和描述,然後輸入一個複雜的密碼

2、系統管理員賬戶最好少建,更改預設的管理員帳戶名(Administrator)和描述,密碼最好採用數字加大小寫字母加數字的上檔鍵組合,長度最好不少於10位

3、新建一個名為Administrator的陷阱帳號,為其設定最小的許可權,然後隨便輸入組合的最好不低於20位的密碼

4、計算機配置-Windows設定-安全設定-賬戶策略-賬戶鎖定策略,將賬戶設為“三次登陸無效 時間為30分鐘

5、在安全設定-本地策略-安全選項中將“不顯示上次的使用者名稱”設為啟用

6、 在安全設定-本地策略-使用者權利分配中將“從網路訪問此計算機”中只保留Internet來賓賬戶、啟動IIS程式賬戶,Aspnet賬戶

7、建立一個User賬戶,執行系統,如果要執行特權命令使用Runas命令。

4)、開啟相應的稽核策略

稽核策略更改:成功

稽核登入事件:成功,失敗

稽核物件訪問:失敗

稽核物件追蹤:成功,失敗

稽核目錄服務訪問:失敗

稽核特權使用:失敗

稽核系統事件:成功,失敗

稽核賬戶登入事件:成功,失敗

稽核賬戶管理:成功,失敗

5)、 其它安全相關設定

1、禁止C、D、ADMIN$一類的預設共享  

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceslanmanserverparameters,在右邊的 視窗中新建Dword值,名稱設為AutoShareServer值設為0

2、解除NetBios與TCP/IP協議的繫結 

右擊網路上的芳鄰-屬性-右擊本地連線-屬性-雙擊Internet協議-高階-Wins-禁用TCP/IP上的 NETBIOS

3、隱藏重要檔案/目錄  

可以修改登錄檔實現完全隱藏: “HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrent-VersionExplorerAdvancedFol derHi-ddenSHOWALL”,滑鼠右擊“CheckedValue”,選擇修改,把數值由1改為0

4、防止SYN洪水攻擊   

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters 新建DWORD 值,名為SynAttackProtect,值為2

5、 禁止響應ICMP路由通告報文

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersInterfacesinterface 新建DWORD值,名為PerformRouterDiscovery 值為0

  1. 防止ICMP重定向報文的攻擊

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters 將EnableICMPRedirects 值設為0

7、 不支援IGMP協議

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters 新建DWORD 值,名為IGMPLevel 值為0

8、禁用DCOM:執行中輸入 Dcomcnfg.exe。 回車, 單擊“控制檯根節點”下的“元件服務”。 開啟“計算機”子 資料夾。  

對於本地計算機,請以右鍵單擊“我的電腦”,然後選擇“屬 性”。選擇“預設屬性”選項卡。清除“在這臺計算機上啟用分散式 COM”核取方塊。

9、終端服務的預設埠為3389,可考慮修改為別的埠。

修改方法為: 伺服器端:開啟登錄檔,在“HKLMSYSTEMCurrent ControlSetControlTerminal ServerWin Stations” 處找到類似RDP-TCP的子鍵,修改PortNumber值。 客戶端:按正常步驟建一個客戶端連線,選中這個連線,在“檔案”選單中選擇匯出,在指定位置會 生成一個字尾為.cns的檔案。開啟該檔案,修改“Server Port”值為與伺服器端的PortNumber對應的 值。然後再匯入該檔案(方法:選單→檔案→匯入),這樣客戶端就修改了埠。

6)、配置 IIS 服務  

1、不使用預設的Web站點,如果使用也要將 將IIS目錄與系統磁碟分開。  

2、刪除IIS預設建立的Inetpub目錄(在安裝系統的盤上)。  

3、刪除系統盤下的虛擬目錄,如:_vti_bin、IISSamples、Scripts、IIShelp、IISAdmin、IIShelp、 MSADC。  

4、刪除不必要的IIS副檔名對映。  右鍵單擊“預設Web站點→屬性→主目錄→配置”,開啟應用程式視窗,去掉不必要的應用程式映 射。主要為.shtml, .shtm, .stm   

5、更改IIS日誌的路徑 右鍵單擊“預設Web站點→屬性-網站-在啟用日誌記錄下點選屬性  

6、如果使用的是2000可以使用iislockdown來保護IIS,在2003執行的IE6.0的版本不需要。

7、使用UrlScan   

UrlScan是一個ISAPI篩選器,它對傳入的HTTP資料包進行分析並可以拒絕任何可疑的通訊量。 目前最新的版本是2.5,如果是2000Server需要先安裝1.0或2.0的版本。  如果沒有特殊的要求採用UrlScan預設配置就可以了。  但如果你在伺服器執行ASP.NET程式,並要進行除錯你需開啟要 %WINDIR%System32InetsrvURLscan,資料夾中的URLScan.ini 檔案,然後在UserAllowVerbs節添 加debug謂詞,注意此節是區分大小寫的。  如果你的網頁是.asp網頁你需要在DenyExtensions刪除.asp相關的內容。  如果你的網頁使用了非ASCII程式碼,你需要在Option節中將AllowHighBitCharacters的值設為1   在對URLScan.ini 檔案做了更改後,你需要重啟IIS服務才能生效,快速方法執行中輸入iisreset   如果你在配置後出現什麼問題,你可以通過新增/刪除程式刪除UrlScan。  

8、利用WIS (Web Injection Scanner)工具對整個網站進行SQL Injection 脆弱性掃描.

7)、配置Sql伺服器  

1、System Administrators 角色最好不要超過兩個  

3、不要使用Sa賬戶,為其配置一個超級複雜的密碼  

4、刪除以下的擴充套件儲存過程格式為:  

use master   sp_dropextendedproc `擴充套件儲存過程名`   

xp_cmdshell:是進入作業系統的最佳捷徑,刪除  訪問登錄檔的儲存過程,

刪除  

Xp_regaddmultistring  Xp_regdeletekey  Xp_regdeletevalue  Xp_regenumvalues   Xp_regread      Xp_regwrite    Xp_regremovemultistring   

OLE自動儲存過程,不需要刪除  

Sp_OACreate   Sp_OADestroy    Sp_OAGetErrorInfo  Sp_OAGetProperty   Sp_OAMethod  Sp_OASetProperty  Sp_OAStop

5、隱藏 SQL Server、更改預設的1433埠  

右擊例項選屬性-常規-網路配置中選擇TCP/IP協議的屬性,選擇隱藏 SQL Server 例項,並改原默 認的1433埠。

8)、修改系統日誌儲存地址 預設位置為 應用程式日誌、安全日誌、系統日誌、DNS日誌預設位置:%systemroot%system32config,預設 檔案大小512KB,管理員都會改變這個預設大小。

安全日誌檔案:%systemroot%system32configSecEvent.EVT 系統日誌檔案:%systemroot%system32configSysEvent.EVT 應用程式日誌檔案:%systemroot%system32configAppEvent.EVT Internet資訊服務FTP日誌預設位置:%systemroot%system32logfilesmsftpsvc1,預設每天一個日 志 Internet資訊服務WWW日誌預設位置:%systemroot%system32logfilesw3svc1,預設每天一個日 志 Scheduler(任務計劃)服務日誌預設位置:%systemroot%schedlgu.txt 應用程式日誌,安全日誌,系統日誌,DNS伺服器日誌,它們這些LOG檔案在登錄檔中的: HKEY_LOCAL_MACHINESystemCurrentControlSetServicesEventlog Schedluler(任務計劃)服務日誌在登錄檔中 HKEY_LOCAL_MACHINESOFTWAREMicrosoftSchedulingAgent SQL 刪掉或改名xplog70.dll [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceslanmanserverparameters] “AutoShareServer”=dword:00000000 “AutoShareWks”=dword:00000000 // AutoShareWks 對pro版本 // AutoShareServer 對server版本 // 0

禁止管理共享admin,c,d之類預設共享[HKEYLOCALMACHINESystemCurrentControlSetControlLSA]”restrictanonymous”=dword:00000001//0x1匿名使用者無法列舉本機使用者列表//0x2匿名使用者無法連線本機IPC共享(可能sql server不能夠啟動

9)、本地安全策略

1.只開放服務需要的埠與協議。 具體方法為:按順序開啟“網路上的芳鄰→屬性→本地連線→屬性→Internet 協議→屬性→高階→選項→ TCP/IP篩選→屬性”,新增需要的TCP、UDP埠以及IP協議即可。根據服務開設口,常用的TCP 口有:80口用於Web服務;21用於FTP服務;25口用於SMTP;23口用於Telnet服務;110口 用於POP3。常用的UDP埠有:53口-DNS域名解析服務;161口-snmp簡單的網路管理協議。 8000、4000用於OICQ,伺服器用8000來接收資訊,客戶端用4000傳送資訊。 封TCP埠: 21(FTP,換FTP埠)23(TELNET),53(DNS),135,136,137,138,139,443,445,1028,1433,3389 可封TCP埠:1080,3128,6588,8080(以上為代理埠).25(SMTP),161(SNMP),67(引導) 封UDP埠:1434(這個就不用說了吧) 封所有ICMP,即封PING 以上是最常被掃的埠,有別的同樣也封,當然因為80是做WEB用的

2、禁止建立空連線 預設情況下,任何使用者可通過空連線連上伺服器,列舉賬號並猜測密碼。空連線用的埠是139, 通過空連線,可以複製檔案到遠端伺服器,計劃執行一個任務,這就是一個漏洞。可以通過以下兩 種方法禁止建立空連線:

(1) 修改登錄檔中 Local_MachineSystem CurrentControlSetControlLSA-RestrictAnonymous 的值為1。

(2) 修改Windows 2000的本地安全策略。設定“本地安全策略→本地策略→選項”中的 RestrictAnonymous(匿名連線的額外限制)為“不容許列舉SAM賬號和共享”。 首先,Windows 2000的預設安裝允許任何使用者通過空連線得到系統所有賬號和共享列表,這本來 是為了方便區域網使用者共享資源和檔案的,但是,同時任何一個遠端使用者也可以通過同樣的方法得 到您的使用者列表,並可能使用暴力法破解使用者密碼給整個網路帶來破壞。很多人都只知道更改註冊 表Local_MachineSystemCurrentControlSetControlLSA-RestrictAnonymous = 1來禁止空使用者連線, 實際上Windows 2000的本地安全策略裡(如果是域伺服器就是在域伺服器安全和域安全策略裡) 就有RestrictAnonymous選項,其中有三個值:“0”這個值是系統預設的,沒有任何限制,遠端使用者 可以知道您機器上所有的賬號、組資訊、共享目錄、網路傳輸列表(NetServerTransportEnum)等;“1” 這個值是隻允許非NULL使用者存取SAM賬號資訊和共享資訊;“2”這個值只有Windows 2000才支 持,需要注意的是,如果使用了這個值,就不能再共享資源了,所以還是推薦把數值設為“1”比較 好。

10)、防止asp木馬

1、基於FileSystemObject元件的asp木馬

cacls %systemroot%system32scrrun.dll /e /d guests //禁止guests使用 regsvr32 scrrun.dll /u /s //刪除

2.基於shell.application元件的asp木馬

cacls %systemroot%system32shell32.dll /e /d guests //禁止guests使用 regsvr32 shell32.dll /u /s //刪除

3.將圖片資料夾的許可權設定為不允許執行。

4.如果網站中不存在有asp的話,禁用asp

11)、防止SQL隱碼攻擊

1.儘量使用引數化語句

2.無法使用引數化的SQL使用過濾。

3.網站設定為不顯示詳細錯誤資訊,頁面出錯時一律跳轉到錯誤頁面。

4.不要使用sa使用者連線資料庫

5、新建一個public許可權資料庫使用者,並用這個使用者訪問資料庫 6、[角色]去掉角色public對sysobjects與syscolumns物件的select訪問許可權

最後強調一下,以上設定可能會影響到有些應用服務,例如導至不能連線上遠端伺服器,

因此強烈建議,以上設定首先在本地機器或虛擬機器(VMware Workstation)上做好設定,確定沒事之後然後再在伺服器上做。

網站運維專家網掌櫃總結,轉載表明出處。


相關文章