6ae04dd967
Co-authored-by: Cursor <cursoragent@cursor.com>
82 lines
4.1 KiB
Markdown
82 lines
4.1 KiB
Markdown
# Публикация пакета на NETLOGON
|
||
|
||
Скрипт **`update-rdp-monitor.ps1`** на сервере публикации (например DC3) выполняет `git pull` и копирует файлы в шару.
|
||
|
||
## Путь на шаре (`-NetlogonDest`)
|
||
|
||
После `git pull` скрипт копирует дистрибутив в UNC-каталог NETLOGON:
|
||
|
||
```text
|
||
\\<имя-DC>\NETLOGON\RDP-login-monitor
|
||
```
|
||
|
||
`<имя-DC>` — NetBIOS-имя или FQDN **контроллера домена**, где лежит SYSVOL (тот же хост, с которого GPO запускает `Deploy-LoginMonitor.ps1`). Примеры:
|
||
|
||
- `\\K6A-DC3\NETLOGON\RDP-login-monitor`
|
||
- `\\dc01.corp.example.com\NETLOGON\RDP-login-monitor`
|
||
|
||
Значение по умолчанию в скрипте — **заглушка** `\\dc.contoso.local\NETLOGON\RDP-login-monitor`. В реальном домене её **нужно переопределить**, иначе после успешного `git pull` будет ошибка **«Не найден сетевой путь»** (скрипт не достучится до несуществующего хоста).
|
||
|
||
Проверка перед публикацией:
|
||
|
||
```powershell
|
||
Test-Path '\\K6A-DC3\NETLOGON\RDP-login-monitor'
|
||
# или хотя бы корень шары:
|
||
Test-Path '\\K6A-DC3\NETLOGON'
|
||
```
|
||
|
||
Должно вернуть `True` под учётной записью, с которой запускаете публикацию (на DC — обычно локальный админ; с рабочей станции — доменный админ с доступом к NETLOGON).
|
||
|
||
## Параметры по умолчанию
|
||
|
||
| Параметр | Значение |
|
||
|----------|----------|
|
||
| `$RepoPath` | `C:\Soft\Git\RDP-login-monitor` |
|
||
| `$NetlogonDest` | `\\dc.contoso.local\NETLOGON\RDP-login-monitor` *(заглушка — замените на свой DC)* |
|
||
| `$GitUrl` | `https://git.papatramp.ru/PapaTramp/RDP-login-monitor.git` |
|
||
| `$GitBranch` | `main` |
|
||
| `$LogFile` | `C:\soft\Logs\update-rdp-monitor.log` |
|
||
|
||
## Копируемые файлы
|
||
|
||
- `Login_Monitor.ps1`
|
||
- `Sac-Client.ps1`
|
||
- `version.txt`
|
||
- `Deploy-LoginMonitor.ps1`
|
||
- `Restart-RdpLoginMonitor.ps1`
|
||
- `Exchange-MailSecurity.ps1`
|
||
- `Notify-Common.ps1`
|
||
- `Install-DomainMonitors.ps1`
|
||
- `Deploy-DomainMonitors.ps1`
|
||
- `exchange_monitor.settings.example.ps1`
|
||
- `login_monitor.settings.example.ps1`
|
||
|
||
## Запуск
|
||
|
||
**На сервере публикации** (клон репозитория + доступ к NETLOGON):
|
||
|
||
```powershell
|
||
powershell.exe -NoProfile -ExecutionPolicy Bypass -File C:\Soft\Git\RDP-login-monitor\update-rdp-monitor.ps1 `
|
||
-NetlogonDest '\\K6A-DC3\NETLOGON\RDP-login-monitor'
|
||
```
|
||
|
||
Другой remote git (закрытое зеркало):
|
||
|
||
```powershell
|
||
powershell.exe -NoProfile -ExecutionPolicy Bypass -File C:\Soft\Git\RDP-login-monitor\update-rdp-monitor.ps1 `
|
||
-NetlogonDest '\\K6A-DC3\NETLOGON\RDP-login-monitor' `
|
||
-GitUrl 'https://git.papatramp.ru/PapaTramp/RDP-login-monitor.git'
|
||
```
|
||
|
||
Пробный прогон без копирования:
|
||
|
||
```powershell
|
||
powershell.exe -NoProfile -ExecutionPolicy Bypass -File C:\Soft\Git\RDP-login-monitor\update-rdp-monitor.ps1 `
|
||
-NetlogonDest '\\K6A-DC3\NETLOGON\RDP-login-monitor' `
|
||
-WhatIf
|
||
```
|
||
|
||
После pull обязательно проверьте **`version.txt`** на шаре — его номер определяет, подтянут ли обновления на клиентах. Метка может включать суффикс (например **`1.2.27-SAC`**); **`Deploy-LoginMonitor.ps1`** сравнивает её с **`deployed_version.txt`** по полной строке.
|
||
|
||
Файлы **`*.ps1`** при копировании пересохраняются как **UTF-8 с BOM** (иначе PowerShell 5.1 с NETLOGON может не разобрать кириллицу в скриптах). Скрипты **`Deploy-DomainMonitors.ps1`** и **`Install-DomainMonitors.ps1`** используют **ASCII** в рабочих строках — их можно запускать и без перепубликации.
|