陶軍毅
由于我長期從事初中信息技術教學和機房管理工作,深知機房管理對信息技術教學的重要性。在學校機房的日常管理和維護中,我經(jīng)常碰到如下問題。
(1)病毒的問題,如ARP病毒、機器狗病毒等。
(2)系統(tǒng)安全的問題,如修補系統(tǒng)漏洞、關閉危險端口、關閉不安全的服務等。
(3)網(wǎng)絡維護的問題,如更換DNS、網(wǎng)關等。
(4)學生作業(yè)上交和管理的問題,即如何提交作業(yè),并對他們進行管理。
(5)其他問題,如自動返回學生端信息,以便了解情況。
那么,如何高效地解決這些問題呢?我認為使用批處理可以較好地解決這些問題。批處理是一種腳本語言,具有使用方便、靈活,功能強大,自動化程度高的特點,它由DOS或者Windows系統(tǒng)內(nèi)嵌的命令解釋器(通常是CMD.EXE)解釋運行,在語言處理上類同QB,是解釋性腳本語言,本文主要介紹機房管理中使用批處理的一些經(jīng)驗。
一、在服務器與客戶機之間建立批處理通道
首先在服務端創(chuàng)建一個共享文件夾,共享名為bat$,權(quán)限為只讀。接下來,在文件夾內(nèi)創(chuàng)建一個名為start.bat的空文件,以后對學生端進行操作的批處理代碼都寫在這個文件里,與代碼相關的文件也放在這個共享文件夾內(nèi)。在學生端用VBS腳本調(diào)用服務器端的start.bat及相關文件,VBS腳本文件取名為start.vbs并放在學生端的啟動組中,或者放在學生端的c:windowssystem32中,接著添加到注冊表的啟動項中,最后把學生端系統(tǒng)保護起來。start.vbs腳本如下:
dim wsh
set wsh = wscript.createobject("wscript.shell")
wscript.sleep(1000)
ireturn=wsh.run("cmd /c \192.168.3.173at$start.bat",0,true)
set wsh=nothing
wscript.quit
添加到注冊表的啟動項中的批處理腳本如下:
reg add hklmsoftwaremicrosoftwindows currentversion un /v bat /t reg_expand_sz /d"c:windowssystem32start.vbs" /f
注:192.168.3.173為服務器端IP地址,學生端系統(tǒng)是Windows XP。
二、批處理在機房日常維護中的應用
通過批處理通道,在服務端的start.bat文件中添加下列代碼,學生端啟動后自動實現(xiàn)下列目標。
1.病毒防御
(1)學生端自動防ARP病毒。
此病毒可致局域網(wǎng)癱瘓,最好的解決辦法是“雙向綁定”。即路由中綁定學生機的ip-mac,學生機中綁定路由的ip-mac及學生機自身的ip-mac綁定。在服務器端的start.bat文件中添加如下代碼。
:: 綁定路由
arp -s 192.168.3.100-1d-0f-3d-71-5c
:: 綁定本機
for /f "tokens=2 delims=:" %%i in ('ipconfig /all ^|findstr /i /c:"physical address"') do (set macself=%%i)
for /f "tokens=2 delims=:" %%i in ('ipconfig /all ^|findstr /i /c:"ip address"') do (set ip=%%i)
arp -s %ip: =%%macself: =%
(2)學生端自動抵御機器狗病毒。
此病毒破壞計算機的還原系統(tǒng),增加了信息技術課的不確定性。解決的方法是,從360網(wǎng)站下載網(wǎng)吧還原保護器遠調(diào)版,并解壓到bat$dog文件夾,然后設置好返回信息的存放路徑,并在服務器端的start.bat文件中添加如下代碼:
start “”“\192.168.3.173at$dogGuardField.exe”
2.提高系統(tǒng)的安全性
(1)學生端自動關閉高危的端口。
下載或從安裝盤提取微軟小工具ipseccmd.exe,放在bat$文件夾里,然后在服務器端的start.bat文件中添加如下代碼:
@ echo off
xcopy /y \192.168.3.173at$ipseccmd.exe c:windowssystem32
ipseccmd -w reg -p "blockp" -r "tcp135" -f *+0:135:tcp -n BLOCK-x
ipseccmd -w reg -p "blockp" -r "udp135" -f *+0:135:udp -n BLOCK-x
不同的病毒和木馬使用不同的協(xié)議和端口入侵,比如MSBlast沖擊波蠕蟲使用TCP:4899,關閉該端口的方法如下: ipseccmd -w reg -p " blockp " r “tcp4899" -f *+0:4899:tcp -n BLOCK -x ??梢愿鶕?jù)實際需要隨時關閉高危端口。
(2)學生端自動打系統(tǒng)補丁。
為了增強Windows系統(tǒng)的安全性,須經(jīng)常打補丁。下載所需補丁后,放在服務端的bat$12文件夾里,并在服務器端的start.bat文件中添加如下代碼:
if exist c:12 (rd c:12 /s/q) else (
xcopy /e/y/i 192.168.3.173at$12 c:12
for /r c:12 %%i in (*.exe) do %%i/passive/norestart
shutdown-r)
以上代碼能實現(xiàn)補丁的自動安裝、安裝后自動重啟等功能,從而提高了工作效率。
(3)學生端自動刪除默認的共享以增加安全性。
::刪除每個分區(qū)下的默認共享.
for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do(
if exist %%a: ( net share %%a$ /delete) )
::刪除 admin$ 默認共享
net share admin$ /delete
::通過注冊表禁用Admin$共享,以防重啟后再次加載
reg add HKLMSYSTEMCurrentControlSet Serviceslanmanserverparameters /v AutoShareWks /t reg_dword/d 0x00000000 /f
reg add HKLMSYSTEMCurrentControlSet Serviceslanmanserverparameters /v AutoShareserver /t reg_dword/d 0x00000000 /f
三、提高網(wǎng)絡維護的效率
學生端自動修改IP地址、子網(wǎng)掩碼、網(wǎng)關、DNS、計算機名。
(1)把下列代碼保存成批處理文件。機房正常工作時,在服務器端運行此文件,可以收集學生機IP地址和MAC地址。把生成的ip-mac.txt文件存放到服務端的bat$文件夾中。
@echo off &echo正在收集中,請等待……
set "aa=192.168.3."
cd.>c:ip-mac.txt
for /l %%i in (1,1,254) do (ping %aa%%%i -n 1 -w 10)>nul2>nul
(for /f "tokens=1,2 skip=3%%i in ('arp -a') do (if “%%j” neq “00-00-00-00-00-00” echo%%i %%j))>>c: ip-mac.txt
(2)根據(jù)學生機的MAC地址,修改學生機的計算機名、IP地址、網(wǎng)關、子網(wǎng)掩碼和DNS,在服務器端的start.bat文件中添加如下代碼:
setlocal enabledelayedexpansion
for /f "tokens=2 delims=:" %%i in ('ipconfig /all ^| find /i "physical address"') do set "macself=%%i"
xcopy /y \192.168.3.173at$ip-mac.txt c:
for /f "tokens=1,2" %%i in (c:ip-mac.txt) do (
set ip=%%i
set name=stu!ip:~10!
if /i "%macself: =%" equ "%%j" (
::改學生機的計算機名
reg add "HKLMSystemCurrentControlSetControl ComputerNameActiveComputerName" /v ComputerName /t reg_sz /d !name! /f
reg add "HKLMSystemCurrentControlSet ServicesTcpipParameters" /v "NV Hostname" /t reg_sz /d !name! /f
reg add "HKLMSystemCurrentControlSet ServicesTcpipParameters" /v Hostname /t reg_sz /d !name! /f
::改IP子網(wǎng)掩碼 網(wǎng)關
netsh interface ip set address name="本地連接" source=static addr=!ip! mask=255.255.255.0 gateway="192.168.3.1" gwmetric=0
::改DNS
netsh interface ip set dns name="本地連接" source=static addr="221.12.1.228" register=PRIMARY
netsh interface ip add dns name="本地連接" addr="202.96.104.17"
netsh interface ip set wins name="本地連接" source=static addr=none ))
del c:ip-mac.txt /f/q
四、學生端作業(yè)的提交和管理
1.用批處理提交作業(yè)
很多教師用FTP來接收學生的作業(yè),其實批處理也可實現(xiàn)。在服務端建立一個權(quán)限為讀取和更改的文件夾,名稱為“學生作業(yè)$”。在服務器端start.bat添加如下代碼:
xcopy/y“\192.168.3.173at$作業(yè)提交.bat”d:
其中“作業(yè)提交.bat”文件存放在“bat$”中,其代碼如下:
@echo off
set /p name1=請輸入你的名字:
set name1=%name1%%date:~0,10%
set name2=%name1:-=%
set name2=d:\%name1%
md %name2%
set /p="請把要上交的文件或文件夾存放到% name2%,并按任意鍵繼續(xù)。"
xcopy /e/y/i/s %name2%\192.168.3.173學生作業(yè)$\%name1% 1>nul && echo 提交成功
pause>nul
2.查找和刪除超過指定大小的文件
有些學生可能會上傳游戲文件,而這些文件又很大,這時,把下列代碼保存成“刪除.bat”,并在服務器端直接運行,即可在服務器端查找和刪除超過指定大小的文件。
@echo off
setlocal enabledelayedexpansion
for /r F:學生作業(yè)\%%i in (*) do (
set /a aa=%%~zi
set /a aa=!aa: =!
echo %%~fi
if!aa! gtr 20000000(
set /p c= %%~fi大于20m要刪除嗎?刪除請輸入y:
if !c! == y del /q/f "%%~fi" && echo %%~fi success
))
pause>nul
批處理除了能實現(xiàn)上述功能外,還能解決其他問題,而這些解決方式需要機房管理者不斷地探索和挖掘。
(作者單位:浙江慈溪市杭州灣中學)