How to Get a Computer Name with PowerShell

Что такое Домен Windows и как он влияет на мой компьютер?

Домены Windows обычно используются в больших сетях — корпоративных сетях, школьных сетях и государственных сетях. Они не то, с чем вы столкнётесь дома, если у вас нет ноутбука, предоставленного вашим работодателем или учебным заведением.

Типичный домашний компьютер — обособленный объект. Вы управляете настройками и учётными записями пользователей на компьютере. Компьютер, присоединённый к домену, отличается — этими настройками управляет контроллер домена.

Prerequisites

This article will be a hands-on tutorial. If you’d like to apply the concepts you learn in this tutorial, please be sure you have PowerShell. That’s it! The article will be using PowerShell 7 (the latest as of this writing) but Windows PowerShell will probably work just as well.

Back before the days of PowerShell the only Windows command interpreter we had was good ol’ cmd .exe. Back then, we didn’t need no stinkin’ PowerShell to get a computer name; we had the hostname command!

The hostname command couldn’t be any simpler. Open up a PowerShell (or even cmd .exe prompt) and type hostname . Done. This command returns a single string (the computer name of the local computer).

Running the hostname command

Как восстановить доверительные отношения через PowerShell

Если компьютеру не удалось установить доверительные отношения с доменом, то их можно восстановить без перезагрузки компьютера прямо из PowerShell.

У этого способа есть один минус. Он не работает на старых системах, так что у кого до сих пор Windows XP 😨, то сносите это гавно мамонта и установите нормальную ось переходите сразу к следующему способу.

Итак, запускаем PowerShell Win + R powershell Shift + Enter . Давайте проверим, действительно ли компьютеру не удалось установить доверительные отношения через проверку канала между локальным компьютером и его доменом:

Для начала проверим статус

Если False – то нет доверия этому компьютеру 😆; если True – то всё в порядке. Если у вас ошибка: не удалось установить доверительные отношения то скорее всего вы увидите False. Для того, чтобы восстановить доверительные отношения в домене необходмио cбросить канал между локальным компьютером и его доменом командой:

Если не сработала команда выше, то используйте другую команду (с запросом учётных данных):

В этом случае будет запрошен логин и пароль администратора домена. Вводим его и подтверждаем сброс канала.

сброс канала между локальным компьютером и его доменом

Поздавляю! Вам удалось восстановить доверительные отношения в домене. Это можно проверить выполнив эту же команду с ключом –verbose:

восстановление доверительных отношений с доменом

И в заключение хочу добавить:

Если в у вас несколько контроллеров домена, то проверить канал между локальным компьютером и конкретным контроллером домена можно выполнив команду:

Где dc-03.itlocate.ru – ваш контроллер домена.

Задача 2: Активировать и деактивировать учетные записи

А теперь давайте деактивируем учетную запись. Продолжим работать с Jack Frost. Этот код использует параметр –Whatif, который Вы можете встретить в других комадлетах, которые осуществляют изменения, чтобы проверить мою команду не запуская ее.

А теперь деактивируем по-настоящему:

А когда настанет время активировать учетную запись, какой командлет нам поможет?

Эти командлеты могут быть использованы в конвейерном выражении (pipelined expression), позволяя активировать или деактивировать столько учетных записей, сколько душе угодно. Например, этот код деактивирует все учетные записи в отделе продаж (Sales)

Конечно, писать фильтр для Get-ADUser довольно-таки сложно, но именно здесь использование параметра –Whatif вместе с командлетом Disable-ADAccount приходит на помощь.

Требования

Чтобы использовать PowerShell для управления AD, необходимо выполнить ряд требований. Далее я покажу, как использовать команды AD с рабочего стола Windows 7. Можно также задействовать бесплатные команды AD компании Quest Software, но в этом случае синтаксис будет несколько иным.

Для применения команд Microsoft PowerShell необходим контроллер домена (DC) Windows Server 2008 R2. Иначе можно загрузить и установить службу Active Directory Management Gateway Service на контроллерах домена с более старыми версиями операционной системы. Внимательно прочтите комментарии к установке; в процессе установки потребуется перезагрузить DC.

На стороне клиента загрузите и установите набор инструментов Remote Server Administration Tools (RSAT) для Windows 7 или Windows 8. В Windows 7 необходимо открыть раздел Programs на панели управления и выбрать Turn Windows Features On or Off (включение или отключение компонентов Windows). Прокрутите список до Remote Server Administration Tools (средства удаленного администрирования сервера) и разверните Role Administration Tools (средства администрирования ролей). Установите соответствующие флажки в AD DS and AD LDS Tools (средства AD DS и AD LDS), особенно флажок для Active Directory Module for Windows PowerShell (модуль Active Directory для Windows PowerShell), как показано на экране 1. В Windows 8 весь инструментарий активен по умолчанию. После выполнения этих действий все готово к работе.

Активизация средств AD DS и AD LDS
Экран 1. Активизация средств AD DS и AD LDS

Ради простоты я выполнил регистрацию через учетную запись с правами администратора домена. Многие приведенные в статье команды допускают использование иных учетных данных. В любом случае полезно прочитать всю справочную информацию и примеры по командам, упомянутым в данной статье.

Откройте сеанс PowerShell и импортируйте модуль:

· При импорте создается новый PSDrive, но мы не будем использовать его. Однако стоит посмотреть, какие команды содержатся в модуле:

· Особенность этих команд в том, что если команду можно использовать для одного объекта AD, то ее можно задействовать и для 10, 100 или 1000 объектов. Применим некоторые из этих команд.

Как ввести компьютер в домен разными вариантами?

Вопрос подключения компьютера к домену обычно возникает у системных администраторов, которым нужно создать локальную сеть. Доменная система означает, что все компьютеры в сети используют настройки основного ПК. Давайте попробуем разобраться, как подключить к домену компьютер с операционной системой windows 7. Для других ОС подключение не слишком отличается.

Какие преимущества дает доменная структура? С ее помощью можно использовать, например, групповые политики и централизированное управление. Это позволяет наладить эффективную работу.

Важные требования

Перед тем, как вводить компьютер на виндовс 7 в домен, необходимо проверить, удовлетворяет ли ПК ряду требований, все ли настройки выполнены. Их довольно много, хотя большинство из них уже должны быть произведены. Проверьте следующее:

  • Должна использоваться виндовс 7 следующих версий: Professional, Ultimate или Enterprise. Только эти версии можно подключать к домену;
  • Должна присутствовать сетевая карта. Но это самой собой разумеющееся;
  • Должно быть выполнено подключение по локальной сети. В большинстве случаев, хотя можно подключить виндовс 7 к windows Server 2008 R2 в оффлайн режиме, но это отдельная тема;
  • Должен быть указан правильный IP адрес. Его можно настроить вручную, получить от DHCP-сервера или это может быть APIPA-address (его значения начинаются с 169.254.X.Z);
  • Нужно убедиться, что котроллеры (хотя бы один) доступен для подключения;
  • Также проверьте соединение контроллера (например, его можно пропинговать, то есть проверить, какое качество соединения);
  • DNS сервер должен быть правильно настроен. Это важно, если он настроен некорректно, могут возникнуть проблемы при подключении к домену. Даже если подключение выполнится успешно, сбои возможны потом;
  • DNS сервера должны быть доступны. Для этого нужно проверить подключение при помощи программы PING;
  • Посмотрите ваши права в локальной системе. Должны присутствовать права локального администратора компьютера;
  • Нужно знать название доменного имени, имя администратора и пароль.

Подключение ПК к домену

Ввести компьютер в домен можно двумя способами. Давайте рассмотрим их более подробно.

Первый метод

Это стандартный способ подключения ПК к домену. Выполните следующие шаги:

  • Нажмите значок «Пуск», щелкните правой клавишей мышки по ярлыку «Компьютер», выберите «Свойства»;
  • В пункте “Имя компьютера, домен и рабочие настройки» нажмите «изменить настройки»;
  • Откройте вкладку «Имя компьютера» и нажмите «Изменить»;
  • В разделе «Часть (чего-то)» выберите «Домен»;
  • Введите имя домена, к которому выполняется подключение, нажмите «OK»;
  • Введите имя еще раз, и пароль.

Затем выполните перезагрузку компьютера. После этого ПК будет подключен к домену в локальной сети.

Второй метод

Необходимо использовать приложение NETDOM. Чтобы подключить домен, в командной строке нужно ввести всего одну команду:

  • Параметры «DOMAIN.COM» и «DOMAIN» нужно заменить на имя домена. Также нужно указать логин и пароль;
  • Дополнительная «d» в «user» и «password» не являются опечаткой;
  • В виндовс 7 NETDOM уже есть в операционной системе. В версиях виндовс 2000, XP и 2003 нужно установить Support Tools.

Чтобы завершить подключение, перезагрузите ПК.

Что делать, если домен «выпал»?

Это происходит уже после подключения ПК к домену. Компьютер его просто не «видит». Вы это сразу заметите, потому как не сможете авторизоваться. Сделайте следующее:

  • Авторизуйтесь как локальный администратор;
  • Перейдите в свойства системы и в пункте «Имя компьютера» отметьте, что ПК – часть рабочей группы;
  • Перезагрузите компьютер;
  • Затем снова подключите ПК к домену, как было описано выше;
  • Выполните перезагрузку.

Теперь компьютер должен подключиться к домену.

Помещение компьютера в определенный контейнер

Недостаток описанных методов подключения к домену – ПК размещается в стандартном контейнере, обычно в папке «Компьютер». И чтобы переместить в другое место, необходим администратор. Но можно расположить компьютер сразу в нужном контейнере. Для этого есть два варианта.

Метод номер 1

Для этого сначала создается пустая учетная запись, куда и размещается компьютер (нужно, чтобы у вас были права на создание объекта). В консоле ADUC новая учетная запись создается с тем же именем, которое будет использоваться для подключения к домену. Затем используйте метод соединения, описанный выше. Система увидит учетную запись, которая уже существует в домене, но просто не сопоставлена с ним. После сопоставления компьютер поместится в нужном контейнере.

Метод номер 2

Можно использовать команду Powershell:

  • Войдите в систему с правами администратора;
  • В командной строке введите «powershell» (затем вместо нее можно будет использовать PoSh);
  • Команда для включения ПК в домен corp.company.ru из под учетной записи corpcompany_admin, создающая учетную запись в контейнере corp.company.ru/ Admin /Computers, где company – название компьютера, будет выглядеть так:

add-computer -DomainName corp.company.ru -credential corp company_admin –OUPath «OU=Computers,OU=Admin,dc=corp,dc=company,DC=ru»;

Теперь ПК будет расположен в нужном контейнере, там, куда ссылается домен.

Для корректного подключения ПК к домену выполнять его лучше администратору, который создал данную локальную сеть. Он знает обо всех подводных камнях в этом домене, и поэтому сможет быстро выполнить подключение. Если вы решили соединить компьютер с доменом самостоятельно, то в случае какой-либо проблемы оставьте ПК в таком состоянии, пока специалист не выполнит коррекцию.

Ввод компьютера в домен позволяет использовать все преимущества домена, такие как централизированное управление, групповые политики и многое, многое другое.

Функции, которые я использую

Это функции PowerShell, которые я создал для каждого шага.

Переименовать компьютер

Согласно моему интернет-исследованию, PowerShell 2.0 в какой-то момент перед выпуском имел встроенный командлет Rename-Computer , но он был удален по причинам, неизвестным в CTP 3. Моя версия использует WMI.

Присоединить компьютер к домену

Как видите, эта функция на самом деле является просто оболочкой для встроенного командлета Add-Computer, который собирает имя домена и создает некоторые учетные данные для использования.

Добавление компьютера в домен с помощью PowerShell

1. Нажимаем кнопку поиск, пишем букву p (по-английски), далее правой клавишей мыши на «Windows PowerShell» — «Запуск от имени администратора«.

win2019srv create del computer15

2. В открывшемся окне PowerShell набираем команды:

$env:computername — определяем текущее имя компьютера;

rename-computer -newname cl1 — изменяем текущее имя компьютера на cl1;

restart-computer — перезагружаем компьютер.

win2019srv create del computer16

3. После перезагрузки компьютера снова открываем PowerShell. Для добавления компьютера в домен с помощью PowerShell выполняем команду:

add-computer -domainname sigro.ru — sigro.ru — имя домена.

При появлении запроса, вводим учетные данные пользователя (пользователь и пароль), который имеет право выполнять добавление компьютера в домен.

win2019srv create del computer17

4. Для того, чтобы изменения вступили в силу, необходима перезагрузка компьютера. Выполняем команду:

restart-computer

win2019srv create del computer18

5. После перезагрузки компьютера можно использовать для входа в компьютер доменные учетные записи.

win2019srv create del computer19

6. В окне «Система» изменится информация о компьютере в поле «Полное имя» и появится информация о домене в поле «Домен«.

win2019srv create del computer20

Узнать время последнего входа пользователя с помощью PowerShell

Также вы можете использовать PowerShell для получения времени последнего входа пользователя в домен. Для этого вам понадобится модуль Active Directory для PowerShell. Установите данный модуль и импортируйте его в свою сессию PowerShell:

Чтобы получить время последнего входа пользователя administrator, выполните команду:

Get-ADUser -Identity administrator -Properties LastLogon

Командлет Get-ADUser вернул время в формате TimpStamp. Чтобы преобразовать его в нормальное время используйте такую команду:

powershell get-aduser получить время последнего входа пользователя в домен

С помощью PowerShell вы можете вывести значение Lastlogon для всех пользователей домена:

Или можно найти пользователей, которые неактивны более полугода (180 дней):

$date1= (Get-Date).AddDays(-180)
Get-ADUser -Properties LastLogonDate -Filter | ft

Adblock
detector