Files
fix-DAK-PC/docs/LOCAL-RUNBOOK.md
T
PTah 14348a0181 feat: локальные скрипты починки RDP/TLS для Windows (fix-DAK-PC)
Fix-RdpTls.ps1 с фазами диагностики, cert, ACL, привязкой; самотесты; docs repair install и возврат TLS.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 19:05:29 +10:00

113 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Пошаговый runbook — за компом DAK-PC (локально)
Выполняйте **на проблемном ПК** в PowerShell **от имени администратора**.
## 0. Подготовка
```powershell
# Скопируйте репозиторий, например:
# git clone https://git.kalinamall.ru/PapaTramp/fix-DAK-PC.git C:\Tools\fix-DAK-PC
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass -Force
cd C:\Tools\fix-DAK-PC\scripts
```
## 1. Самотесты (обязательно)
```powershell
.\Invoke-RdpRepairSelfTest.ps1 -IncludeAdminTests
```
Ожидание: `FAIL=0`. При ошибках — не продолжайте.
## 2. Диагностика
```powershell
.\Fix-RdpTls.ps1 -DiagnoseOnly
```
Отчёт: `%ProgramData%\RdpRepair\report-*.txt`
Лог: `%ProgramData%\RdpRepair\repair-*.log`
Сохраните отчёт на флешку / в тикет.
## 3. Полный автоматический ремонт TLS
```powershell
.\Fix-RdpTls.ps1
```
Скрипт спросит подтверждение на каждой фазе:
1. Очистка cert + нативный сброс
2. Опционально **reboot** (если Windows должен сам создать cert)
3. Создание локального cert + ACL + привязка
4. Проверка **Hash AFTER**
5. Предложение `SecurityLayer=2`
### Если после reboot (шаг 3.2)
Снова с консоли:
```powershell
cd C:\Tools\fix-DAK-PC\scripts
.\Invoke-RdpRepairSelfTest.ps1 -IncludeAdminTests
.\Fix-RdpTls.ps1
```
## 4. Если Hash AFTER пустой (TermService отклоняет cert)
### 4a. Срочный RDP (без TLS)
```powershell
.\Fix-RdpTls.ps1 -EmergencyRdpOnly
```
Проверьте RDP с другого ПК. На клиенте:
```powershell
Remove-Item "HKCU:\Software\Microsoft\Terminal Server Client\Servers\DAK-PC" -Recurse -Force -ErrorAction SilentlyContinue
```
### 4b. Repair install Windows
См. [REPAIR-INSTALL.md](REPAIR-INSTALL.md) — `setup.exe` → обновление с сохранением файлов.
После repair:
```powershell
.\Fix-RdpTls.ps1
```
## 5. Возврат нормального TLS
**Только** когда `Hash AFTER` совпадает с thumbprint и RDP с TLS работает:
```powershell
.\Fix-RdpTls.ps1 -RestoreTls
```
Подробно: [RETURN-TO-TLS.md](RETURN-TO-TLS.md).
## 6. DISM / SFC (до или после repair)
```powershell
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow
```
Перезагрузка → снова `.\Fix-RdpTls.ps1`.
## Критерии «готово»
- [ ] `Cert store` — cert с `NotAfter` в будущем
- [ ] `SSLCertificateSHA1Hash` после старта TermService **не пустой**
- [ ] `SecurityLayer` = **2**
- [ ] События 1057 / 36870 не появляются при подключении RDP
- [ ] RDP с клиента без `-EmergencyRdpOnly`
## Текущее состояние DAK-PC (на момент создания репо)
- Работал обход: `SecurityLayer=0`
- Перед `RestoreTls` обязательно починить привязку cert или сделать repair install