Microsoft — различия между версиями
Litvinyuk (обсуждение | вклад) (→Перенос ОС на другую системную плату) |
Litvinyuk (обсуждение | вклад) (→Базовая настройка SRP в Windows 7) |
||
(не показано 25 промежуточных версий этого же участника) | |||
Строка 3: | Строка 3: | ||
# Выполнить установку необходимого ПО. | # Выполнить установку необходимого ПО. | ||
# Выполнить необходимые настройки ОС и ПО. | # Выполнить необходимые настройки ОС и ПО. | ||
− | # %windir%\system32\sysprep /generalize /oobe /shutdown /unattend:answerfile.xml | + | # %windir%\system32\sysprep\sysprep.exe /generalize /oobe /shutdown /unattend:answerfile.xml |
# Снять накопитель с целевого АРМ. | # Снять накопитель с целевого АРМ. | ||
# Установить накопитель на АРМ с установленным imagex. | # Установить накопитель на АРМ с установленным imagex. | ||
Строка 14: | Строка 14: | ||
# dism /unmount-wim /mountdir:c:\tmp\mount /commit | # dism /unmount-wim /mountdir:c:\tmp\mount /commit | ||
− | == Запускаем установку с флешки по быстрому == | + | == Запускаем установку с USB диска (флешки) по быстрому == |
# cmd|PoSh от имени Администратора | # cmd|PoSh от имени Администратора | ||
# diskpart | # diskpart | ||
Строка 25: | Строка 25: | ||
# Active | # Active | ||
# Assign | # Assign | ||
+ | # List Volume <ref>Определим какую букву назначило диску.</ref> | ||
# Exit | # Exit | ||
+ | # CHDIR X:\boot <ref>Где X — буква компакт-диска с Windows 7 или же буква смонтированного образа установочного диска Windows 7.</ref> | ||
+ | # bootsect /nt60 Y: <ref>Y — это буква, соответствующая Вашей загрузочной флешке.</ref> | ||
+ | # Скопировать все файлы с установочного диска Windows 7 на флешку. | ||
== Перенос ОС на другую системную плату == | == Перенос ОС на другую системную плату == | ||
Строка 39: | Строка 43: | ||
<!-- Ещё может быть необходимо пройтись по: adp94xx, adpahci, adpu320, aic78xx, amdsbs, arc, arcsas, elxstor, HpSAMD, iaStorV, iirsp, LSI_FC, LSI_SAS, LSI_SAS2, LSI_SCSI, megasas, MegaSR, nfrd960, nvraid, nvstor, ql2300, ql40xx, SiSRaid2, SiSRaid4, vhdmp, vsmraid, aliide, cmdide, nvraid, viaide. --> | <!-- Ещё может быть необходимо пройтись по: adp94xx, adpahci, adpu320, aic78xx, amdsbs, arc, arcsas, elxstor, HpSAMD, iaStorV, iirsp, LSI_FC, LSI_SAS, LSI_SAS2, LSI_SCSI, megasas, MegaSR, nfrd960, nvraid, nvstor, ql2300, ql40xx, SiSRaid2, SiSRaid4, vhdmp, vsmraid, aliide, cmdide, nvraid, viaide. --> | ||
# Подключить к другой системной плате и загрузиться. | # Подключить к другой системной плате и загрузиться. | ||
+ | |||
+ | == Базовая настройка SRP в Windows 7 == | ||
+ | для 32bit систем: | ||
+ | %HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRoot% | ||
+ | %HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramFilesDir% | ||
+ | %HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\AppData%Rostelecom | ||
+ | %HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Local AppData%webex | ||
+ | |||
+ | для 64bit систем: | ||
+ | %HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRoot% | ||
+ | %HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramFilesDir% | ||
+ | %HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramFilesDir (x86)% | ||
+ | %HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramW6432Dir% | ||
+ | %HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\AppData%Rostelecom | ||
+ | %HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Local AppData%webex | ||
== Кто на каком компьютере вошел в систему == | == Кто на каком компьютере вошел в систему == | ||
=== Вариант 1 === | === Вариант 1 === | ||
− | Все входы фиксируются в журнале Security на контроллерах домена - таким образом задача сводится к выборке со всех контроллеров домена событий категории Logon/Logoff и анализа каждого события. | + | Все входы фиксируются в журнале Security на контроллерах домена - таким образом задача сводится к выборке со всех контроллеров домена событий категории Logon/Logoff и анализа каждого события. Для этого надо написать [https://blogs.technet.microsoft.com/askds/2011/09/26/advanced-xml-filtering-in-the-windows-event-viewer/ фильтр на XML]: |
+ | |||
+ | <QueryList> | ||
+ | <Query Id="0" Path="Security"> | ||
+ | <Select Path="Security"> | ||
+ | *[System[(EventID=4624) and TimeCreated[timediff(@SystemTime) <= 43200000]]] | ||
+ | and | ||
+ | *[EventData[Data[@Name='AuthenticationPackageName'] and (Data='NTLM')]] | ||
+ | </Select> | ||
+ | </Query> | ||
+ | </QueryList> | ||
+ | |||
+ | Это минимально рабочий фильтр показывающий под какой учётной записью пользователя, на какой машине совершили успешный вход за последние 12 часов (43200000 мс). | ||
=== Вариант 2 === | === Вариант 2 === | ||
− | + | Скриптом опрашиваем АРМ о вошедшем пользователе. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | = | + | #Requires -Modules ActiveDirectory |
+ | |||
+ | $CredData = Get-Credential -Credential user@vlgd61.ru | ||
+ | |||
#Создаем фильтр проверки наличия компа в сети | #Создаем фильтр проверки наличия компа в сети | ||
Filter Where-Online | Filter Where-Online | ||
Строка 63: | Строка 91: | ||
} | } | ||
− | $ | + | $CompList=@{} |
#Получаем компы из нужной OU в AD | #Получаем компы из нужной OU в AD | ||
− | $comp_arr= Get- | + | $comp_arr= Get-ADComputer -Credential $CredData -SearchBase "ou=adm, dc=vlgd61,dc=ru" -Filter * | foreach {$_.DNSHostName} | where-online |
#загоняем в цикл | #загоняем в цикл | ||
− | foreach ($pc in $comp_arr) | + | foreach ($pc in $comp_arr) { |
− | + | #Запрос к WMI удаленного компа | |
− | #Запрос к WMI | + | $CS = Get-WmiObject -Credential $CredData Win32_ComputerSystem -ComputerName $pc |
− | $CS = | + | #"Machine Name: " + $pc |
− | "Machine Name: " + $ | + | #"Logged On User: " + $CS.UserName |
− | "Logged On User: " + $CS.UserName | + | |
− | |||
#Заливаю данные в хэш таблицу | #Заливаю данные в хэш таблицу | ||
− | $ | + | $CompList[$pc] = New-Object System.Management.Automation.PSObject |
− | + | $CompList[$pc] | Add-Member noteproperty ComputerName $pc | |
− | $ | + | $CompList[$pc] | Add-Member noteproperty UserName $CS.UserName |
− | $ | + | } |
− | + | Clear-Variable CredData | |
− | |||
#Выгружаем в CSV | #Выгружаем в CSV | ||
− | $ | + | $TimeStamp = Get-Date -Format yyyy-MM-dd_dddd |
+ | $CSVFilePath = "$HOME\Documents\" | ||
+ | $CSVFileName = "$TimeStamp"+"_LoginedUsersOnPC.csv" | ||
+ | $CompList | Export-csv -Path "$CSVFilePath$CSVFileName" -Encoding Unicode -NoTypeInformation -Delimiter ";" -Force | ||
== Групповая политика == | == Групповая политика == | ||
Строка 91: | Строка 120: | ||
Забрать у пользователя права локального админа | Забрать у пользователя права локального админа | ||
net user Администраторы %username% /delete | net user Администраторы %username% /delete | ||
− | + | Вывести и завести машину в домен. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Применить все параметры групповой политики, включая требующие перезагрузки АРМ | Применить все параметры групповой политики, включая требующие перезагрузки АРМ | ||
echo y | gpupdate /force | echo y | gpupdate /force | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=== Задержка начала проверки ФС === | === Задержка начала проверки ФС === | ||
Строка 131: | Строка 140: | ||
reg add "HKEY_USERS\.DEFAULT\Keyboard Layout\Preload" /v 2 /t REG_SZ /d 00000419 /f | reg add "HKEY_USERS\.DEFAULT\Keyboard Layout\Preload" /v 2 /t REG_SZ /d 00000419 /f | ||
− | == | + | == Windows 7: переключение IDE -> AHCI == |
− | + | reg add HKLM\SYSTEM\CurrentControlSet\services\msahci /v start /t REG_DWORD /d 0 /f | |
+ | reg add HKLM\System\CurrentControlSet\Services\Iastor /v start /t REG_DWORD /d 0 /f | ||
+ | reg add HKLM\System\CurrentControlSet\Services\IastorV /v start /t REG_DWORD /d 0 /f | ||
+ | # Перезагрузиться в BIOS. | ||
+ | # Выставить вместо режима IDE, режим AHCI. | ||
+ | # Загрузиться в ОС, дождаться установки драйверов и перезагрузиться снова. | ||
− | + | == Всякое такое... == | |
− | + | ||
− | + | Создать файл нужного размера используя Powershell | |
$f=new-object System.IO.FileStream out.txt, Create, ReadWrite; | $f=new-object System.IO.FileStream out.txt, Create, ReadWrite; | ||
$f.SetLength(10MB); | $f.SetLength(10MB); | ||
$f.close() | $f.close() | ||
− | + | Или более компактный вариант: | |
set-content -value (new-object byte[] 1mb) -encoding byte out.txt | set-content -value (new-object byte[] 1mb) -encoding byte out.txt | ||
Строка 149: | Строка 163: | ||
set-content -value $randArray -encoding byte out.txt | set-content -value $randArray -encoding byte out.txt | ||
− | + | == Работа с архивами == | |
− | + | Начиная с версии .NET Framework 4.5 появился встроенный класс ZipFile в пространстве имён [https://docs.microsoft.com/ru-ru/dotnet/api/system.io.compression?view=netframework-4.5 System.IO.Compression], благодаря которому архивировать и разархивировать файлы одно удовольствие. | |
− | + | ||
− | + | Для работы с возможностями этого класса прежде всего необходимо загрузить соответствующую сборку: | |
− | + | ||
+ | Add-Type -AssemblyName "System.IO.Compression.FileSystem" | ||
+ | |||
+ | Для того, чтобы каталог с файлами в архив необходимо вызвать метод CreateFromDirectory, ему передать путь к каталогу, который будет добавлен и путь к будущему архиву: | ||
+ | |||
+ | # Каталог, который будем архивировать | ||
+ | $Source = 'C:\test' | ||
+ | # Путь, куда положить готовый архив | ||
+ | $ArchiveFileName = 'C:\archive.zip' | ||
+ | # Архивируем | ||
+ | [IO.Compression.ZipFile]::CreateFromDirectory($Source, $ArchiveFileName) | ||
+ | |||
+ | Для извлечения каталогов и файлов из архива, следует вызвать метод ExtractToDirectory, в который нужно передать путь до файла архива, и путь к каталогу, в который нужно извлечь файлы: | ||
+ | |||
+ | # Путь к файлу архива | ||
+ | $ArchiveFileName = 'C:\archive.zip' | ||
+ | # Куда извлекаем | ||
+ | $ExtractPath = 'C:\unzip' | ||
+ | # Извлекаем | ||
+ | [IO.Compression.ZipFile]::ExtractToDirectory($ArchiveFileName, $ExtractPath) | ||
+ | |||
+ | == Принудительный запуск клиента обновления Windows == | ||
+ | Запустить можно, но не отображается прогресс, только результаты выполнения команды. | ||
+ | |||
+ | Поиск новых обновлений: | ||
+ | wuauclt /detectnow | ||
+ | Установить новые обновления: | ||
+ | wuauclt /updatenow | ||
+ | Поскольку командная строка не показывает какого-либо прогресса, лучшим подходом будет проверка и установка обновлений одновременно. Как здесь: | ||
+ | wuauclt /detectnow /updatenow | ||
+ | |||
+ | Вышеперечисленные команды работают во всех версиях Windows, включая Windows 7/Windows Server 2008 R2. | ||
+ | Начиная с Windows 10/Windows Server 2016, вы можете использовать команду UsoClient: | ||
− | + | Начать поиск новых обновлений: | |
− | + | UsoClient StartScan | |
− | + | Начать загрузку обновлений: | |
− | + | UsoClient StartDownload | |
− | + | Начать установку загруженных обновлений: | |
− | + | UsoClient StartInstall | |
− | + | Перезагрузить АРМ после установки обновлений: | |
− | + | UsoClient RestartDevice | |
+ | Всё вышеперечисленное, кроме перезагрузки: | ||
+ | UsoClient ScanInstallWait | ||
== Делегирование прав == | == Делегирование прав == | ||
Строка 204: | Строка 252: | ||
# Alt+Page Up позволяет переключать программы во время сессии, перемещаясь слева направо в переключателе задач Windows. Это все равно что нажать комбинацию Alt+Tab на вашем стандартном компьютере. | # Alt+Page Up позволяет переключать программы во время сессии, перемещаясь слева направо в переключателе задач Windows. Это все равно что нажать комбинацию Alt+Tab на вашем стандартном компьютере. | ||
# Ctrl+Alt+End если вам нужно послать команду Ctrl+Alt+Del на удаленную систему. Нажатие этой клавиши открывает диалоговое окно Microsoft Windows Security, которое позволяет блокировать компьютер, выходить из системы, изменить пароль и запустить Task Manager. | # Ctrl+Alt+End если вам нужно послать команду Ctrl+Alt+Del на удаленную систему. Нажатие этой клавиши открывает диалоговое окно Microsoft Windows Security, которое позволяет блокировать компьютер, выходить из системы, изменить пароль и запустить Task Manager. | ||
+ | |||
+ | == Ошибка: Невозможно запустить службу восстановления == | ||
+ | If you are receiving the "Low Registry Space" error, set the Registry Size Limit to "unlimited": | ||
+ | <!-- | ||
+ | HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control | ||
+ | Key: RegistrySizeLimit | ||
+ | Type: REG_DWORD | ||
+ | Value: 0xffffffff (4294967295) | ||
+ | --> | ||
+ | reg add HKLM\System\CurrentControlSet\Control /v RegistrySizeLimit /t REG_DWORD /d 0xffffffff | ||
+ | # Reboot | ||
+ | # As a Administrator open a Command Prompt and run "SFC /SCANNOW". The command should complete successfully and if any errors were found, they should be corrected. | ||
+ | |||
+ | This was posted on the ESRI forums, from someone who noticed that Visual Studio 2008 was related to the error. Personally I'm not sure if it was VS, or just installing the .net framework. Here's the link for more chatter on the topic... http://forums.esri.com/Thread.asp?c=93&f=1148&t=287391 | ||
== Изменение пароля sa для MS SQL Server == | == Изменение пароля sa для MS SQL Server == | ||
Строка 265: | Строка 327: | ||
=== Безопасность === | === Безопасность === | ||
− | [https://www.microsoft.com/en-us/download/details.aspx? | + | [https://www.microsoft.com/en-us/download/details.aspx?id=19892 Baseline Security Analyzer] |
+ | |||
+ | [https://www.microsoft.com/en-us/download/details.aspx?id=16475 Baseline Configuration Analyzer] | ||
[https://www.microsoft.com/ru-ru/download/details.aspx?id=12273 Security Assessment Tool] | [https://www.microsoft.com/ru-ru/download/details.aspx?id=12273 Security Assessment Tool] | ||
[https://blog.it-kb.ru/2012/08/08/antivirus-exclusions-list-for-microsoft-windows-server/ Список исключений антивируса для Windows Server] | [https://blog.it-kb.ru/2012/08/08/antivirus-exclusions-list-for-microsoft-windows-server/ Список исключений антивируса для Windows Server] | ||
− | |||
− | |||
[https://support.microsoft.com/ru-ru/help/4025687/microsoft-security-advisory-4025685-guidance-for-older-platforms 4025685 рекомендации корпорации Майкрософт по безопасности: руководство для более старых платформ: 13 июня 2017 г.] | [https://support.microsoft.com/ru-ru/help/4025687/microsoft-security-advisory-4025685-guidance-for-older-platforms 4025685 рекомендации корпорации Майкрософт по безопасности: руководство для более старых платформ: 13 июня 2017 г.] | ||
Строка 278: | Строка 340: | ||
[https://www.atraining.ru/lm-ntlm-ntlmv2-armoring/ Бронируем NTLM в домене Active Directory] | [https://www.atraining.ru/lm-ntlm-ntlmv2-armoring/ Бронируем NTLM в домене Active Directory] | ||
+ | |||
+ | [https://habr.com/ru/company/jetinfosystems/blog/478616/ Windows UAC не перестаёт удивлять, или Как обнаружить инсайдера] | ||
+ | |||
+ | [https://www.nomoreransom.org/ru/index.html Дешифровщики] | ||
=== Печать === | === Печать === | ||
− | |||
− | |||
− | |||
[https://technet.microsoft.com/en-us/library/ee791784(v=ws.10).aspx Описания политик перенаправления принтеров] | [https://technet.microsoft.com/en-us/library/ee791784(v=ws.10).aspx Описания политик перенаправления принтеров] | ||
Строка 307: | Строка 370: | ||
[https://habrahabr.ru/company/icl_services/blog/258935/ Инвентаризация и рационализация: управляем программными активами крупных компаний. Опыт использования Microsoft Assessment and Planning Toolkit] | [https://habrahabr.ru/company/icl_services/blog/258935/ Инвентаризация и рационализация: управляем программными активами крупных компаний. Опыт использования Microsoft Assessment and Planning Toolkit] | ||
+ | |||
+ | [http://www.denaie.ru/?p=335 Добавляем дополнительные действия в контекстное меню ADUC] | ||
+ | |||
+ | [https://isazonov.wordpress.com/2009/11/06/%D0%B8%D0%BD%D1%82%D0%B5%D0%B3%D1%80%D0%B0%D1%86%D0%B8%D1%8F-powershell-%D0%B2-aduc/ Интеграция PowerShell в ADUC] |
Текущая версия на 12:29, 14 января 2021
Содержание
- 1 Собираем свой дистрибутив
- 2 Добавляем драйвера в образ
- 3 Запускаем установку с USB диска (флешки) по быстрому
- 4 Перенос ОС на другую системную плату
- 5 Базовая настройка SRP в Windows 7
- 6 Кто на каком компьютере вошел в систему
- 7 Групповая политика
- 8 Windows 7: переключение IDE -> AHCI
- 9 Всякое такое...
- 10 Работа с архивами
- 11 Принудительный запуск клиента обновления Windows
- 12 Делегирование прав
- 13 Горячие клавиши клавиатуры удаленного компьютера
- 14 Ошибка: Невозможно запустить службу восстановления
- 15 Изменение пароля sa для MS SQL Server
- 16 Поддержка версий протокола SMB
- 17 Ссылки
Собираем свой дистрибутив
- Установить ОС на АРМ.
- Выполнить установку необходимого ПО.
- Выполнить необходимые настройки ОС и ПО.
- %windir%\system32\sysprep\sysprep.exe /generalize /oobe /shutdown /unattend:answerfile.xml
- Снять накопитель с целевого АРМ.
- Установить накопитель на АРМ с установленным imagex.
- imagex /capture d: c:\distrib\win7pro32\install.wim "Win7Pro32_custom" /compress maximum /check /verify
- imagex /split c:\distrib\win7pro32\install.wim 4096[1]
Добавляем драйвера в образ
- dism /mount-wim /wimfile:c:\tmp\boot.wim /index:2 /mountdir:c:\tmp\mount
- dism /image:c:\tmp\mount /add-driver:"c:\tmp\usb3" /recurse
- dism /unmount-wim /mountdir:c:\tmp\mount /commit
Запускаем установку с USB диска (флешки) по быстрому
- cmd|PoSh от имени Администратора
- diskpart
- List Disk
- Select Disk 3 (в вашем случае здесь может быть другой номер диска)
- Clean
- Create Partition Primary
- Select Partition 1
- Format FS=NTFS [2] Quick [3]
- Active
- Assign
- List Volume [4]
- Exit
- CHDIR X:\boot [5]
- bootsect /nt60 Y: [6]
- Скопировать все файлы с установочного диска Windows 7 на флешку.
Перенос ОС на другую системную плату
- Импортировать DISM'ом драйвера в /Online образ переносимой ОС.
- reg delete /f HKLM\SYSTEM\MountedDevices
- reg add /f HKLM\SYSTEM\CurrentControlSet\services\amdide /v Start /d 0
- reg add /f HKLM\SYSTEM\CurrentControlSet\services\amdsata /v Start /d 0
- reg add /f HKLM\SYSTEM\CurrentControlSet\services\amdxata /v Start /d 0
- reg add /f HKLM\SYSTEM\CurrentControlSet\services\atapi /v Start /d 0
- reg add /f HKLM\SYSTEM\CurrentControlSet\services\intelide /v Start /d 0
- reg add /f HKLM\SYSTEM\CurrentControlSet\services\msahci /v Start /d 0
- reg add /f HKLM\SYSTEM\CurrentControlSet\services\pciide /v Start /d 0
- Подключить к другой системной плате и загрузиться.
Базовая настройка SRP в Windows 7
для 32bit систем:
%HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRoot% %HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramFilesDir% %HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\AppData%Rostelecom %HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Local AppData%webex
для 64bit систем:
%HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRoot% %HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramFilesDir% %HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramFilesDir (x86)% %HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ProgramW6432Dir% %HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\AppData%Rostelecom %HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Local AppData%webex
Кто на каком компьютере вошел в систему
Вариант 1
Все входы фиксируются в журнале Security на контроллерах домена - таким образом задача сводится к выборке со всех контроллеров домена событий категории Logon/Logoff и анализа каждого события. Для этого надо написать фильтр на XML:
<QueryList> <Query Id="0" Path="Security"> <Select Path="Security"> *[System[(EventID=4624) and TimeCreated[timediff(@SystemTime) <= 43200000]]] and *[EventData[Data[@Name='AuthenticationPackageName'] and (Data='NTLM')]] </Select> </Query> </QueryList>
Это минимально рабочий фильтр показывающий под какой учётной записью пользователя, на какой машине совершили успешный вход за последние 12 часов (43200000 мс).
Вариант 2
Скриптом опрашиваем АРМ о вошедшем пользователе.
#Requires -Modules ActiveDirectory $CredData = Get-Credential -Credential user@vlgd61.ru #Создаем фильтр проверки наличия компа в сети Filter Where-Online { $ping = new-object System.Net.NetworkInformation.Ping trap {Write-Verbose "ping error"; Continue} if ($ping.send($_).Status -eq "Success" ) { $_ } } $CompList=@{} #Получаем компы из нужной OU в AD $comp_arr= Get-ADComputer -Credential $CredData -SearchBase "ou=adm, dc=vlgd61,dc=ru" -Filter * | foreach {$_.DNSHostName} | where-online #загоняем в цикл foreach ($pc in $comp_arr) { #Запрос к WMI удаленного компа $CS = Get-WmiObject -Credential $CredData Win32_ComputerSystem -ComputerName $pc #"Machine Name: " + $pc #"Logged On User: " + $CS.UserName #Заливаю данные в хэш таблицу $CompList[$pc] = New-Object System.Management.Automation.PSObject $CompList[$pc] | Add-Member noteproperty ComputerName $pc $CompList[$pc] | Add-Member noteproperty UserName $CS.UserName } Clear-Variable CredData #Выгружаем в CSV $TimeStamp = Get-Date -Format yyyy-MM-dd_dddd $CSVFilePath = "$HOME\Documents\" $CSVFileName = "$TimeStamp"+"_LoginedUsersOnPC.csv" $CompList | Export-csv -Path "$CSVFilePath$CSVFileName" -Encoding Unicode -NoTypeInformation -Delimiter ";" -Force
Групповая политика
Заставить политику установки|обновления отработать еще раз на этой рабочей станции
Забрать у пользователя права локального админа
net user Администраторы %username% /delete
Вывести и завести машину в домен. Применить все параметры групповой политики, включая требующие перезагрузки АРМ
echo y | gpupdate /force
Задержка начала проверки ФС
В разделе реестра:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager
создать параметр REG_DWORD
AutoChkTimeOut
значением которого является величина промежутка времени, выраженная в секундах.
Настройка языка ввода по умолчанию
- для текущего пользователя,
reg add "HKEY_CURRENT_USER\Keyboard Layout\Preload" /v 1 /t REG_SZ /d 00000409 /f reg add "HKEY_CURRENT_USER\Keyboard Layout\Preload" /v 2 /t REG_SZ /d 00000419 /f
- для экрана приветствия
reg add "HKEY_USERS\.DEFAULT\Keyboard Layout\Preload" /v 1 /t REG_SZ /d 00000409 /f reg add "HKEY_USERS\.DEFAULT\Keyboard Layout\Preload" /v 2 /t REG_SZ /d 00000419 /f
Windows 7: переключение IDE -> AHCI
reg add HKLM\SYSTEM\CurrentControlSet\services\msahci /v start /t REG_DWORD /d 0 /f reg add HKLM\System\CurrentControlSet\Services\Iastor /v start /t REG_DWORD /d 0 /f reg add HKLM\System\CurrentControlSet\Services\IastorV /v start /t REG_DWORD /d 0 /f
- Перезагрузиться в BIOS.
- Выставить вместо режима IDE, режим AHCI.
- Загрузиться в ОС, дождаться установки драйверов и перезагрузиться снова.
Всякое такое...
Создать файл нужного размера используя Powershell
$f=new-object System.IO.FileStream out.txt, Create, ReadWrite; $f.SetLength(10MB); $f.close()
Или более компактный вариант:
set-content -value (new-object byte[] 1mb) -encoding byte out.txt
Заполнение файла мусором:
$randArray = new-object Byte[] 1mb $randObj = new-object System.Random $randObj.NextBytes($randArray) set-content -value $randArray -encoding byte out.txt
Работа с архивами
Начиная с версии .NET Framework 4.5 появился встроенный класс ZipFile в пространстве имён System.IO.Compression, благодаря которому архивировать и разархивировать файлы одно удовольствие.
Для работы с возможностями этого класса прежде всего необходимо загрузить соответствующую сборку:
Add-Type -AssemblyName "System.IO.Compression.FileSystem"
Для того, чтобы каталог с файлами в архив необходимо вызвать метод CreateFromDirectory, ему передать путь к каталогу, который будет добавлен и путь к будущему архиву:
# Каталог, который будем архивировать $Source = 'C:\test' # Путь, куда положить готовый архив $ArchiveFileName = 'C:\archive.zip' # Архивируем [IO.Compression.ZipFile]::CreateFromDirectory($Source, $ArchiveFileName)
Для извлечения каталогов и файлов из архива, следует вызвать метод ExtractToDirectory, в который нужно передать путь до файла архива, и путь к каталогу, в который нужно извлечь файлы:
# Путь к файлу архива $ArchiveFileName = 'C:\archive.zip' # Куда извлекаем $ExtractPath = 'C:\unzip' # Извлекаем [IO.Compression.ZipFile]::ExtractToDirectory($ArchiveFileName, $ExtractPath)
Принудительный запуск клиента обновления Windows
Запустить можно, но не отображается прогресс, только результаты выполнения команды.
Поиск новых обновлений:
wuauclt /detectnow
Установить новые обновления:
wuauclt /updatenow
Поскольку командная строка не показывает какого-либо прогресса, лучшим подходом будет проверка и установка обновлений одновременно. Как здесь:
wuauclt /detectnow /updatenow
Вышеперечисленные команды работают во всех версиях Windows, включая Windows 7/Windows Server 2008 R2. Начиная с Windows 10/Windows Server 2016, вы можете использовать команду UsoClient:
Начать поиск новых обновлений:
UsoClient StartScan
Начать загрузку обновлений:
UsoClient StartDownload
Начать установку загруженных обновлений:
UsoClient StartInstall
Перезагрузить АРМ после установки обновлений:
UsoClient RestartDevice
Всё вышеперечисленное, кроме перезагрузки:
UsoClient ScanInstallWait
Делегирование прав
Для полного раскрытия темы стоит упомянуть AdminSDHolder, который умеет «срывать» делегированные права и «ломать» их наследование. А также про редактирование delegwiz.inf, которое может упростить выполнение типовых операций делегирования.
Поломанное SDPROP'ом наследование дескрипторов безопасности, та ещё ловушка. Плюс есть несколько тонких моментов: В домене contoso.com y вас есть группа personal, которой вы хотите делегировать возможность правки определённого атрибута у ВСЕХ пользователей (например кадровикам дать право заполнять подразделение (department) сотрудника) Вы делегируете полномочия этой группе права на аттрибут department у всех объектов пользователей от корня домена (примеры для dsacls):
dsacls "dc=contoso,dc=com" /A /I:S /G "CONTOSO\personal;RPWP;department;user"
("/I:T" задать не получится, потому как объект «dc=contoso,dc=com» не user, а в правиле доступа явно сказано, что оно для объекта user) Через время вам звонят из персонала и жалуются, что не могут обновить название вашего подразделения.
Вы вспоминаете про AdminADHolder и выполняете:
dsacls "cn=AdminSDHolder,cn=System,dc=contoso,dc=com" /A /I:S /G "CONTOSO\personal;RPWP;department;user"
И опять у персонала не хватает прав на обновление атрибута department на вашей учётной записи. Ведь списке контроля доступа вы задали наследование «на все дочерние объекты». Правило было скопировано на ваш объект пользователя и применяется… к дочерним объектам вашего объекта пользователя
Разгадав эту загадку, вы исправляете ситуацию:
dsacls "cn=AdminSDHolder,cn=System,dc=contoso,dc=com" /A /I:T /G "CONTOSO\personal;RPWP;department;user"
И тут опять звонят из персонала — у них та же проблема, но уже с Василием П., перешедшим недавно из администраторов в программисты (и лишённым недавно прав администратора домена)
Тут вы для себя находите некоторое множество учётных записей со сломанным наследованием, которые вам достались от коллег/предшественников.
Данный «квест» обычно занимает у людей с ним никогда не сталкивающихся не один час.
Горячие клавиши клавиатуры удаленного компьютера
- Ctrl+Alt+(+) позволяет получить снимок экрана всего клиентского окна удаленного компьютера. Это все равно что нажать Print Screen на вашем локальном компьютере. Если вы нажмете Print Screen, то получите снимок экрана локального компьютера.
- Ctrl+Alt+(-) позволяет получить снимок экрана только активного окна во время сессии с удаленным компьютером. Эта комбинация дает тот же результат, что и нажатие Alt+Print Screen на локальном компьютере.
- Alt+Home вызывает меню Start на удаленной системе. Аналогично нажатию клавиши Windows на локальном компьютере.
- Alt+Delete открывает меню окна Windows приложения, запущенного на удаленной системе. Позволяет перемещать и изменять размер окна приложения.
- Ctrl+Alt+Break чтобы переключить сессию работы с удаленным компьютером на полномасштабный режим работы.
- Ctrl+Alt+Pause переключает окно сессии с оконного режима работы на полномасштабный. Однако в этом случае окно удаленного компьютера сохраняет стандартный размер и не заполняет весь экран локального компьютера. Вместо этого оно выводится на черном фоне.
- Alt+Insert позволяет циклически перемещаться по программам на удаленной системе в том порядке, в каком они были запущены. Аналогично комбинации Alt+Tab на локальном компьютере.
- Alt+Page Down позволяет переключать программы во время сессии с удаленной системой, перемещаясь справа налево в переключателе задач Windows. Это то же самое, что нажать комбинацию Alt+Shift+Tab на локальном компьютере.
- Alt+Page Up позволяет переключать программы во время сессии, перемещаясь слева направо в переключателе задач Windows. Это все равно что нажать комбинацию Alt+Tab на вашем стандартном компьютере.
- Ctrl+Alt+End если вам нужно послать команду Ctrl+Alt+Del на удаленную систему. Нажатие этой клавиши открывает диалоговое окно Microsoft Windows Security, которое позволяет блокировать компьютер, выходить из системы, изменить пароль и запустить Task Manager.
Ошибка: Невозможно запустить службу восстановления
If you are receiving the "Low Registry Space" error, set the Registry Size Limit to "unlimited":
reg add HKLM\System\CurrentControlSet\Control /v RegistrySizeLimit /t REG_DWORD /d 0xffffffff
- Reboot
- As a Administrator open a Command Prompt and run "SFC /SCANNOW". The command should complete successfully and if any errors were found, they should be corrected.
This was posted on the ESRI forums, from someone who noticed that Visual Studio 2008 was related to the error. Personally I'm not sure if it was VS, or just installing the .net framework. Here's the link for more chatter on the topic... http://forums.esri.com/Thread.asp?c=93&f=1148&t=287391
Изменение пароля sa для MS SQL Server
Запускаем консоль из-под администратора.
Вводим последовательно команды:
osql -S <Название сервера> -E sp_password NULL, ‘<новый_пароль>’, ’sa’
И затем GO
Поддержка версий протокола SMB
- CIFS — Windows NT 4.0
- SMB 1.0 — Windows 2000
- SMB 2.0 — Windows Server 2008 и Windows Vista SP1
- SMB 2.1 — Windows Server 2008 R2 и Windows 7
- SMB 3.0 — Windows Server 2012 и Windows 8
- SMB 3.02 — Windows Server 2012 R2 и Windows 8.1
- SMB 3.1.1 — Windows Server 2016, Windows 10
При сетевом взаимодействии по SMB между клиентом и сервером используется максимальная версия протокола, поддерживаемая одновременно клиентом и сервером.
Сводная таблица о совместимости версии SMB на стороне клиента и сервера:
Операционная система | Windows 10, Windows Server 2016 | Windows 8.1, Server 2012 R2 | Windows 8, Server 2012 | Windows 7, Server 2008 R2 | Windows Vista, Server 2008 | Windows XP, Server 2003 и ниже | SAMBA ≥v4.3 |
---|---|---|---|---|---|---|---|
Windows 10, Windows Server 2016 | SMB 3.1.1 | SMB 3.02 | SMB 3.0 | SMB 2.1 | SMB 2.0 | SMB 1.0 | SMB 3.1.1 |
Windows 8.1, Server 2012 R2 | SMB 3.02 | SMB 3.02 | SMB 3.0 | SMB 2.1 | SMB 2.0 | SMB 1.0 | SMB 3.02 |
Windows 8, Server 2012 | SMB 3.0 | SMB 3.0 | SMB 3.0 | SMB 2.1 | SMB 2.0 | SMB 1.0 | SMB 3.0 |
Windows 7, Server 2008 R2 | SMB 2.1 | SMB 2.1 | SMB 2.1 | SMB 2.1 | SMB 2.0 | SMB 1.0 | SMB 2.1 |
Windows Vista, Server 2008 | SMB 2.0 | SMB 2.0 | SMB 2.0 | SMB 2.0 | SMB 2.0 | SMB 1.0 | SMB 2.0 |
Windows XP, Server 2003 и ниже | SMB 1.0 | SMB 1.0 | SMB 1.0 | SMB 1.0 | SMB 1.0 | SMB 1.0 | SMB 1.0 |
SAMBA ≥v4.3 | SMB 3.1.1 | SMB 3.02 | SMB 3.0 | SMB 2.1 | SMB 2.0 | SMB 1.0 | - |
Так, например, при подключении клиентского компьютера с Windows 7 к файловому серверу с Windows Server 2012 будет использоваться протокол SMB 2.1
Ссылки
Групповая политика
Обновление MS16-072 ломает Group Policy. Что с этим делать?
Передача параметров скрипту задачи планировщика задач запущенной по триггеру
Цикл статей о возможностях групповой политики по установке и удалению ПО
Group policy – настройка несистемных сервисов
Загрузка
VHD Native Boot снаружи и внутри
Безопасность
Baseline Configuration Analyzer
Список исключений антивируса для Windows Server
Бронируем NTLM в домене Active Directory
Windows UAC не перестаёт удивлять, или Как обнаружить инсайдера
Печать
Описания политик перенаправления принтеров
Остальное
Powershell – автоматизируем построение организационной структуры в Active Directory ч.2
Патч для получения обновлений на ПК с Windows 7 и 8.1 и чипами Kaby Lake/Ryzen
Набор ресурсов по Office 2007|Поддержка Office 2007 закончится 10 октября 2017 г.
Генерируем ключ расшифровки сами для криптовымогателя Petya
Создание носителя с обновлениями для мест без связи
Active Directory: Использование LDAP-фильтров
Как быстро оценить, что есть в инфраструктуре и как оно (на сколько) используется?
Добавляем дополнительные действия в контекстное меню ADUC
Интеграция PowerShell в ADUC- ↑ По необходимости нарезать получившийся образ на части чтобы поместилось на болванки/FAT32 флешки.
- ↑ Можно указать fat32. Тогда установочный образ придётся резать DISM/ImageX'ом на тома.
- ↑ Иначе весь процесс растянется на очень долгое время!
- ↑ Определим какую букву назначило диску.
- ↑ Где X — буква компакт-диска с Windows 7 или же буква смонтированного образа установочного диска Windows 7.
- ↑ Y — это буква, соответствующая Вашей загрузочной флешке.