另類域用戶添加方案
首先介紹一下域、域用戶、計算機之間的關(guān)系:在域里面建立域用戶,計算機加入域,域用戶登錄計算機?,F(xiàn)在很多的域管理辦法就是為計算機設(shè)置某一個域用戶為管理員權(quán)限,從而禁止其他域用戶對該電腦的正常使用。常規(guī)的
首先介紹一下域、域用戶、計算機之間的關(guān)系:
在域里面建立域用戶,計算機加入域,域用戶登錄計算機。
現(xiàn)在很多的域管理辦法就是為計算機設(shè)置某一個域用戶為管理員權(quán)限,從而禁止其他域用戶對該電腦的正常使用。
常規(guī)的域建立流程是這樣:先建立域用戶,設(shè)置好域用戶名字。把計算機修改名字后加入域。添加指定的域用戶為管理員。重啟計算機。
建立域用戶就找出通訊錄,一個個的添加進去。修改計算機名字加入域,需要輸入域控的權(quán)限賬號才能加入。添加指定域用戶為管理員。也需要輸入權(quán)限賬號。
那么這些重復(fù)的步驟需要怎么優(yōu)化它吶?
重復(fù)的過程能否用批處理去完成吶?
下面就是用批處理解決這個的思路:
批處理中可以用dsadd user命令去添加域用戶, 是否就可以把用戶名,登陸賬號等信息記錄成記事本,然后運行批處理添加吶?顯然是可以的。
修改計算機名字也可以用批處理完成。
添加用戶成管理員也可以用net localgroup Administrators命令實現(xiàn)。
那么就串聯(lián)起來么?
由于需要加域都是在網(wǎng)絡(luò)環(huán)境下,這個能否利用起來吶?
我在一臺未加域電腦上能否使域控自動添加一個我需要的用戶名吶?然后根據(jù)這個用戶修改相關(guān)的計算機名、管理員。
在域控上循環(huán)運行一個添加用戶的批處理,然后去獲取一個可供寫入內(nèi)容的文件內(nèi)容。這樣不就可以實時的生成一個域用戶了么?根據(jù)建立這個域用戶的時候用到的賬號等信息不就可以快速的修改計算機名、管理員權(quán)限了么?
根據(jù)這個思路:
將批處理分為兩個部分。第一個是域控上的循環(huán)讀取添加域用戶腳本。第二個是在網(wǎng)計算機的一個寫入、修改腳本。
在域控上設(shè)置一個共享文件夾,以便第二部分寫入內(nèi)容:
————————————————————————————————————————————— @echo on
:1
for /f a in ('dir /a-d d:?* /b') do set a=a
for /f b in ('type d:?a') do set b=b
dsadd user "cn=a,ou=容器,dc=jzjx,dc=com" -company 公司 -dept 部門 -pwd p@ssw0rd -mustchpwd yes -canchpwd yes -samid b -upn b@域名.com -fn a:~0,1 -ln a:~1,5 -display a -desc 0 -office 部門 -memberof "cn=部門,ou=容器,dc=域名,dc=com" -mobile 0 -fax 10150|findstr " 成功:cn=a"&&del d:?a /f
ping 127:1 -n 2 >>nul
set a=
set b=
goto 1
—————————————————————————————————————————————
這個循環(huán)腳本就可以循環(huán)讀取共享文件D:?里面的文件名和文件內(nèi)容,并根據(jù)他們生成域賬號。 第二部分的寫法就需要非常完善了。
由于XP 系統(tǒng)還在繼續(xù)服務(wù),但是卻由于優(yōu)化太嚴(yán)重,讓加域變成了難題。
那么就要先處理這些難題。以域控IP 為192.168.91.7為例:
,————————————————————————————————————————————— @echo off
color 1e
echo 加域前的準(zhǔn)備:
echo 為優(yōu)化、精簡過的XP 系統(tǒng)啟動必要的服務(wù)。
ver|findstr "xp"&&sc config Browser start= auto
ver|findstr "xp"&&sc config lanmanServer start= auto
ver|findstr "xp"&&sc config LmHosts start= auto
ver|findstr "xp"&&sc config lanmanworkstation start= auto
for a in (server,workstation,Browser,"TCP/IP NetBIOS Helper") do net start|findstr /i /e a >>nul&&echo a已經(jīng)啟動||net start a
echo 測試與域控的通信
:2
ping 192.168.91.7 -n 2 |findstr "ms" >nul &&echo 與域控連接暢通&&goto 1||echo 與域控連接有故障&&goto 2
:1
Rem 這幾個服務(wù)就是影響加域是否正常的關(guān)鍵, 測試與域控的連通性,如果都不能訪問了。那么也不用想加域了吧。
echo 修改本地連接的DNS 信息
for /f a in ('wmic nicconfig where^(ipenabled^=true^) get index^|findstr [0-99]') do set i=a
wmic nicconfig where(index=i) call setdnsdomain ("192.168.91.7") >nul
wmic nicconfig where(index=i) call setdnsserversearchorder ("192.168.91.7") >nul
pause
rem 現(xiàn)在網(wǎng)絡(luò)連接各種各樣的,可能你這個是本地連接,另一個是無線連接,所以在修改DNS 的方法上使用了wmic 命令查找有效IP 地址的接口,在該接口設(shè)置DNS 信息。
set /p l=輸入你所在房間號
set /P n=輸入你的姓名拼音
set /P h=輸入你的姓名漢字
net use 2.168.91.7 "p@ssw0rd" /user:域名?ministrator
echo n >2.168.91.7?h
echo 等待域控主機添加賬號信息
echo 運行中,請不要關(guān)閉本窗口...
ping 127:1 -n 3 >>nul
rem 將域用戶echo 到共享文件夾里面去。讓循環(huán)腳本添加域用戶。通過n 的數(shù)值不同來錯過時間差。 set name=l-n
reg add "HKEY_LOCAL_MACHINESystemCurrentControlSetControlComputerName?tiveComputerName" /v ComputerName /t reg_sz /d name /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINESystemCurrentControlSetControlComputerNameComputerName" /v ComputerName /t reg_sz /d name /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINESystemCurrentControlSetServicesTcpipParameters" /v "NV Hostname" /t reg_sz /d name /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINESystemCurrentControlSetServicesTcpipParameters" /v Hostname /t reg_sz /d name /f >nul 2>nul
,echo 修改計算機名完畢
rem 修改計算機名,測試發(fā)現(xiàn),就只有注冊表修改計算機名的方式才可以不需要重啟就可以被域識別。 wmic computersystem where name="computername" call JoinDomainOrWorkGroup FJoinOptions=3 name="域名.com" username="administrator@域名.com" password="p@ssw0rd"
rem 關(guān)鍵的自動加域的命令
net localgroup Administrators "n@域名.com" /add
rem 權(quán)限提升
—————————————————————————————————————————————
整個批處理介紹完畢。
這里沒有涉及到部門的劃分,就是說還有修改的空間。本來擬定在建立域用戶的時候用choice 命令快速的選擇你屬于的部門以供循環(huán)腳本讀取。大家也知道XP 的未必有choice 命令。于是就放棄了這樣的寫法。部門是默認(rèn)的都在同一個部門,需要在域控上重新手動調(diào)整。