Windows: хэн хаана нэвтэрсэнийг олж мэдээрэй

Windows: хэн хаана нэвтэрсэнийг олж мэдээрэй
- Өө, надад юу ч тохирохгүй, туслаач!
- Санаа зоволтгүй, бид одоо бүгдийг засах болно. Компьютерийнхээ нэрийг өгөөч...
(дуудлагаас эхлээд техникийн дэмжлэг хүртэл төрөл жанрын сонгодог)

Хэрэв танд la BgInfo хэрэгсэл байгаа эсвэл таны хэрэглэгчид Windows+Pause/Break товчлолын талаар мэддэг бөгөөд үүнийг хэрхэн дарахаа мэддэг бол сайн. Машиныхаа нэрийг мэдэж чадсан ховор сорьцууд ч бий. Гэхдээ ихэвчлэн залгагч гол асуудлаас гадна хоёр дахь асуудалтай тулгардаг: компьютерийн нэр/IP хаягийг олж мэдэх. Ихэнхдээ энэ хоёр дахь асуудлыг шийдэхийн тулд эхнийхээс хамаагүй их цаг хугацаа шаардагддаг (мөн та зүгээр л ханын цаасыг солих эсвэл алга болсон товчлолыг буцааж өгөх хэрэгтэй байсан :).
Гэхдээ иймэрхүү зүйлийг сонсох нь илүү сайхан байдаг:
- Татьяна Сергеевна, санаа зовох хэрэггүй, би аль хэдийн холбогдсон байна ...


Мөн та үүнд нэг их зүйл хэрэггүй.
Техникийн дэмжлэг үзүүлэх мэргэжилтэн нь зөвхөн машинуудын нэрийг цээжилж, хэн аль нь ажилладагийг санах хэрэгтэй.
Бидний одоо ашиглаж байгаа шийдлийг тайлбарлахаасаа өмнө би бусад хувилбаруудыг товчхон авч үзэх бөгөөд ингэснээр би тэднийг шүүмжилж, сонголтоо тайлбарлах болно.

  1. BgInfo, Ширээний компьютерийн мэдээлэл гэх мэт. Мөнгө их байвал төлбөртэй нь ч бий. Үүний гол зүйл бол техникийн мэдээллийг ширээний компьютер дээр харуулах явдал юм: машины нэр, IP хаяг, нэвтрэх гэх мэт. Desktop Info дээр та гүйцэтгэлийн графикийг дэлгэцийн хагаст шахаж болно.
    Миний дургүй байгаа зүйл бол жишээлбэл, ижил Bginfo-ийн хувьд хэрэглэгч шаардлагатай өгөгдлийг харахын тулд цонхыг багасгах хэрэгтэй. Би болон миний хамт олон BgInfo дээр нэг бус удаа ажиглалт хийсэн өвөрмөц олдвор, хуучин текст дээр шинэ текст гарч ирэх үед.
    Админууд ширээний компьютер дээр сунгасан муурны нүүрэн дээр аймшигтай 192.168.0.123 зурж, дэвсгэр зургийн гоо зүйн үзэмжийг алдагдуулдаг нь зарим хэрэглэгчдийг бухимдуулж байгаа нь мэдээжийн хэрэг энэ нь ажлын урам зоригийг бүрмөсөн устгаж байна. .
  2. "Би хэн бэ" гэсэн шошго (төгсгөлд нь асуултын тэмдэг нэмж бүү оролдоорой :). Ширээний компьютер дээрх сонгодог товчлол бөгөөд үүний ард цэвэр эсвэл тийм ч цэвэр биш скрипт нуугдаж, харилцах цонх хэлбэрээр шаардлагатай мэдээллийг харуулдаг. Заримдаа, товчлолын оронд тэд скриптийг өөрөө ширээний компьютер дээр тавьдаг бөгөөд энэ нь IMHO нь ёс суртахуунгүй юм.
    Сул тал нь эхний тохиолдол шиг товчлолыг эхлүүлэхийн тулд та бүх нээлттэй цонхыг багасгах хэрэгтэй (бид ажлын машин дээрээ ганц солиотер цонх онгойлгосон азын хонгоруудыг тооцохгүй). Дашрамд хэлэхэд, таны хэрэглэгчид хаана дарж бүх цонхыг багасгахаа мэддэг үү? Зөв шүү, админы нүдэн дэх хуруу.

Дээр дурдсан хоёр арга нь гол дутагдалтай тал нь хэрэглэгч мэдээлэл олж авахад оролцдог, сохор, тэнэг эсвэл бүр худал хэлдэг гэдгийг энэ таг харуулж байна.
Хүн бүр Windows үйлдлийн систем дээр машиныхаа нэрийг хаанаас хайхаа мэддэг байх үед би компьютерийн мэдлэгийг нэмэгдүүлэх сонголтыг авч үзэхгүй: энэ бол сайн хэрэг, гэхдээ маш хэцүү. Хэрэв компанид боловсон хүчний солилцоо байгаа бол энэ нь бүрэн сүйрнэ. Би юу хэлэх вэ, ихэнх тохиолдолд тэд нэвтрэхээ ч санахгүй байна.

Би сэтгэлээ урсгаж, одоо гол зүйл рүүгээ орлоо.
Хабаровын оршин суугчийн санааг үндэс болгон авсан mittel нь Энэ нийтлэлийг үзнэ үү.
Уг санааны мөн чанар нь хэрэглэгч Windows-д нэвтрэх үед нэвтрэх скрипт нь хэрэглэгчийн бүртгэлийн тодорхой шинж чанарт шаардлагатай мэдээллийг (цаг хугацаа, машины нэр) оруулдаг явдал юм. Мөн таныг системээс гарах үед үүнтэй төстэй гарах скрипт ажиллана.

Энэ санаа нь надад таалагдсан ч хэрэгжүүлэх явцад сэтгэл хангалуун бус байсан зүйл бий.

  1. Хэрэглэгчдэд нэвтрэх болон гарах скриптүүдийг тодорхойлсон бүлгийн бодлого нь бүхэл домэйнд хамаарах тул скриптүүд нь хэрэглэгчид нэвтэрсэн дурын машин дээр ажиллах болно. Хэрэв та терминалын шийдлүүдийг ажлын станцуудын хамт (жишээлбэл, Microsoft RDS эсвэл Citrix бүтээгдэхүүн) ашигладаг бол энэ арга нь тохиромжгүй болно.
  2. Өгөгдлийг энгийн хэрэглэгч зөвхөн унших боломжтой хэрэглэгчийн бүртгэлийн хэлтэст оруулсан болно. Хэрэглэгчийн дансны атрибутаас гадна скрипт нь компьютерийн дансны Департамент шинж чанарт өөрчлөлт оруулдаг бөгөөд анхдагчаар хэрэглэгчид үүнийг өөрчлөх боломжгүй. Тиймээс, шийдэл нь ажиллахын тулд зохиогч AD объектуудын аюулгүй байдлын тохиргооны стандартыг өөрчлөхийг санал болгож байна.
  3. Огнооны формат нь зорилтот машин дээрх нутагшуулах тохиргооноос хамаардаг тул нэг машинаас 10 оны 2018-р сарын 14-ны 53:11, нөгөө машинаас 10/18/2-ны 53:XNUMX цагийг авах боломжтой.

Эдгээр дутагдлыг арилгахын тулд дараахь зүйлийг хийсэн.

  1. GPO нь домэйнтэй биш, харин машинтай OU-тэй холбогдсон (би хэрэглэгчид болон машинуудыг өөр OU-д хувааж, бусдад зөвлөгөө өгдөг). Түүнээс гадна, төлөө давталтын бодлогыг боловсруулах горим горимыг тохируулсан нийлүүлэх.
  2. Скрипт нь зөвхөн атрибут дахь хэрэглэгчийн бүртгэлд өгөгдөл бичих болно мэдээлэл, үүнийг хэрэглэгч өөрийн дансанд бие даан өөрчилж болно.
  3. Аттрибутын утгыг үүсгэдэг кодын хэсгийг өөрчилсөн

Одоо скриптүүд дараах байдалтай байна.
SaveLogonInfoToAdUserAttrib.vbs

On Error Resume Next
Set wshShell = CreateObject("WScript.Shell")
strComputerName = wshShell.ExpandEnvironmentStrings("%COMPUTERNAME%")
Set adsinfo = CreateObject("ADSystemInfo")
Set oUser = GetObject("LDAP://" & adsinfo.UserName)
strMonth = Month(Now())
If Len(strMonth) < 2 then
  strMonth = "0" & strMonth
End If
strDay = Day(Now())
If Len(strDay) < 2 then
  strDay = "0" & strDay
End If
strTime = FormatDateTime(Now(),vbLongTime)
If Len(strTime) < 8 then
  strTime = "0" & strTime
End If
strTimeStamp = Year(Now()) & "/" & strMonth & "/" & strDay & " " & strTime
oUser.put "info", strTimeStamp & " <logon>" & " @ " & strComputerName
oUser.Setinfo

SaveLogoffInfoToAdUserAttrib.vbs

On Error Resume Next
Set wshShell = CreateObject("WScript.Shell")
strComputerName = wshShell.ExpandEnvironmentStrings("%COMPUTERNAME%")
Set adsinfo = CreateObject("ADSystemInfo")
Set oUser = GetObject("LDAP://" & adsinfo.UserName)
strMonth = Month(Now())
If Len(strMonth) < 2 then
  strMonth = "0" & strMonth
End If
strDay = Day(Now())
If Len(strDay) < 2 then
  strDay = "0" & strDay
End If
strTime = FormatDateTime(Now(),vbLongTime)
If Len(strTime) < 8 then
  strTime = "0" & strTime
End If
strTimeStamp = Year(Now()) & "/" & strMonth & "/" & strDay & " " & strTime
oUser.put "info", strTimeStamp & " <logoff>" & " @ " & strComputerName
oUser.Setinfo

Logon болон Logoff скриптүүдийн хоорондох бүх ялгааг хамгийн түрүүнд олж мэдсэн хүн үйлийн үрийн шагнал авах болно. 🙂
Мөн визуал мэдээлэл авахын тулд дараах жижиг PS скриптийг үүсгэсэн.
Get-UsersByPCsInfo.ps1

$OU = "OU=MyUsers,DC=mydomain,DC=com"
Get-ADUser -SearchBase $OU -Properties * -Filter * | Select-Object DisplayName, SamAccountName, info | Sort DisplayName | Out-GridView -Title "Информация по логонам" -Wait

Нийтдээ бүх зүйлийг нэгээс хоёр гурав гэж тохируулсан:

  1. шаардлагатай тохиргоо бүхий GPO үүсгэж, хэрэглэгчийн ажлын станцтай хэлтэстэй холбоно уу:
    Windows: хэн хаана нэвтэрсэнийг олж мэдээрэй
  2. цай ууцгаая (Хэрэв AD олон хэрэглэгчтэй бол цай их хэрэгтэй болно :)
  3. PS скриптийг ажиллуулаад үр дүнг аваарай:
    Windows: хэн хаана нэвтэрсэнийг олж мэдээрэй
    Цонхны дээд хэсэгт нэг буюу хэд хэдэн талбарын утгууд дээр үндэслэн өгөгдлийг сонгох боломжтой тохиромжтой шүүлтүүр байдаг. Хүснэгтийн баганууд дээр дарснаар бүртгэлийг харгалзах талбаруудын утгуудаар эрэмбэлдэг.

Бид шийдлээ маш гоё "баглаж" чадна.
Windows: хэн хаана нэвтэрсэнийг олж мэдээрэй
Үүнийг хийхийн тулд бид "объект" талбарт иймэрхүү зүйлтэй байх техникийн дэмжлэг үзүүлэх мэргэжилтнүүдийн скриптийг эхлүүлэх товчлолыг нэмнэ.
powershell.exe -NoLogo -ExecutionPolicy Bypass -File "servershareScriptsGet-UsersByPCsInfo.ps1"

Техникийн дэмжлэг үзүүлэх олон ажилчид байгаа бол та товчлолыг ашиглан тарааж болно GPP.

Хэдэн эцсийн сэтгэгдэл.

  • PowerShell-д зориулсан Active Directory модулийг PS скриптийг эхлүүлсэн машин дээр суулгасан байх ёстой (үүнийг хийхийн тулд Windows бүрэлдэхүүн хэсгүүдэд AD удирдлагын хэрэгслийг нэмэхэд л хангалттай).
  • Анхдагч байдлаар, хэрэглэгч өөрийн акаунтын ихэнх шинж чанарыг засах боломжгүй. Хэрэв та өөр шинж чанарыг ашиглахаар шийдсэн бол үүнийг санаарай мэдээлэл.
  • Та ямар шинж чанарыг ашиглахаа холбогдох бүх хамт олондоо мэдэгдээрэй. Жишээлбэл, адилхан мэдээлэл нь Exchange Server-н админ самбарт хэрэглэгчийн шуудангийн хайрцагт интерактив байдлаар тэмдэглэл нэмэхэд ашиглагддаг бөгөөд хэн нэгэн үүнийг хялбархан дарж бичих, эсвэл нэмсэн мэдээллээ таны скриптээр дарж бичихэд гунигтай байх боломжтой.
  • Хэрэв танд олон Active Directory сайт байгаа бол хуулбарлах саатлыг анхаарч үзээрэй. Жишээлбэл, хэрэв та AD сайтын А сайтаас хэрэглэгчдийн талаарх сүүлийн үеийн мэдээллийг авч, AD сайтын B машинаас скриптийг ажиллуулахыг хүсвэл дараах зүйлийг хийж болно.
    Get-ADUser -Server DCfromSiteA -SearchBase $OU -Properties * -Filter * | Select-Object DisplayName, SamAccountName, info | Sort DisplayName | Out-GridView -Title "Информация по логонам" -Wait

    DCfromSiteA — А сайтын домэйн хянагчийн нэр (анхдагчаар Get-AdUser команд нь хамгийн ойр домайны хянагчтай холбогддог)

Windows: хэн хаана нэвтэрсэнийг олж мэдээрэй

Зургийн эх сурвалж

Хэрэв та доорх богино хэмжээний судалгаанд хамрагдвал би талархах болно.

Зөвхөн бүртгэлтэй хэрэглэгчид санал асуулгад оролцох боломжтой. Нэвтрэх, гуйя.

Та юу хэрэглэдэг вэ?

  • bginfo, Desktop info гэх мэт. (үнэгүй програм)

  • bginfo-ийн төлбөртэй аналогууд

  • Би үүнийг нийтлэлд дурдсанчлан хийх болно

  • хамааралгүй, учир нь Би VDI/RDS гэх мэтийг ашигладаг.

  • Би одоохондоо юу ч хэрэглэхгүй байгаа ч энэ талаар бодож байна

  • Би ийм мэдээлэл цуглуулах шаардлагагүй

  • бусад (сэтгэгдэл дээр хуваалцах)

112 хэрэглэгч санал өгсөн. 39 хэрэглэгч түдгэлзсэн.

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх