Windows伺服器是Microsoft Windows Server System(WSS)的核心,Windows 的伺服器作業系統。
每個Windows伺服器都與其家用(工作站)版對應(2003 R2除外)。
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
6. 防止ICMP重新導向封包的攻擊原則
#HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters 將EnableICMPRedirects 值設為07、 不支援IGMP協定HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters#HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters#HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters 3KEY_LOCAL#DMPSYSORD.禁用:運行中輸入Dcomcnfg.exe。回車, 點選「控制台根節點」下的「組件服務」。開啟“計算機”子 資料夾。 對於本機,請以右鍵單擊“我的電腦”,然後選擇“屬 性”。選擇“預設屬性”選項卡。清除「在這台電腦上啟用分散式 COM」複選框。 9、終端機服務的預設連接埠為3389,可考慮修改為別的連接埠。修改方法為: 伺服器端:開啟註冊表,在「HKLM\SYSTEM\Current ControlSet\Control\Terminal Server\Win 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預設配置就可以了。 但如果沒有特殊的要求採用UrlScan預設配置就可以了。 但如果沒有特殊的要求採用UrlScan預設配置就可以了。 但如果沒有特殊的要求採用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 Xpread_regenums Xp_regdeletevalue Xpread_regenums Xp_regdeletevalue Xp _regremovemultistring
OLE自動預存程序,不需要刪除
Sp_OACreate Sp_OADestroy Sp_OAGetErrorInfo Sp_OAGetProperty Sp_OAMethod# Property 逝SetSp_OAGetProperty Sp_OAMethod# Property 邐_OA設置常規-網路配置中選擇TCP /IP協定的屬性,選擇隱藏SQL Server 實例,並改原預設的1433連接埠。
8)、修改系統日誌保存位址預設位置為應用程式日誌、安全日誌、系統日誌、DNS日誌預設位置:%systemroot%\system32\config,預設檔案大小512KB,管理員都會改變這個預設大小。
安全日誌檔案:%systemroot%\system32\config\SecEvent.EVT 系統日誌檔案:%systemroot%\system32\config\SysEvent.EVT 應用程式日誌檔案:%systemroot%\system32\config\AppEvent .EVT Internet資訊服務FTP日誌預設位置:%systemroot%\system32\logfiles\msftpsvc1\,預設每天一個日誌Internet資訊服務WWW日誌預設位置:%systemroot%\system32\logfiles\w3svc1\,預設每天一個日誌Scheduler(任務計劃)服務日誌預設位置:%systemroot%\schedlgu.txt 應用程式日誌,安全日誌,系統日誌,DNS伺服器日誌,它們這些LOG檔案在登錄中的: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Eventlog Schedluler(任務計劃)服務日誌在登錄中HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SchedulingAgent SQL 刪除或改名xplog70.dll [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters] "AutoShareHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\paraworders] "AutoShareHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\paraworders] "AutoShareHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\paraworders] "AutoShareHINE\SYSTEM\CurrentControlSet 00000000 // AutoShareWks 對pro版本// AutoShareServer 對server版本// 0
禁止管理共用admin$,c$,d$之類預設共用[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\LSA] "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,658,806585858555808557(70558). SMTP),161(SNMP),67(引導) 封UDP埠:1434(這個就不用說了吧) 封所有ICMP,即封PING 以上是最常被掃的端口,有別的同樣也封,當然因為80是做WEB用的
2、禁止建立空連線預設情況下,任何使用者可透過空連線連上伺服器,列舉帳號並猜測密碼。空連接用的連接埠是139, 透過空連接,可以複製檔案到遠端伺服器,計畫執行一個任務,這就是一個漏洞。可透過以下兩種方法禁止建立空連線:
(1) 修改登錄機中 Local_Machine\System\ CurrentControlSet\Control\LSA-RestrictAnonymous 的值為1。
(2) 修改Windows 2000的本機安全性原則。設定「本機安全性原則→本機原則→選項」中的 RestrictAnonymous(匿名連線的額外限制)為「不容許枚舉SAM帳號與共用」。首先,Windows 2000的預設安裝允許任何使用者透過空連線得到系統所有帳號和共用列表,這本來是為了方便區域網路使用者共享資源和檔案的,但是,同時任何一個遠端使用者也可以透過相同的方法得到您的用戶列表,並可能使用暴力法破解用戶密碼給整個網路帶來破壞。很多人只知道更改註冊表Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous = 1來禁止空用戶連接, 實際上Windows 2000的本機安全性原則裡(如果是網域伺服器就是在網域伺服器安全性和網域安全性原則裡) 就有RestrictAnonymous選項,其中有三個值:「0」這個值是系統預設的,沒有任何限制,遠端用戶可以知道您機器上所有的帳號、群組資訊、共享目錄、網路傳輸清單(NetServerTransportEnum)等;「1」 這個值是只允許非NULL使用者存取SAM帳號資訊和共享資訊;「2」這個值只有Windows 2000才支持,需要注意的是,如果使用了這個值,就不能再共享資源了,所以還是推薦把數值設為「1」比較好。
10)、防止asp木馬
1、基於FileSystemObject元件的asp木馬
cacls %systemroot%\system32\scrrun.dll /e /d guests //禁止guests使用regsvr32 scrrun.dll /u /s //刪除
#2.基於shell.application元件的asp木馬
cacls %systemroot%\system32\shell32.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)上做好設置,確定沒事之後然後再在伺服器上做
#相關推薦:網站安全性
以上是windows伺服器安全設定總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!