win2000/win2003終端服務(wù)器超出最大允許連接數(shù)解決之道全攻略
今天管理一臺服務(wù)器,遠(yuǎn)程連接時賬號密碼都輸入完后,點(diǎn)連接后彈出一個 “終端服務(wù)器超出最大允許連接”。上網(wǎng)查了一下歸結(jié)一下出現(xiàn)這 種情況的原因和解決辦法。 原因:用 遠(yuǎn)程桌面鏈接登錄到終端服務(wù)器時經(jīng)常會遇到“終端服務(wù)器超出最大允許鏈接數(shù)”諸如此類錯誤導(dǎo)致無法正常登錄終端服務(wù)器,引起 該問題的原因在于終端服務(wù)的缺 省鏈接數(shù)為2個鏈接,并且當(dāng)?shù)卿涍h(yuǎn)程桌面后如果不是采用注銷方式退出,而是直接關(guān)閉遠(yuǎn)程桌面窗口,那么 實(shí)際上會話并沒有釋放掉,而是繼續(xù)保留在服務(wù)器端, 這樣就會占用總的鏈接數(shù),當(dāng)這個數(shù)量達(dá)到最大允許值時就會出現(xiàn)上面的提示。 如何避免? 一、用注銷來退出遠(yuǎn)程桌面而不是直接關(guān)閉窗口 二、限制已斷開鏈接的會話存在時間 1、從終端服務(wù)配置中修改 運(yùn)行-Tscc.msc(終端服務(wù)配置)-連接-雙擊RDP-Tcp或右擊-屬性-會話-選中第一個的替代用戶設(shè)置(O)-結(jié)束已斷開的會話[將默認(rèn)值“ 從不”改為一個適當(dāng)?shù)臅r間,比如30分鐘] 2、從組策略修改 開始-運(yùn)行-gpedit.msc-計(jì)算機(jī)配置-管理模板-windows組件-終端服務(wù)-會話 右邊窗口選擇 為斷開的會話設(shè)置時間限制 -選擇已啟用,選擇一個時間 三、增加最多鏈接數(shù) 1、 從終端服務(wù)配置中修改:運(yùn)行-Tscc.msc(終端服務(wù)配置)-連接-雙擊RDP-Tcp或右擊-屬性,選擇“網(wǎng)卡”選項(xiàng)卡-修改“最大連接數(shù)” 改成你 所需的值,當(dāng)然這個值不也能太大,否則會占用較多的系統(tǒng)資源。不過這里修改的值好像不起作用,設(shè)置成無限制時照樣還是會出現(xiàn)本 文所說的情況。 2、組策略級別要高于終端服務(wù)配置,當(dāng)啟用組策略后終端服務(wù)配置中的相應(yīng)選項(xiàng)會變成灰色不可修改 運(yùn)行-gpedit.msc-計(jì)算機(jī)配置-管理模板-Windows組件-終端服務(wù) 雙擊右邊的”限制連接數(shù)量“-選擇”已啟用“-填入允許的最大連接數(shù) 四、改變遠(yuǎn)程終端模式 打開“控制面板”,雙擊“添加刪除程序”,單擊“添加刪除Windows組件”,“組件”,在Windows組件向?qū)υ捒蛑羞x中“終端服務(wù)” , “ 下一步”,“應(yīng)用服務(wù)器”,“下一步”,然后按照提示即可改變終端服務(wù)的模式。 Windows 2000終端服務(wù)有2種運(yùn)行模式: 遠(yuǎn)程管理模式和應(yīng)用程序服務(wù)器模式。遠(yuǎn)程管理模式允許系統(tǒng)管理員遠(yuǎn)程管理服務(wù)器,而且只允許2個 終端會話同時登錄終端服務(wù)器。應(yīng)用程序服務(wù)器模式允許用戶 運(yùn)行一個以上應(yīng)用程序,允許多個用戶從終端登錄訪問服務(wù)器。但是,應(yīng)用終端 服務(wù)的用戶必須有終端服務(wù)授權(quán),即必須在90天之內(nèi)在這個域或工作組中設(shè)置終端 服務(wù)授權(quán)服務(wù)器,否則用戶需刪除應(yīng)用程序,然后再重新安 裝。 五、修改本地安全策略 控制面板>>管理工具>>本地安全策略>>本地策略>>安全選項(xiàng)>> 1、先找到>>Microsoft網(wǎng)絡(luò)服務(wù)器:在掛起會話之前所需的空閑時間 默認(rèn)為:15分鐘,改為自己所需要的時間(就是登陸后無動作空閑超過多少時間后自動斷開) 2、然后找到>>網(wǎng)絡(luò)安全:在超過登錄時間后強(qiáng)制注銷。默認(rèn)為:已禁用,一定要改為:已啟用 如果已經(jīng)發(fā)生解決辦法: 1、首先你可以telnet到此主機(jī)上(不管你用哪種方法),當(dāng)然如果能直接操作機(jī)器更好,不過直接操作就不必用命令行了,那當(dāng)然是知道機(jī)器超 級管理員的密碼的情況下,可以使用OpenTelnet來打開遠(yuǎn)程服務(wù)器的Telnet端口。 2、Telnet上去后,先看登陸的用戶: 輸入命令:query user 系統(tǒng)返回: C:>query user USERNAME?SESSIONNAME?ID?STATE?IDLE TIME?LOGON TIME k12update?console?1?運(yùn)行中?2007-3-14 14:57 此時可以看出的可能都不一樣,根據(jù)具體情況而定。 ID 0 的用戶是本地登陸的,ID 1 和 ID 12是3389登陸的用戶,前者在運(yùn)行中,后者已經(jīng)斷開了,但是斷開了仍然占用系統(tǒng)資源和通道,我們要把 它踢掉。如下進(jìn)行操作即可。 輸入命令:logoff 1 3、如果服務(wù)器關(guān)閉了telnet功能(這是默認(rèn)的),還可以通過SqlServer的xp_cmdshell擴(kuò)展存儲過程,使用格式:master.dbo.xp_cmdshell ' 命令內(nèi)容',其余可參考第二步。此方式要求有訪問xp_cmdshell的權(quán)限 上面的解決辦法基本沒有用 后來我用 服務(wù)器終端服務(wù)器超出最大允許連接數(shù)時,以前考慮用冷啟動服務(wù)器,但這樣必須跑一趟機(jī)房,最近發(fā) 現(xiàn)最好的辦法就是在“運(yùn)行”命令行里輸入:mstsc /console /v:你的服務(wù)器IP:遠(yuǎn)程端口,測試有效。 |
|