Просто, когда я решил дооформить заметку по резервному копированию групповых политик мне понадобилось на свою рабочую систему (в офисе) использовать PowerShell+ командлеты взаимодействующие с Active Directory я столкнулся с тем, что не могу использовать модуль GroupPolicy.
На заметку: **Средства удаленного администрирования сервера для Windows 10 можно устанавливать ТОЛЬКО на компьютеры под управлением полнофункциональных выпусков ОС Windows 10 Профессиональная, Windows 10 Корпоративная или Windows 10 для образовательных учреждений.** Средства удаленного администрирования сервера нельзя установить на Windows RT, компьютеры с архитектурой Advanced RISC Machine (ARM) или другие устройства на базе однокристальной схемы.
123456789
PS C:\Windows\system32> Import-Module GroupPolicy Import-Module : Указанный модуль “GroupPolicy” не был загружен, так как ни в одном из каталогов модулей не был обнаружен действительный файл модуля. строка:1 знак:1 + Import-Module GroupPolicy + ~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : ResourceUnavailable: (GroupPolicy:String) [Import-Module], FileNotFoundException + FullyQualifiedErrorId : Modules_ModuleNotFound,Microsoft.PowerShell.Commands.ImportModuleCommand
C:\Windows\system32>ver Microsoft Windows [Version 10.0.18363.592]
Скачиваю средства удаленного администрирования сервера для Windows 10 своей версии:
WindowsTH-RSAT_WS_1803-x64.msu
Обновление для ОС Windows (KB2693643)
После чего модуль Group Policy успешно импортировался в консоль powershell:
123456789
C:\Windows\system32>powershell Windows PowerShell (C) Корпорация Майкрософт (Microsoft Corporation). Все права защищены. Попробуйте новую кроссплатформенную оболочку PowerShell (https://aka.ms/pscore6) PS C:\Windows\system32> import-module grouppolicy
без каких-либо ошибок и могу в своих скриптах использовать командлеты для работы с Active Directory. И как мне пригодилась моя заметка, когда я решил использовать оснастки взаимодействия c Active Directory на одной из работ ранее.
На этом заметка завершена, с уважением автор блога Олло Александр aka ekzorchik.ru
Настроить резервное копирование всех настроенных групповых политик.
Мне нужна личная наработка как сделать бекап и конечно отработанные шаги по восстановлению групповых политик (GPO) на Windows Server 2012 R2 с помощью скриптов для PowerShell. А после данный бекап будет сохранен на моем личном хранилище «Наработки в OwnCloud + BitLocker на рабочем месте»
Как всегда, все прорабатываю на своем стенде под управлением Debian 10 + Proxmox 6
Исходные данные:
srv-dc1.polygon.com (10.90.90.3)
OS: Windows Server 2012 R2 Std
srv-gw.polygon.com (10.90.90.2)
OS: pfsense 2.4.4
На заметку: Все выполняемые действия ниже происходят на домен контроллере.
На заметку: Если GPO именуется, как "GPO: Windows10Test" то командлеты Powershell игнорируют ее резервное копирование, а потому у меня все GPO приведены к единому виду, как "GPO_Windows10Test"
Шаг №1: Т.к. дефолтные настройки PowerShell — это максимальная политика безопасности, то чтобы выполнять команды в PowerShell нужно разрешить выполнение скриптов
On srv-dc1:
Авторизуюсь под учетной записью (Login: ekzorchik Pass: 712mbddr@) она у меня на тестовом стенде является Domain Admins
Restricted (Запрещено, по умолчанию) Сценарии не запускаются.
Allsigned (Все подписанные) Запускаются только подписанные сценарии.
RemoteSigned (Удаленные подписанные) Разрешен запуск локальных сценариев, прочие сценарии должны быть подписаны.
Unrestricted (Без ограничений) Запускаются все сценарии.
Шаг №2: Устанавливаю в систему текстовый редактор Notepadd++
Создаю необходимые каталоги:
123
C:\Windows\system32>if not exist c:\backup mkdir c:\backup C:\Windows\system32>if not exist c:\script mkdir c:\script
В последствии структура резервного копирования будет выглядеть так:
C:\Backup\<DC>\<date>\<gpo_name>\<guid>
Шаг №3: Прежде чем писать скрипт попробую через PowerShell командлеты создать GPO, сделать бекап, удалить, восстановить из бекапа – все это нужно дабы выявить полный формат в каком виде нужно хранить резервные копии. По крайней мере я так думаю.
Чтобы создать групповую политику через консоль PowerShell:
На заметку: Если в папки с именованием GPO несколько бекапов, то восстанавливается самый последний.
Итого я сделал себе скрипт и отработал шаги посредством которых выполняю поставленную себе задачу, как будет время в планах доработать скрипт:
Настроить архивирование папки текущего дня
Настроить составление html отчета всех GPO
Настроить уведомление на почту, когда скрипт успешно выполнил резервное копирование.
Также как это собственная наработка сохранил ее к себе в собственное хранилище наработок под именем Mercurial on Ubuntu 18.04 Server которое существует как отдельно выделенная VM на моем микросервере (HP MicroServer Gen8 (4CPUs x 2,494Ghz, Intel Xeon CPU E3-1265L V2 2.50GHz, RAM 12Gb)).
А пока на этом собственно и всё, с уважением автор блога Олло Александр aka ekzorchik.
Порой случаются заявки вида: «Прошу в корпоративном мессенджере настроить сохранение истории переписки, а то не удобно и теряется важная информация». Вот только был выявлен косяк при работе с клиентом QIP, как на Windows 10 Pro, Windows 8.1. В моем случае QIP не сохраняет историю Jabber аккаунта при переписке с сотрудниками.
Дело в том, что у меня используется перемещаемые профили и перенаправление папок.
Путь хранения истории: \\polygon.local\users\Forwarded folders\aollo\Application Data\QIP\Profiles\qip\History\
Путь хранения файлов: \\polygon.local\users\Forwarded folders\aollo\Application Data\QIP\Profiles\qip\RcvdFiles\
Но их нет. Нет каталогов History и RcvdFiles. По умолчанию их просто на просто нет физически после установки клиента qip на ПК.
Решение: Нужно создать эти два каталога и дать на них права на запись доменной учетной записи
Файл внутри _qip_svc.qhf можно не создавать, он создастся сам. Кстати этот файл показывает каков размер всей текущей переписки и если он приближается к 300, как указано в настройках по дефолту то после сохранение истории переписки станет не возможным.
После перезапускаем QIP и все теперь история сохраняется с каждым с кем ведет переписку аккаунт.
Итого вот такой вот небольшой нюанс. Я себе поставил задачу дабы избавиться в дальнейшем от заявок, отнимающих время, пройтись по всем сотрудникам и до создать необходимые каталоги и дать права.
В процессе было замечено, что, если даже папки History & RcvdFiles есть, история не пишется, проанализировав увеличил квоту на сохраняемую переписку, опять не пишется, точнее не сохраняется, даже если клиент qip перезапускался. Всему виной файл _qip_svc.qhf нужно закрыть qip, переименовать каталог History в History_old, создать новый каталог history, скопировать из старого history_old все файлы переписки за исключение _qip_svc.qhf и после история сохраняется и создается с каждым новым переписчиком Jabber_aollo@srv-jabber.qhf.
На этом заметка завершена, с уважением автор блога Олло Александр aka ekzorchik.
В виду того, что на нынешнем месте работы ресурсов для теста и введения боевого сервера попросту нет, а те что использовались под VM с осью Ubuntu 18.04.5 Server где крутится скрипт по выполнению резервного копирования конфигурацию маршрутизаторов Mikrotik через bash нужны другому проекту. А значит настает пора, да и есть свободное время дабы перенести скрипт на PowerShell и выполнять его с любой Windows системы.
Т.к. у меня дома несколько Mikrotik’ов то скрипт успешно было оттестирован на моих:
Ekzhome: Mikrotik RB2011UiAS-2HnD (mipsbe) v6.47
Ekzhome1: Mikrotik hAP ac^2 (arm) v6.47
Ekzhome2: Mikrotik CRS326-24G-2S+ (arm) v6.47.3
На всех моих Mikrotik используется одна учетная запись
На заметку: Скрипт запускаю в консоли PowerShell которая запущена через "Run as administrator"
Шаг №1: На системе Windows Server 2012 R2 Std устанавливаю редактор notepad++ и создаю в корне диска C: каталога script где размещаю скрипт на PowerShell:
Шаг №2: Скрипт для единичного бекапирования Mikrotik: bmikrotikone
Set-Executionpolicy unrestricted #Check if out module loadedif (Get-Module -ListAvailable -Name Posh-SSH) { <# do nothing #> }else { Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force -Confirm Install-Module Posh-SSH} #Текущая дата$CurrentDate = get-date -format dd.MM.yyyy #Каталог расположения бекапов$Letter_Drive = “C:”$BackupFolder = “backup”$BackupPath = $Letter_Drive + “\” + $BackupFolder #Функция для создания структуры каталоговFunction CheckPath ($Path) { $Path_Exists = Test-Path -Path $Path If ($Path_Exists -eq $False) { New-Item $Path -Type directory }} #Создаем каталог для бекаповCheckPath $BackupPath | Out-Null #Передайте нежелательные результаты команд / вызовов функций#в вызываемой функции через “… | Out-Null”, #а затем просто верните нужную вещь. write-host $BackupPath #Импортирую установленный модульImport-Module Posh-SSH $username = “username”$password = “password”$Port = “22”#$fnamebackup = “backup_$(Get-Date -Format ddMMyyyy)”#$fnamersc = “backup_$(Get-Date -Format ddMMyyyy)”$fnamebackup = “backup_$(Get-Date -Format HH_mm_dd_MM_yyyy)”$fnamersc = “backup_$(Get-Date -Format HH_mm_dd_MM_yyyy)” function bkprtr {param($ipaddr)$secpassword = ConvertTo-SecureString -String $password -AsPlainText -Force $Cred = New-Object System.Management.Automation.PSCredential ($username, $secpassword) $ssh = New-SSHSession $ipaddr -AcceptKey -Credential $Cred -ErrorAction Stop -Port 22$outbackup = (Invoke-SSHCommand $ssh -Command “/system backup save name=$fnamebackup dont-encrypt=yes” -EnsureConnection).Output$outrsc = (Invoke-SSHCommand $ssh -Command “export file=$fnamersc” -EnsureConnection).Output #set name mikrotik$mikrotikname = (Invoke-SSHCommand $ssh -Command “/system identity print” -EnsureConnection).Output #Форматируем значение переменной $mikrotikname$fa = $mikrotikname | out-file $BackupPath\name.txt$fb = Get-Content $BackupPath\name.txt -first 1$fc = $fb.Split(“: “)[-1]$fc #Создаем внутри каталога C:\backup каталог с именем Mikrotik,#ключ Force обязателен, т.к. каталог уже есть и каждый последующий день будет тут же$MName = new-item -Path $BackupPath\$fc -Type Directory -Force$MName #Делаем бекапы backup и бекап конфигурации rsc и через ftp забираем их на каталог c:\backup\<mikrotik_name>#А после удаляем с Mikrotikif($outbackup.Trim() -eq “Configuration backup saved”){ $sftp = New-SFTPSession $ipaddr -AcceptKey -Credential $Cred Get-SFTPFile -SFTPSession $sftp -RemoteFile “/$fnamebackup.backup” -LocalPath “$MName\” -Overwrite Get-SFTPFile -SFTPSession $sftp -RemoteFile “/$fnamersc.rsc” -LocalPath “$MName\” -Overwrite Start-Sleep 2 Remove-SFTPItem -SFTPSession $sftp -Path “/$fnamebackup.backup” -Force Remove-SFTPItem -SFTPSession $sftp -Path “/$fnamersc.rsc” -Force Remove-SFTPSession $sftp }Remove-SSHSession $ssh}foreach ($ip in gc C:\script\list.txt) {bkprtr($ip)}
А в файл list.txt директории script вносим IP адрес всех Mikrotik'ов для которых хотим сделать резервную копию.
Результат сделанный бекапов моих микротиков:
Шаг №4: Итого данный скрипт был перенесен на рабочее окружение где я работаю, и вся сеть у меня строится на базе маршрутизаторов Mikrotik и он (скрипт) успешно введен в эксплуатацию. К тому же все бекапы у меня хранятся каталоге которые обязательно синхронизируется с персональным облаком на базе Ubuntu 18.04 Server + OwnCloud 10. Об этом вы можете почитать в заметке «Наработки в OwnCloud + BitLocker на рабочем месте»
На заметку: Первый раз запускаю скрипт из «Шаг №2» придется согласиться с
Для продолжения требуется поставщик NuGet
Для взаимодействия с репозиториями на основе NuGet модулю PowerShellGet требуется версия поставщика NuGet «2.8.5.201»
или более новая. Поставщик NuGet должен быть доступен в «C:\Program Files\PackageManagement\ProviderAssemblies» или
«C:\Users\aolloadm\AppData\Local\PackageManagement\ProviderAssemblies». Поставщик NuGet можно также установить,
выполнив команду «Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force». Вы хотите, чтобы модуль
PowerShellGet установил и импортировал поставщик NuGet прямо сейчас?
[Y] Да — Y [N] Нет — N [S] Приостановить — S [?] Справка (значением по умолчанию является «Y»): Y
Ненадежный репозиторий
Идет установка модулей из ненадежного репозитория. Если вы доверяете этому репозиторию, измените его значение
InstallationPolicy, запустив командлет Set-PSRepository. Вы действительно хотите установить модули из «PSGallery»?
[Y] Да — Y [A] Да для всех — A [N] Нет — N [L] Нет для всех — L [S] Приостановить — S [?] Справка
(значением по умолчанию является «N»):Y
Ну а далее скрипт успешно отработает и будем мне счастье.
На этом моя задача завершена, у меня есть самолично написанная наработка по централизованному резервному копированию маршрутизаторов Mikrotik. С уважением автор блога Олло Александр aka ekzorchik.
Помнится, мне я раньше активно использовал на Windows Server 2008 R2 и Windows 7 удаленное взаимодействие с системами через оснастку Computer Management, дабы если нужно запустить службу, добавить/удалить пользователя, добавить/удалить группу, посмотреть логи. Но вот сейчас в конторе где я работаю используется WindowsServer 2012 R2 Std (Server 2016 Std) и рабочие станции под управлением Windows 8.1 & Windows 10. Поэтому в качестве еще одной наработки я решил задокумментировать данный процесс настройки и заодно посмотреть, а будет ли работать и какие подводные камни компания Microsoft внесла в этот раз. А то как с изменением пароля через GPO – функционал деактивирован и вместо этого нужно использовать LAPS. Я даже в одной организации для Москвы и Санкт-Петербурга это внедрил:
То конечно был отличный опыт и время препровождения по поставленной задаче.
Ладно, сейчас задача в другом. Как всегда, мне на помощь приходит мой тестовый полигон базирующейся на связке Debian 10 + Proxmox 6 и это супер решение по сравнению с Virtualbox или Vmware Workstations.
Итак, для задачи понадобится
Server 2012 R2 Std (с развернутыми ролями AD (домен polygon.com), DNS, DHCP)
Windows 10 Pro (в качестве рабочей станции домена polygon.com)
Шаг №1: Подключаюсь через Web к своему стенду виртуализации Proxmox, авторизуюсь, создаю VM, затем перехожу в консоль VM где Windows Server 2012 R2 Std, авторизуюсь под учетной записью вхожей в группу Domain Admins.
Шаг №2: После авторизации в системе создаю GPO и нацеливаю ее на рабочую станцию
Name: GPO_Computer_Management
Вкладка Scope
Location: polygon.com
Security Filtering: W10X64P1
Вкладка Delegation
Нажимаю Add – и добавляю группу “Authenticated Users” с правами на чтение. Это обязательно, иначе рабочая станция не увидит политику, а значит не применит.
Шаг №3: Открываю на редактирование политику GPO_Computer_Management
Шаг №4: Содержание GPO
Computer Configuration – Policies – Windows Settings – Security Settings - System Services:
Service: Remote Registry
Define this policy settings: отмечаю галочкой
Select service startup mode: Automatic
Computer Configuration – Policies – Windows Settings – Security Settings – Windows Firewall with Advanced Security – Windows Firewall with Advanced Security – и через правый клик на Inbound Rules выбираю New Rule…
Rule Type: Predefined – и выбираю группу: (устанавливаю действие Allow the connection)
(внутри отмечаю галочкой правило(а))
COM+ Network Access
COM+ Network Access (DCOM-In)
COM+ Remote Administration
COM+ Remote Administration (DCOM-In)
File and Printer Sharing
File and Printer Sharing (Spooler Service – RCP-EPMAP)
File and Printer Sharing (Spooler Service – RPC)
Remote Event Log Management
Remote Event Log Management (RPC-EPMAP)
Remote Event Log Management (NP-In)
Remote Event Log Management (RPC)
Remote Event Monitor
Remote Event Monitor (RPC-EPMAP)
Remote Event Monitor (RPC)
Remote Scheduled Tasks Management
Remote Scheduled Tasks Management (RPC-EPMAP)
Remote Scheduled Tasks Management (RPC)
Remote Shutdown
Inbound Rule for Remote Shutdown (RPC-EP-In)
Inbound Rule for Remote Shutdown (TCP-In)
Remote Volume Management
Remote Volume Management (RPC-EPMAP)
Remote Volume Management – Virtual Disk Service Loader (RPC)
Remote Volume Management – Virtual Disk Service (RPC)
Allow remote access to the Plug and Play interface: Enabled
Шаг №5: На Windows 10 Pro авторизуюсь, к примеру, под пользователем Login: alektest, запускаю консоль командной строки и набираю команду обновления групповых политики с последующей перезагрузкой системы:
Win + R -> cmd.exe
123
gpupdate /force shutdown /r /t 3
Шаг №6: Переключаюсь снова на систему Windows Server 2012 R2 Std, запускаю Computer Management
Win + X – Control Panel – Administrative Tools – Computer Management – Action – Connect to another computer… — и в окне “Select Computer” выбираю Another computer – Browse, указываю компьютер к которому хочу подключиться и нажимаю Check Names. Должно получиться вот так, как на представленном ниже скриншоте, а после нажимаю ОК
А после еще раз ОК
Инициируется подключение:
А вот когда я подключался просто надеясь, что я как вхож в группу Domain Admins смогу подключиться и взаимодействовать получал вот такую вот отбивку:
Computer W10X64P1.POLYGON.COM cannot be managed. Verify that the network path is correct, the computer on the network, and that the appropriate Windows Firewall rules are enabled on the target computer.
To enable the appropriate Windows Firewall rules on the remote computer, open the Windows Firewall with Advanced Security snap-in and enable the following incoming Rules:
COM+ Network Access (DCOM-In)
All Rules in the Remote Event Log Management Group
И я успешно подключен, могу смотреть логи системы, общие файлы, пользователей и группы, запускать и останавливать сервисы, к примеру, остановил службу “Windows Audio”
Пробую посмотреть какой оборудование у удаленной системы к которой я подключился. Для этого перехожу на Device Manager, но увы получаю отказ
Последующий анализ что еще не хватает вывел меня на статью "https://docs.microsoft.com/en-us/troubleshoot/windows-server/system-management-components/error-connect-device-manager-remotely" где официально уже нельзя таким образом подключиться для Windows Server 2012 R2 и Windows 10 всех редакций.
Причина: This problem occurs because Remote access to the Plug and Play (PNP) RPC interface has been removed in Windows 8 and Windows Server 2012.
По сути получается лавочку прикрыли. Но даже тот функционал что есть этого хватит каждому системному администратору за глаза.
Шаг №7: Анализ, что можно сделать вывел меня на утилиту DeviceTool (http://www.device-tool.com/download/en-en/DeviceTool.zip)
Функционал утилиты:
Отображение устройств и их свойств
Включение и выключение локальных устройств
Включение и выключение устройств на удаленных компьютерах
Не требует инсталляции в систему
Может запускаться на Windows 7/8/10 и Windows Server 2008/2012/2016/2019
Бесплатна
Распаковываю ее, и чтобы можно было удаленно выключать/включать устройства в каталог куда утилита распакована нужно положить утилиту psexec.exe
После чего через правый клик на DeviceTool выбираю меню “Run as administrator” – Yes – Action – Connect to another computer…, указываю явно именование компьютера, т.е. W10X64P1
И нажимаю OK
Подключение успешно.
К примеру, выключаю устройство "Microsoft Basic Display Adapter"
И устройство успешно отключается:
Ну что ж, значит буду использовать штатный функционал для одно и для взаимодействия с устройствами контролируемых систем утилитой DeviceTool.
На заметку: Настройки GPO необходимы, т.к. я на работе у рабочих станций не выключаю штатный брандмауэр
Заметка полностью работоспособна, на этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.
Такая задача возникла не на пустом месте, обычно я использовал TightVNC.
который я посредством GPO развертывал на рабочих ПК и серверах в компания где я имел честь обслуживать вверенную инфраструктуру. А сейчас здесь используется RAdmin, но конечно же он не лицензионный. В принципе какая разница. Сейчас я от и до пройдусь по шагам как создать из дефолтной msi свою собственную msi установщика (Серверная часть). Почему я такую банальную вещь описываю, все просто – это наработка на будущее, личная наработка.
Все как всегда будет обкатываться на моем тестовом гипервизоре Debian 10 + Proxmox 6. Создаю VM базирующейся на Windows Server 2012 R2 Std которая выполнена у меня, как.
Все дальнейшие действия произвожу на Windows Server 2012 R2 Std (srv-dc01)
Шаг №1: В домене создаю группу GRP_IT для того чтобы к системе на которой установлен Radmin Server могли подключиться только те кто состоит в этой группе.
и группа GRP_IT_Viewer это те, кто, может только подключившись смотреть за действиями, но не вмешиваться.
Шаг №2: Устанавливаю пакет rdpltool12.msi (из Radmin Deployment Tool 1.2) в систему.
Шаг №3: На эту же систему скачиваю Radmin Server в виде msi файла на необходимом мне языке: Radmin_Server_3.5.2.1_RU.msi
Шаг №4: Запускаю Radmin MSI Configurator (Win + нажимаю стрелку вниз дабы отобразить все установленные приложения – нахожу “Radmin MSI Configurator” и кликаю по нему левой кнопкой мыши
Нажимаю Next
указываю путь до msi файла: C:\Soft\Radmin_Server_3.5.2.1_RU.msi
Нажимаю Next
После нажимаю Settings…
Здесь предопределяю настройки серверной части
General
Use default port: 4899
Tray icon: Show in system tray
Logging: All errors
Use Event Log: отмечаю галочкой
Miscellaneous
Load Mirror Driver on startup: отмечаю галочкой
Language
Select interface language: English
все остальное по умолчанию
и нажимаю OK окна Radmin Server Options
Затем в окне Radmin MSI Configuration 1.2 нажимаю Next
После нажимаю Security…
Set user/password verification mode: выбираю Windows NT security затем нажимаю Permissions, здесь добавляю группу члены которой будут взаимодействовать удаленно у кого стоит серверная часть:
После сохраняю полученный msi файл, к примеру, в этот же каталог: c:\soft\radmin_3521.msi
но после по идее мастер Radmin MSI Configurator v1.2 должен был закрыться, но нет он снова на шаге где последующий шаг — это сохранение полученного msi файла. Ну да ладно, закрываю мастер «Крестиком»
После перемещаю полученный msi файл: radmin_3521.msi в специально созданную расшаренную папку где у меня все msi файлы на установку: \\srv-dc1\PO
Шаг №5: Измененный MSI—файл (radmin_3521.msi) может быть установлен вручную, с использованием специальной утилиты Radmin Deployment Tool, с помощью групповых политик, утилит для установки MSI-файлов или предоставлен сотрудникам для самостоятельной установки.
Шаг №6: Я буду распространять данный msi файл через GPO
Создаю WMI Filters
Win + X – Control Panel – Administrative Tools – Group Policy Management – Group Policy Management – Forest: polygon.com – Domains – polygon.com – и через правый клик на WMI Filters выбираю New…
Name: Client
Queries: Add
Namespace: root\CIMv2
Query: SELECT * FROM Win32_OperatingSystem WHERE ProductType = "1"
И нажимаю Save
На заметку: А можно обойтись и без WMI фильтров, просто создать группу, к примеру GRP_Office_Computers, добавлять туда те компьютеры на которых хотим видеть установленную серверную часть Radmin. И изменить ниже следующую политику что:
Location: polygon.com
Security Filterning: GRP_Office_Computers
Вкладка Delegation – Add
Authenticated Users: права Read
WMI Filtering: оставляем по дефолту <none>
Шаг №7: Создаю GPO с именем: GPO_RadminServer
Win + X – Control Panel – Administrative Tools – Group Policy Management – Group Policy Management – Forest: polygon.com – Domains – и через правый клик на polygon.com выбираю "Create a GPO in this domain, and Link it here…"
Нацеливаю ее на весь домен
Links (Location): polygon.com
Security Filtering (Name): Authenticated Users
WMI Filtering: Client
Открываю ее на редактирование и указываю что ее задача — это производить установку программы msi:
Затем открываю свойства добавленного пакета на инсталляцию через GPO и во вкладке Deployment отмечаю галочкой "Uninstall this application when it falls out of the scope of management"
На заметку: Закачал к себе в OwnCloud полученный msi файл
Шаг №8: В каталоге \\srv-dc1\PO нужно также разместить CPro+Radmin файл активации:
Этот файл если потребуется ручная активация на рабочих местах.
Т.к. я буду использовать Radmin не только на рабочих станциях, но и на серверах, то импортирую данный reg файл в систему (да прям на домен контроллер, позже удалю этот импортированный раздел):
Win + X – Command Prompt Admin –
123
C:\Windows\system32>reg import c:\PO\CProExclude.reg The operation completed successfully.
Шаг №9: Теперь перехожу к созданию данных ключей через GPO
Computer Configuration – Preferences – Windows Settings – Registry – Registry Wizard и отмечаю разделы реестра и параметры со значениями (это Важно) импортированные на текущую систему srv-dc1
Затем добавляю/изменяю еще один ключ в реестра:
Computer Configuration – Preferences – Windows Settings – Registry – New – Registry Item –
Шаг №10: Далее нужно выставить загрузку системы через 1 минуту дабы скрипт/политика (делаю это на будущее) успел отработать это все делается в рамках создаваемой в этой заметке:
Computer Configuration – Policies – Administrative Templates – System – Group Policy –
Always wait for the network at computer startup and logon: Enabled
Шаг №11: Проверяю применение GPO к рабочей станции на оси Windows 10 Pro: W10X64P1
Win + R -> cmd.exe
1
C:\Users\alektest> gpupdate /force
На заметку: Брандмауер на Windows 10 Pro деактивирован
Шаг №12: Инициирую подключение через Radmin Viewer к ПК с установленным Radmin Server
On srv-dc1 – запускаю Radmin Viewer – Соединение – Соединиться с… —
Режим соединения: Управление
IP адрес или DNS имя: W10X64P1
Порт: 4899
И нажимаю ОК, после чего система безопасности запрашивает как будем подключаться, точнее под кем
Имя пользователя: ekzorchik
Пароль: 712mbddr@
Домен: polygon.com
Имя хоста: W10X64P1
Сохранить имя пользователя по умолчанию: отмечаю галочкой
И нажимаю ОК
На заметку:
Login = ekzorchik – это я Domain Admins
И вот я успешно подключен
Итого я получил задокумментированную заметку по установке Radmin Server на рабочие станции и если хочется, то и любые Windows системы. Как будут дополнительные нюансы я дополню данную заметку. Пока на этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.
В связи c увеличением штата сотрудников, я на своем NAS сервере создал еще один LUN (Как создать новый LUN в ReadyNAS 2120) и через iscsi подключил его к серверу где у меня развернуты почтовые базы для моего почтового сервера на базе Exchange 2010 (Server 2008 R2 Ent + Exchange 2010 14.03.0248.002). На данном диске будут располагаться база IT отдела содержащая почтовый ящики системных администраторов, программистов 1C, Web-разработчиков и системные почтовые ящики для различных нужд. И конечно же эту почтовую базу нужно бекапировать, а бекапировать я буду через сервис DPM который у меня есть и обслуживающий:
File Server
Exchange Database
Дабы сервис DPM был развернут и введен в эксплуатацию нужно проделать следующие шаги:
При модифицировании группы Mailbox с целью добавления еще одной почтовой базы я получил ошибку
Details: DPM cannot access the path E:\ because part of the path has been deleted or renamed (ID: 36)
Recommended action: Check the path and enter it again
На сервере где у меня расположены почтовые базы я запустил консоль командной строки с правами Администратора и передернул сервис агента:
123456
C:\Windows\system32>net stop DPMRA && net start DPMRAThe DPMRA service is stopping..The DPMRA service was stopped successfully.The DPMRA service is starting.The DPMRA service was started successfully.C:\Windows\system32>
Затем заново инициирую процедуру изменения группы Mailbox, а нет, я пока сделаю по-другому и добавлю новую группу защиты:
On srv-backup01
Start – All Programs – Microsoft System Center 2012 R2 – Data Protection Manager – Microsoft System Center 2012 R2 Data (у меня Version: 4.2.1603.0) – Protection – New –
Этап Welcome: нажимаю Next
Этап Select protection group type: Servers и нажимаю Next
Этап Select group members: выбираю хост где у меня почтовый базы, это srv-mail02-mb и выделив его нажимаю Refresh (элемента меню Update data sources)
После чего перехожу в Exchange 2010 Databases и вижу свою новую почтовую базу, отмечаю ее галочкой и нажимаю Next
Этап Select data protection method:
Protection group name: Именую группу бекапирования, как Mailbox2
Select your protection method:
I want short-term protection using: Disk
И нажимаю Next
Этап Specify exchange protection options
Run Eseutil to check data integrity: отмечаю галочкой
For Exchange Server 2010 or later: Run for both database and log files (maybe slow if databases are large)
И нажимаю Next
Этап Specify Exchange DAG protection: оставляю как есть
И нажимаю Next
Select short-term goals
Retention range: 5 days
Synchronization frequency: Every 24 hour(s)
Express Full Backup: Modify
Available times: 23:00 – Add (Select times)
Days of the week: Monday, Tuesday, Wednesday, Thursday, Friday
И нажима OK окна Optimize Performance, Next окна Create New Protection Group
Этап Review disk allocation: нажимаю Next
Этап Choose replica creation method: Automatically over the network и нажимаю Next
Этап Choose consistency check options: Run a consistency check if a replica becomes inconsistent и нажимаю Next
Этап Summary: нажимаю Create Group
Ожидаю
Спустя n’ое количества времени группа Mailbox2 создана и от реплицирована.
Смотрю на всех All Protection Groups вижу, что резервное копирование почтовой базы MailboxDB15 успешно выполнено и поставлено на указанные выше параметры резервирования, как и другие почтовый базы у меня.
Тем самым я узнал данной заметкой, что если просто добавил/ввел в эксплуатацию новую почтовую базу, то чтобы агент DPM увидел ее нужно выполнить всего лишь одно нажатие при изменении – это Refresh, а далее отметить базу либо внести в существующую группу, либо создать новую группу резервного копирования.
Итого заметка работоспособна, на этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.
Сегодня речь пойдет о задаче, с которой я столкнулся, когда тестировал/прорабатывал задачу с использованием DPM на Server 2012 R2. Это как через DPM сохранять резервную копию клиентской системы. Об этом чуть позже. Сейчас у меня в оснастке System Center 2012 R2 DPM Administrator Console значит есть клиентская система W10X64P1 и на ней был когда-то агент, но он не доступен. Это может быть если клиентская система была переустановлена или упала и т.д. Вот эту запись из консоли мне нужно убрать.
Выбор через правый клик на ней меню Uninstall – Uninstall Agents – указанием связи логин&пасс&домен
(Это учетная запись в группе Domain Admins)
User name: ekzorchik
Password: 712mbddr@
Domain: polygon
И нажатие на кнопку OK, получаю сообщение об ошибке, если перейти на вкладку Errors, то текст ошибки:
Uninstall protection agent from w10x64p1.polygon.com failed:
Error 347: An error occurred when the agent operating to create the DPM Agent Coordinator service on w10x64p1.polygon.com
Error details: The service did not respond to the start or control request in a timely fashion
Recommended action: Verify that the Agent Coordinator service on w10x64p1.polygon.com is responding, if it is present. Review the error details, take the appropriate action, and then retry the agent operation.
Выход из этой ситуации это:
On srv-dpm.polygon.com
Win + X – Command Prompt (Admin)
123456789101112131415
C:\Windows\system32> powershell PS C:\Windows\system32> cd ‘C:\Program Files\Microsoft System Center 2012 R2\DPM\DPM\bin’ PS C:\Program Files\Microsoft System Center 2012 R2\DPM\DPM\bin> .\Remove-ProductionServer.ps1 DPMServer: указываю srv-dpm.polygon.com PSName: указываю w10x64p1.polygon.com WARNING: Connection to DPM server: srv-dpm.polygon.com Removed ProductionServer successfully PS C:\Program Files\Microsoft System Center 2012 R2\DPM\DPM\bin>
После в оснастке System Center 2012 R2 DPM Administrator Console – Management более не значится система с ранее установленным агент связь с которым более нет.
Итого заметка работоспособна. На этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.
Порой нужно уметь удалить DPM агент, установленный на Windows 10 Pro (Version 10.0.18362.900) только вручную, а не с использованием оснастки DPM Administrator Console, что я имею ввиду под понятием "Вручную", а удаление каждого компонента + все файлы которые создались в процесс установки.
Версия установленного агента у меня 4.2.1205.0 для DPM который установлен по заметке.
Авторизуюсь на клиентской станции под управлением Windows 10 Pro с правами администратора и в текстовом файле редактора Notepad++ создаю свой вариант bat файла удаления агента из системы:
На заметку: По мере выявления дополнительных нюансов строки скрипта будут дополняться.
После запускаю через правый клик мышью на нем и выбор меню "Запуск от имени администратора". Этими действиям агент DPM успешно удален с системы, также нужно пройтись по заметке "Как удалить Unprotected computer с сервера DPM" чтобы не было следов на сервере DPM и если понадобится установка агента его можно было поставить заново и завести в DPM.
На заметку: После желательно перезагрузить систему
Итого данная заметка полностью работоспособна. На этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.
Для своих тестов на полигоне под управлением гипервизора Debian 10 + Proxmox 6 (Как установить proxmox on Debian 10), разворачиваю обычно если по части Windows, то это домен контроллер (GPO для уровня домена Windows Server 2012 R2) + сервис + рабочая станция дабы оттестировать определенный функционал. Ну так вот сперва я проделываю все без использования встроенного брандмауэра, а потом вместе с ним дабы внедряемые настройки в боевой среде были от и до, но с учетом безопасности и то что нужно. К тому же заметка становится более полной где учтены все нюансы.
Каждый раз отключать брандмауэр вручную на системах это утомительно и не по административному. Лучше я посредством групповых политик создам настройку, которая будет это делать за меня. Ну так вот.
Шаг №1: Подключаюсь к домен контроллеру с правами Domain Admins
Win + X - Control Panel - Administrative Tools - Group Policy Management
Шаг №3: Создаю групповую политику, именую ее как: GPO_Firewall_Disabled
Location: polygon.com
Security Filtering: Authenticated Users
WMI Filtering: <none>
Шаг №4: Содержимое групповой политики GPO_Firewall_Disabled:
Computer Configuration - Policies - Windows Settings - Security Settings - Windows Firewall with Advanced Security — и через правый клик мышью на Windows Firewall with Advanced Security открываю Properties (Свойства) и для каждого из трех профилей:
Domain Profile
Firewall state: Off
Private Profile
Firewall state: Off
Public Profile
Firewall state: Off
после нажимаю Apply - OK
После закрываю редактор Group Policy Management Editor
Шаг №5: Перезагружаю, как серверную операционную систему, так и клиентскую в рамках своего домена и после загрузки применяется моя GPO
Шаг №6: Проверяю, что встроенный брандмауэр деактивирован:
on srv-dpm.polygon.com (Login: ekzorchik Group: Domain Admins)
Win + X - Control Panel - Windows Firewall и вот все профили деактивированы:
Отлично, что мне и требовалось.
На заметку: Данная настройка GPO справедлива и для Server 2016 и для Server 2019.
На этом заметка завершена, с уважением автор блога Олло Александр aka ekzorchik.