Utility bakeng sa khokahano ea moriti oa motho oa bao e seng motsamaisi ho mananeo a basebelisi ba RDP ho WinServer 2012R2

Bothata nakong ea ho behelloa ka thoko ha khoebo e bile tse latelang: hoa hlokahala ho fokotsa palo ea ho etela liofisi ke litsebi tse sebeletsang le ho buisana le software ea kopo, 'me ho bua 'nete, basebelisi ba atisa ho sebelisa hampe thuso ea litsebi ntle le ho batla ho etsa lipatlisiso. taba ka boeona, ba re "ba tla tla - ba tla thusa - ba tla e etsa, empa ke tla tsuba / ho noa kofi, joalo-joalo." Litherisano tsa mohala ha u arolelana seva li sebetsa haholoanyane ha u sheba skrine e hole.

Utility bakeng sa khokahano ea moriti oa motho oa bao e seng motsamaisi ho mananeo a basebelisi ba RDP ho WinServer 2012R2

Ka mor'a "ho qaptjoa" ha baesekele ea rona, ho ile ha hlaha tlhahisoleseding e bohlale ka sehlooho sa sengoloa: RDS Shadow - khokahano ea moriti ho linako tsa basebelisi ba RDP ho Windows Server 2012 R2 kapa Mokhoa oa moriti oa mosebelisi ea se nang tokelo ho windows seva kapa Ho abela tsamaiso ea liboka tsa RDP. Kaofela ha tsona li kenyelletsa tšebeliso ea console, leha e le ka likarolo tsa moqoqo o bonolo.

Lintlha tsohle tse ka tlase li reretsoe ba e mamella ho khopama ho sa tloaelehang ka tloaelo ho fumana sephetho se lakatsehang, ho qapa mekhoa e sa hlokahaleng.
E le hore ke se ke ka "hula katse ka mohatla," ke tla qala ka ea ho qetela: baesekele e sebetsa bakeng sa mosebedisi ea tloaelehileng ea sebelisang lisebelisoa. AdmiLink, eo re lebohang mongoli oa eona.

I. Console le moriti RDP.

Ho tloha ka tšebeliso le litokelo tsa motsamaisi oa khomphutha ea Motsamaisi oa Litšebeletso -> QuickSessionCollection -> ka ho tobetsa lenaneong la mosebelisi ea nang le thahasello, ho khetha Shadow ho tsoa ho menyu ea litaba. bakeng sa basebetsi ba rutang mokhoa oa ho sebelisa software, ha se khetho, mokhoa o mong oa "lehong" o ne o nkoa, e leng:

1. Fumana ID ea RDP ea kopano:

query user | findstr Administrator

kapa:

qwinsta | findstr Administrator 

Ho feta moo "| findstr Mookameli"Ho ne ho le bonolo ha feela o tseba hore na hantle-ntle ke eng mohlokomeli oa o hloka, kapa sebelisa feela karolo ea pele ho bona bohle ba kene ho seva.

Utility bakeng sa khokahano ea moriti oa motho oa bao e seng motsamaisi ho mananeo a basebelisi ba RDP ho WinServer 2012R2

2. Hokela lenaneong lena, ha feela o le sebakeng maano a sehlopha Khetho ea "Beha melao ea taolo e hole bakeng sa mananeo a basebelisi ba Litšebeletso tsa Remote Desktop" e khethoa bonyane khetho ea "Monitor session with user permit" e khethiloeng (ho feta):

mstsc /shadow:127

Ka kopo elelloa hore lenane le tla ba le mabitso a basebelisi feela.

Ke pheta hore ntle le litokelo tsa admin u tla fumana tse latelang:

Utility bakeng sa khokahano ea moriti oa motho oa bao e seng motsamaisi ho mananeo a basebelisi ba RDP ho WinServer 2012R2

Empa bakeng sa debugging ea pele ea lenaneo le tla tšohloa, ke sebelisitse ak'haonte e nang le litokelo tsa batsamaisi.

II. Lenaneo

Kahoo polelo ea bothata: ho theha sebopeho se bonolo sa graphical ho hokela mohopolo oa moriti oa mosebelisi ka tumello ea hae, ho romella mosebelisi molaetsa. Tikoloho ea mananeo e khethiloeng ke Lazaro.

1. Re fumana lethathamo le felletseng la basebelisi ba "login" - "lebitso le felletseng" ho tsoa ho motsamaisi, kapa hape ka console:

wmic useraccount get Name,FullName 

le hona ha ho motho ea hanelang:

wmic useraccount get Name,FullName > c:testusername.txt

Hang-hang ke tla re ke Lazaro ea neng a e-na le bothata ba ho sebetsana le faele ena, kaha ka ho sa feleng encoding ea eona ke UCS-2, kahoo ke ile ka tlameha ho e fetolela ho UTF-8 e tloaelehileng. Ho na le li-tab tse ngata ka har'a sebopeho sa faele, kapa ho na le libaka tse ngata, tseo ho ileng ha etsoa qeto ea ho li sebetsa ka mokhoa o hlophisitsoeng; haufinyane bothata ba khouto bo tla rarolloa, 'me faele e tla ntlafatsoa ka mokhoa o hlophisitsoeng.

Kahoo, mohopolo ke ho ba le foldara e fumanehang ho basebelisi ba lenaneo, mohlala c:test, eo ho eona ho tla ba le lifaele tse 2: ea pele e nang le ho kena le lebitso le felletseng, ea bobeli e nang le id_rdp le ho kena ha basebelisi. Ka mor'a moo, re sebetsana le data ena ka hohle kamoo re ka khonang :).

Khabareng, ho ikamahanya le lenane la linako, re fetisetsa litaba tsena (ho kena le lebitso le felletseng) ho sehlopha:

procedure Tf_rdp.UserF2Array;
var 
  F:TextFile;   i:integer;   f1, line1:String;   fL: TStringList;
begin //f_d глобальный путь к размещению файлов 
f1:=f_d+'user_name.txt';     //задача считать в массив содержимое файла
fL := TStringList.Create; // строку подвергнем метамарфозам с разделителями
fL.Delimiter := '|'; fL.StrictDelimiter := True;
AssignFile(F,f1); 
try // Открыть файл для чтения
  reset(F); ReadLn(F,line1);
  i:=0;
while not eof(F) do // Считываем строки, пока не закончится файл
begin
ReadLn(F,line1);
line1:= StringReplace(line1, '  ', '|',[]); //заменяем первый попавш.2пробела разделителем |
// удаляем все двойные пробелы
while pos('  ',line1)>0 do line1:= StringReplace(line1, '  ', ' ', [rfReplaceAll]);
begin
if (pos('|',line1)>0) then
begin //если разделитель существует заносим его в массив
fL.DelimitedText :=line1; // разбиваем на столбцы
if (fL[0]<>'') then //если учетка имеет имя
begin //вносим ее в массив
 inc(i); // избавляемся от возможных одиночных пробелов в логине
 fam[0,i]:=StringReplace(fL[1],' ','',[rfReplaceall, rfIgnoreCase]);
 fam[1,i]:=fL[0];
 end;end;end;end; // Готово. Закрываем файл.
 CloseFile(F);
 Fl.Free;
 except
 on E: EInOutError do  ShowMessage('Ошибка обработки файла. Детали: '+E.Message);
 end;end;

Ke kopa tšoarelo bakeng sa "khoutu e ngata", lintlha tse latelang li tla ba tse khutšoanyane haholoanyane.

2. Re sebelisa mokhoa o tšoanang ho tloha serapeng se fetileng, re bala sephetho sa ho sebetsana le lenane ho karolo ea StringGrid, ha ke ntse ke tla fana ka karolo ea "bohlokoa" ea khoutu:

2.1 Re fumana lenane la hajoale la linako tsa RDP ka faele:

f1:=f_d+'user.txt';
cmdline:='/c query user >'+ f1;
if ShellExecute(0,nil, PChar('cmd'),PChar(cmdline),nil,1)=0 then;
Sleep(500); // можно и подольше ждать пока файл для чтения создается

2.2 Sebelisa faele (ho bontšitsoe mela ea bohlokoa feela):

StringGrid1.Cells[0,i]:=fL[1]; StringGrid1.Cells[2,i]:=fL[3]; //кидаем в цикле в StringGrid1
login1:=StringReplace(fL[1],' ','',[rfReplaceall, rfIgnoreCase]); //убираем из логина пробелы
if (SearchArr(login1)>=0) then //ищем в массиве из п1. логин и записываем в таблицу ФИО
StringGrid1.Cells[1,i]:=fam[1,SearchArr(login1)]
else StringGrid1.Cells[1,i]:='+'; // либо записываем плюсик:)
.... //в зависимости от выбора пользователя сортируем и форматируем по данным
if (b_id.Checked=true) then SortGrid(0) else SortGrid(1);
StringGrid1.AutoSizeColumn(0);StringGrid1.AutoSizeColumn(1); StringGrid1.AutoSizeColumn(2);  

3. Khokahano e tobileng ka boeona ka ho tobetsa mohala o nang le mosebelisi le nomoro ea hae ea lenaneo:

  id:=(StringGrid1.Row);// узнаем номер строки  IntToStr(StringGrid1.Row)
  ids:=StringGrid1.Cells[2,id]; //получаем идентификатор rdp
  cmdline:='/c mstsc /shadow:'+ ids; //и подключаемся....
 if (b_rdp.Checked=True) then  if ShellExecute(0,nil, PChar('cmd'),PChar(cmdline),nil,1) =0 then;       

4. Mekhabiso e 'maloa e entsoe, joalo ka ho hlophisa ka ho tobetsa konopo ea radio, le melaetsa e eang ho mosebelisi kapa basebelisi bohle.

Utility bakeng sa khokahano ea moriti oa motho oa bao e seng motsamaisi ho mananeo a basebelisi ba RDP ho WinServer 2012R2

→ Khoutu e felletseng ea mohloli e ka bonoa mona

III. Ho sebelisa AdminLink - seo ke se boneng:

AdminLink e hlahisa tsela e khuts'oane e bonts'ang sebaka sa ts'ebeliso admilaunch.exe, le kopi ea hau ea sesebelisoa sa ho qala AdmiRun.Exe e fumanehang foldareng ea mosebelisi, mohlala vasya, mofuta C: UsersvasyaWINDOWS. Ka kakaretso, ha se ntho e 'ngoe le e' ngoe e mpe haholo: o ka bapala ka litokelo tsa phihlello ea faele e khuts'oane le tse ling ho hlakola letsoalo la hau la admin.

Source: www.habr.com

Eketsa ka tlhaloso