blockmine 1.24.0 → 1.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (346) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.en.md +427 -0
  3. package/README.md +40 -0
  4. package/backend/cli.js +1 -1
  5. package/backend/src/ai/plugin-assistant-system-prompt.md +664 -5
  6. package/backend/src/api/routes/bots.js +13 -0
  7. package/backend/src/api/routes/servers.js +14 -2
  8. package/backend/src/core/BotProcess.js +98 -2
  9. package/backend/src/core/PluginLoader.js +83 -3
  10. package/backend/src/core/PluginManager.js +75 -5
  11. package/backend/src/core/services/BotLifecycleService.js +186 -2
  12. package/backend/src/server.js +11 -1
  13. package/frontend/dist/assets/browser-ponyfill-DN7pwmHT.js +2 -0
  14. package/frontend/dist/assets/index-LSy71uwm.js +11261 -0
  15. package/frontend/dist/assets/index-SfhKxI4-.css +32 -0
  16. package/frontend/dist/flags/en.svg +32 -0
  17. package/frontend/dist/flags/ru.svg +5 -0
  18. package/frontend/dist/index.html +2 -2
  19. package/frontend/dist/locales/en/admin.json +100 -0
  20. package/frontend/dist/locales/en/api-keys.json +58 -0
  21. package/frontend/dist/locales/en/bots.json +110 -0
  22. package/frontend/dist/locales/en/common.json +47 -0
  23. package/frontend/dist/locales/en/configuration.json +22 -0
  24. package/frontend/dist/locales/en/console.json +10 -0
  25. package/frontend/dist/locales/en/dashboard.json +85 -0
  26. package/frontend/dist/locales/en/dialogs.json +70 -0
  27. package/frontend/dist/locales/en/event-graphs.json +50 -0
  28. package/frontend/dist/locales/en/graph-store.json +70 -0
  29. package/frontend/dist/locales/en/login.json +34 -0
  30. package/frontend/dist/locales/en/management.json +114 -0
  31. package/frontend/dist/locales/en/minecraft-viewer.json +27 -0
  32. package/frontend/dist/locales/en/nodes.json +1077 -0
  33. package/frontend/dist/locales/en/permissions.json +50 -0
  34. package/frontend/dist/locales/en/plugin-detail.json +49 -0
  35. package/frontend/dist/locales/en/plugins.json +110 -0
  36. package/frontend/dist/locales/en/proxies.json +81 -0
  37. package/frontend/dist/locales/en/servers.json +39 -0
  38. package/frontend/dist/locales/en/setup.json +17 -0
  39. package/frontend/dist/locales/en/sidebar.json +27 -0
  40. package/frontend/dist/locales/en/tasks.json +62 -0
  41. package/frontend/dist/locales/en/visual-editor.json +219 -0
  42. package/frontend/dist/locales/en/websocket.json +86 -0
  43. package/frontend/dist/locales/ru/admin.json +100 -0
  44. package/frontend/dist/locales/ru/api-keys.json +58 -0
  45. package/frontend/dist/locales/ru/bots.json +110 -0
  46. package/frontend/dist/locales/ru/common.json +49 -0
  47. package/frontend/dist/locales/ru/configuration.json +22 -0
  48. package/frontend/dist/locales/ru/console.json +10 -0
  49. package/frontend/dist/locales/ru/dashboard.json +85 -0
  50. package/frontend/dist/locales/ru/dialogs.json +70 -0
  51. package/frontend/dist/locales/ru/event-graphs.json +50 -0
  52. package/frontend/dist/locales/ru/graph-store.json +70 -0
  53. package/frontend/dist/locales/ru/login.json +34 -0
  54. package/frontend/dist/locales/ru/management.json +114 -0
  55. package/frontend/dist/locales/ru/minecraft-viewer.json +27 -0
  56. package/frontend/dist/locales/ru/nodes.json +1077 -0
  57. package/frontend/dist/locales/ru/permissions.json +50 -0
  58. package/frontend/dist/locales/ru/plugin-detail.json +49 -0
  59. package/frontend/dist/locales/ru/plugins.json +110 -0
  60. package/frontend/dist/locales/ru/proxies.json +81 -0
  61. package/frontend/dist/locales/ru/servers.json +39 -0
  62. package/frontend/dist/locales/ru/setup.json +17 -0
  63. package/frontend/dist/locales/ru/sidebar.json +27 -0
  64. package/frontend/dist/locales/ru/tasks.json +62 -0
  65. package/frontend/dist/locales/ru/visual-editor.json +221 -0
  66. package/frontend/dist/locales/ru/websocket.json +86 -0
  67. package/frontend/dist/monacoeditorwork/css.worker.bundle.js +7 -7
  68. package/frontend/dist/monacoeditorwork/html.worker.bundle.js +7 -7
  69. package/frontend/dist/monacoeditorwork/json.worker.bundle.js +7 -7
  70. package/frontend/dist/monacoeditorwork/ts.worker.bundle.js +3 -3
  71. package/frontend/package.json +4 -0
  72. package/package.json +1 -1
  73. package/screen/3dviewer.png +0 -0
  74. package/screen/console.png +0 -0
  75. package/screen/dashboard.png +0 -0
  76. package/screen/graph_collabe.png +0 -0
  77. package/screen/graph_live_debug.png +0 -0
  78. package/screen/language_selector.png +0 -0
  79. package/screen/management_command.png +0 -0
  80. package/screen/node_debug_trace.png +0 -0
  81. package/screen/plugin_/320/276/320/261/320/267/320/276/321/200.png +0 -0
  82. package/screen/websocket.png +0 -0
  83. package/screen//320/275/320/260/321/201/321/202/321/200/320/276/320/271/320/272/320/270_/320/276/321/202/320/264/320/265/320/273/321/214/320/275/321/213/321/205_/320/272/320/276/320/274/320/260/320/275/320/264_/320/272/320/260/320/266/320/264/321/203_/320/272/320/276/320/274/320/260/320/275/320/273/320/264/321/203_/320/274/320/276/320/266/320/275/320/276_/320/275/320/260/321/201/321/202/321/200/320/260/320/270/320/262/320/260/321/202/321/214.png +0 -0
  84. package/screen//320/277/320/273/320/260/320/275/320/270/321/200/320/276/320/262/321/211/320/270/320/272_/320/274/320/276/320/266/320/275/320/276_/320/267/320/260/320/264/320/260/320/262/320/260/321/202/321/214_/320/264/320/265/320/271/321/201/321/202/320/262/320/270/321/217_/320/277/320/276_/320/262/321/200/320/265/320/274/320/265/320/275/320/270.png +0 -0
  85. package/.claude/agents/README.md +0 -469
  86. package/.claude/agents/auth-route-debugger.md +0 -118
  87. package/.claude/agents/auth-route-tester.md +0 -93
  88. package/.claude/agents/auto-error-resolver.md +0 -97
  89. package/.claude/agents/build-optimizer.md +0 -236
  90. package/.claude/agents/code-architect.md +0 -34
  91. package/.claude/agents/code-architecture-reviewer.md +0 -83
  92. package/.claude/agents/code-explorer.md +0 -51
  93. package/.claude/agents/code-refactor-master.md +0 -94
  94. package/.claude/agents/code-reviewer.md +0 -46
  95. package/.claude/agents/cost-optimizer.md +0 -134
  96. package/.claude/agents/deployment-orchestrator.md +0 -113
  97. package/.claude/agents/documentation-architect.md +0 -82
  98. package/.claude/agents/frontend-error-fixer.md +0 -77
  99. package/.claude/agents/iac-code-generator.md +0 -71
  100. package/.claude/agents/incident-responder.md +0 -346
  101. package/.claude/agents/infrastructure-architect.md +0 -31
  102. package/.claude/agents/kubernetes-specialist.md +0 -56
  103. package/.claude/agents/migration-planner.md +0 -181
  104. package/.claude/agents/network-architect.md +0 -196
  105. package/.claude/agents/plan-reviewer.md +0 -52
  106. package/.claude/agents/refactor-planner.md +0 -63
  107. package/.claude/agents/security-scanner.md +0 -102
  108. package/.claude/agents/web-research-specialist.md +0 -78
  109. package/.claude/commands/cost-analysis.md +0 -315
  110. package/.claude/commands/dev-docs-update.md +0 -55
  111. package/.claude/commands/dev-docs.md +0 -51
  112. package/.claude/commands/feature-dev.md +0 -125
  113. package/.claude/commands/incident-debug.md +0 -247
  114. package/.claude/commands/infra-plan.md +0 -81
  115. package/.claude/commands/migration-plan.md +0 -478
  116. package/.claude/commands/route-research-for-testing.md +0 -37
  117. package/.claude/commands/security-review.md +0 -66
  118. package/.claude/hooks/CONFIG.md +0 -448
  119. package/.claude/hooks/README.md +0 -163
  120. package/.claude/hooks/SKILL_ACTIVATION_COMPLETE.md +0 -226
  121. package/.claude/hooks/WINDOWS_HOOKS_README.md +0 -151
  122. package/.claude/hooks/add-skill-activation-banners.ts +0 -132
  123. package/.claude/hooks/comprehensive-skill-test.ts +0 -1315
  124. package/.claude/hooks/error-handling-reminder.sh +0 -12
  125. package/.claude/hooks/error-handling-reminder.ts +0 -222
  126. package/.claude/hooks/k8s-manifest-validator.sh +0 -56
  127. package/.claude/hooks/package-lock.json +0 -556
  128. package/.claude/hooks/package.json +0 -16
  129. package/.claude/hooks/post-tool-use-tracker.ps1 +0 -174
  130. package/.claude/hooks/post-tool-use-tracker.sh +0 -183
  131. package/.claude/hooks/security-policy-check.sh +0 -247
  132. package/.claude/hooks/skill-activation-prompt.ps1 +0 -10
  133. package/.claude/hooks/skill-activation-prompt.sh +0 -10
  134. package/.claude/hooks/skill-activation-prompt.ts +0 -141
  135. package/.claude/hooks/stop-build-check-enhanced.sh +0 -130
  136. package/.claude/hooks/terraform-validator.sh +0 -53
  137. package/.claude/hooks/test-input.json +0 -7
  138. package/.claude/hooks/test-skill-activation.ts +0 -427
  139. package/.claude/hooks/trigger-build-resolver.sh +0 -79
  140. package/.claude/hooks/tsc-check.sh +0 -173
  141. package/.claude/hooks/tsconfig.json +0 -19
  142. package/.claude/settings.json +0 -59
  143. package/.claude/settings.local.json +0 -67
  144. package/.claude/skills/README.md +0 -507
  145. package/.claude/skills/api-engineering/SKILL.md +0 -63
  146. package/.claude/skills/api-engineering/resources/api-versioning.md +0 -88
  147. package/.claude/skills/api-engineering/resources/graphql-patterns.md +0 -106
  148. package/.claude/skills/api-engineering/resources/rate-limiting.md +0 -118
  149. package/.claude/skills/api-engineering/resources/rest-api-design.md +0 -105
  150. package/.claude/skills/backend-dev-guidelines/SKILL.md +0 -306
  151. package/.claude/skills/backend-dev-guidelines/resources/architecture-overview.md +0 -451
  152. package/.claude/skills/backend-dev-guidelines/resources/async-and-errors.md +0 -307
  153. package/.claude/skills/backend-dev-guidelines/resources/complete-examples.md +0 -638
  154. package/.claude/skills/backend-dev-guidelines/resources/configuration.md +0 -275
  155. package/.claude/skills/backend-dev-guidelines/resources/database-patterns.md +0 -224
  156. package/.claude/skills/backend-dev-guidelines/resources/middleware-guide.md +0 -213
  157. package/.claude/skills/backend-dev-guidelines/resources/routing-and-controllers.md +0 -756
  158. package/.claude/skills/backend-dev-guidelines/resources/sentry-and-monitoring.md +0 -336
  159. package/.claude/skills/backend-dev-guidelines/resources/services-and-repositories.md +0 -789
  160. package/.claude/skills/backend-dev-guidelines/resources/testing-guide.md +0 -235
  161. package/.claude/skills/backend-dev-guidelines/resources/validation-patterns.md +0 -754
  162. package/.claude/skills/budget-and-cost-management/SKILL.md +0 -850
  163. package/.claude/skills/build-engineering/SKILL.md +0 -431
  164. package/.claude/skills/build-engineering/resources/artifact-repositories.md +0 -72
  165. package/.claude/skills/build-engineering/resources/build-caching.md +0 -96
  166. package/.claude/skills/build-engineering/resources/build-pipelines.md +0 -105
  167. package/.claude/skills/build-engineering/resources/build-security.md +0 -95
  168. package/.claude/skills/build-engineering/resources/build-systems.md +0 -389
  169. package/.claude/skills/build-engineering/resources/compilation-optimization.md +0 -201
  170. package/.claude/skills/build-engineering/resources/dependency-management.md +0 -73
  171. package/.claude/skills/build-engineering/resources/monorepo-builds.md +0 -110
  172. package/.claude/skills/build-engineering/resources/performance-optimization.md +0 -113
  173. package/.claude/skills/build-engineering/resources/reproducible-builds.md +0 -82
  174. package/.claude/skills/cloud-engineering/SKILL.md +0 -675
  175. package/.claude/skills/cloud-engineering/resources/aws-patterns.md +0 -742
  176. package/.claude/skills/cloud-engineering/resources/azure-patterns.md +0 -714
  177. package/.claude/skills/cloud-engineering/resources/cleared-cloud-environments.md +0 -987
  178. package/.claude/skills/cloud-engineering/resources/cloud-cost-optimization.md +0 -757
  179. package/.claude/skills/cloud-engineering/resources/cloud-networking.md +0 -1058
  180. package/.claude/skills/cloud-engineering/resources/cloud-security-tools.md +0 -1530
  181. package/.claude/skills/cloud-engineering/resources/cloud-security.md +0 -990
  182. package/.claude/skills/cloud-engineering/resources/gcp-patterns.md +0 -758
  183. package/.claude/skills/cloud-engineering/resources/migration-strategies.md +0 -820
  184. package/.claude/skills/cloud-engineering/resources/multi-cloud-strategies.md +0 -670
  185. package/.claude/skills/cloud-engineering/resources/oci-patterns.md +0 -1198
  186. package/.claude/skills/cloud-engineering/resources/serverless-patterns.md +0 -795
  187. package/.claude/skills/cloud-engineering/resources/well-architected-frameworks.md +0 -966
  188. package/.claude/skills/cybersecurity/SKILL.md +0 -409
  189. package/.claude/skills/cybersecurity/resources/security-architecture.md +0 -266
  190. package/.claude/skills/database-engineering/SKILL.md +0 -61
  191. package/.claude/skills/database-engineering/resources/backup-and-recovery.md +0 -72
  192. package/.claude/skills/database-engineering/resources/database-replication.md +0 -63
  193. package/.claude/skills/database-engineering/resources/postgresql-fundamentals.md +0 -70
  194. package/.claude/skills/database-engineering/resources/query-optimization.md +0 -68
  195. package/.claude/skills/devsecops/SKILL.md +0 -374
  196. package/.claude/skills/devsecops/resources/ci-cd-security.md +0 -204
  197. package/.claude/skills/devsecops/resources/compliance-automation.md +0 -530
  198. package/.claude/skills/devsecops/resources/compliance-frameworks.md +0 -2322
  199. package/.claude/skills/devsecops/resources/container-security.md +0 -915
  200. package/.claude/skills/devsecops/resources/cspm-integration.md +0 -1440
  201. package/.claude/skills/devsecops/resources/policy-enforcement.md +0 -619
  202. package/.claude/skills/devsecops/resources/secrets-management.md +0 -755
  203. package/.claude/skills/devsecops/resources/security-monitoring.md +0 -146
  204. package/.claude/skills/devsecops/resources/security-scanning.md +0 -887
  205. package/.claude/skills/devsecops/resources/security-testing.md +0 -203
  206. package/.claude/skills/devsecops/resources/supply-chain-security.md +0 -518
  207. package/.claude/skills/devsecops/resources/vulnerability-management.md +0 -481
  208. package/.claude/skills/devsecops/resources/zero-trust-architecture.md +0 -177
  209. package/.claude/skills/documentation-as-code/SKILL.md +0 -323
  210. package/.claude/skills/documentation-as-code/resources/api-documentation.md +0 -90
  211. package/.claude/skills/documentation-as-code/resources/changelog-management.md +0 -79
  212. package/.claude/skills/documentation-as-code/resources/diagram-generation.md +0 -44
  213. package/.claude/skills/documentation-as-code/resources/docs-as-code-workflow.md +0 -99
  214. package/.claude/skills/documentation-as-code/resources/documentation-automation.md +0 -68
  215. package/.claude/skills/documentation-as-code/resources/documentation-sites.md +0 -79
  216. package/.claude/skills/documentation-as-code/resources/markdown-best-practices.md +0 -162
  217. package/.claude/skills/documentation-as-code/resources/openapi-specification.md +0 -77
  218. package/.claude/skills/documentation-as-code/resources/readme-engineering.md +0 -60
  219. package/.claude/skills/documentation-as-code/resources/technical-writing-guide.md +0 -202
  220. package/.claude/skills/engineering-management/SKILL.md +0 -356
  221. package/.claude/skills/engineering-management/resources/career-ladders.md +0 -609
  222. package/.claude/skills/engineering-management/resources/hiring-and-assessment.md +0 -555
  223. package/.claude/skills/engineering-management/resources/one-on-one-guides.md +0 -609
  224. package/.claude/skills/engineering-management/resources/resource-planning.md +0 -557
  225. package/.claude/skills/engineering-management/resources/team-organization-patterns.md +0 -491
  226. package/.claude/skills/engineering-management/resources/technical-interviews.md +0 -474
  227. package/.claude/skills/engineering-operations-management/SKILL.md +0 -817
  228. package/.claude/skills/error-tracking/SKILL.md +0 -379
  229. package/.claude/skills/frontend-design/SKILL.md +0 -42
  230. package/.claude/skills/frontend-dev-guidelines/SKILL.md +0 -403
  231. package/.claude/skills/frontend-dev-guidelines/resources/common-patterns.md +0 -331
  232. package/.claude/skills/frontend-dev-guidelines/resources/complete-examples.md +0 -872
  233. package/.claude/skills/frontend-dev-guidelines/resources/component-patterns.md +0 -502
  234. package/.claude/skills/frontend-dev-guidelines/resources/data-fetching.md +0 -767
  235. package/.claude/skills/frontend-dev-guidelines/resources/file-organization.md +0 -502
  236. package/.claude/skills/frontend-dev-guidelines/resources/loading-and-error-states.md +0 -501
  237. package/.claude/skills/frontend-dev-guidelines/resources/performance.md +0 -406
  238. package/.claude/skills/frontend-dev-guidelines/resources/routing-guide.md +0 -364
  239. package/.claude/skills/frontend-dev-guidelines/resources/styling-guide.md +0 -428
  240. package/.claude/skills/frontend-dev-guidelines/resources/typescript-standards.md +0 -418
  241. package/.claude/skills/general-it-engineering/SKILL.md +0 -393
  242. package/.claude/skills/general-it-engineering/resources/asset-management.md +0 -712
  243. package/.claude/skills/general-it-engineering/resources/automation-orchestration.md +0 -817
  244. package/.claude/skills/general-it-engineering/resources/business-continuity.md +0 -786
  245. package/.claude/skills/general-it-engineering/resources/change-management.md +0 -715
  246. package/.claude/skills/general-it-engineering/resources/enterprise-monitoring.md +0 -729
  247. package/.claude/skills/general-it-engineering/resources/help-desk-operations.md +0 -738
  248. package/.claude/skills/general-it-engineering/resources/incident-service-management.md +0 -834
  249. package/.claude/skills/general-it-engineering/resources/it-governance.md +0 -753
  250. package/.claude/skills/general-it-engineering/resources/itil-framework.md +0 -503
  251. package/.claude/skills/general-it-engineering/resources/service-management.md +0 -669
  252. package/.claude/skills/infrastructure-architecture/SKILL.md +0 -328
  253. package/.claude/skills/infrastructure-architecture/resources/architecture-decision-records.md +0 -505
  254. package/.claude/skills/infrastructure-architecture/resources/architecture-patterns.md +0 -528
  255. package/.claude/skills/infrastructure-architecture/resources/capacity-planning.md +0 -453
  256. package/.claude/skills/infrastructure-architecture/resources/cleared-environment-architecture.md +0 -773
  257. package/.claude/skills/infrastructure-architecture/resources/cost-architecture.md +0 -499
  258. package/.claude/skills/infrastructure-architecture/resources/data-architecture.md +0 -501
  259. package/.claude/skills/infrastructure-architecture/resources/disaster-recovery.md +0 -535
  260. package/.claude/skills/infrastructure-architecture/resources/migration-architecture.md +0 -512
  261. package/.claude/skills/infrastructure-architecture/resources/multi-region-design.md +0 -608
  262. package/.claude/skills/infrastructure-architecture/resources/reference-architectures.md +0 -562
  263. package/.claude/skills/infrastructure-architecture/resources/security-architecture.md +0 -538
  264. package/.claude/skills/infrastructure-architecture/resources/system-design-principles.md +0 -489
  265. package/.claude/skills/infrastructure-architecture/resources/workload-classification.md +0 -1000
  266. package/.claude/skills/infrastructure-strategy/SKILL.md +0 -924
  267. package/.claude/skills/network-engineering/SKILL.md +0 -385
  268. package/.claude/skills/network-engineering/resources/dns-management.md +0 -738
  269. package/.claude/skills/network-engineering/resources/load-balancing.md +0 -820
  270. package/.claude/skills/network-engineering/resources/network-architecture.md +0 -546
  271. package/.claude/skills/network-engineering/resources/network-security.md +0 -921
  272. package/.claude/skills/network-engineering/resources/network-troubleshooting.md +0 -749
  273. package/.claude/skills/network-engineering/resources/routing-switching.md +0 -373
  274. package/.claude/skills/network-engineering/resources/sdn-networking.md +0 -695
  275. package/.claude/skills/network-engineering/resources/service-mesh-networking.md +0 -777
  276. package/.claude/skills/network-engineering/resources/tcp-ip-protocols.md +0 -444
  277. package/.claude/skills/network-engineering/resources/vpn-connectivity.md +0 -672
  278. package/.claude/skills/node-development/SKILL.md +0 -317
  279. package/.claude/skills/observability-engineering/SKILL.md +0 -101
  280. package/.claude/skills/observability-engineering/resources/apm-tools.md +0 -97
  281. package/.claude/skills/observability-engineering/resources/correlation-strategies.md +0 -87
  282. package/.claude/skills/observability-engineering/resources/distributed-tracing.md +0 -98
  283. package/.claude/skills/observability-engineering/resources/logs-aggregation.md +0 -118
  284. package/.claude/skills/observability-engineering/resources/observability-cost-optimization.md +0 -141
  285. package/.claude/skills/observability-engineering/resources/opentelemetry.md +0 -110
  286. package/.claude/skills/platform-engineering/SKILL.md +0 -555
  287. package/.claude/skills/platform-engineering/resources/architecture-overview.md +0 -600
  288. package/.claude/skills/platform-engineering/resources/container-orchestration.md +0 -916
  289. package/.claude/skills/platform-engineering/resources/cost-optimization.md +0 -634
  290. package/.claude/skills/platform-engineering/resources/developer-platforms.md +0 -670
  291. package/.claude/skills/platform-engineering/resources/gitops-automation.md +0 -650
  292. package/.claude/skills/platform-engineering/resources/infrastructure-as-code.md +0 -778
  293. package/.claude/skills/platform-engineering/resources/infrastructure-standards.md +0 -708
  294. package/.claude/skills/platform-engineering/resources/multi-tenancy.md +0 -602
  295. package/.claude/skills/platform-engineering/resources/platform-security.md +0 -711
  296. package/.claude/skills/platform-engineering/resources/resource-management.md +0 -592
  297. package/.claude/skills/platform-engineering/resources/service-mesh.md +0 -628
  298. package/.claude/skills/release-engineering/SKILL.md +0 -393
  299. package/.claude/skills/release-engineering/resources/artifact-management.md +0 -108
  300. package/.claude/skills/release-engineering/resources/build-optimization.md +0 -84
  301. package/.claude/skills/release-engineering/resources/ci-cd-pipelines.md +0 -411
  302. package/.claude/skills/release-engineering/resources/deployment-strategies.md +0 -197
  303. package/.claude/skills/release-engineering/resources/pipeline-security.md +0 -62
  304. package/.claude/skills/release-engineering/resources/progressive-delivery.md +0 -83
  305. package/.claude/skills/release-engineering/resources/release-automation.md +0 -68
  306. package/.claude/skills/release-engineering/resources/release-orchestration.md +0 -77
  307. package/.claude/skills/release-engineering/resources/rollback-strategies.md +0 -66
  308. package/.claude/skills/release-engineering/resources/versioning-strategies.md +0 -59
  309. package/.claude/skills/route-tester/SKILL.md +0 -392
  310. package/.claude/skills/skill-developer/ADVANCED.md +0 -197
  311. package/.claude/skills/skill-developer/HOOK_MECHANISMS.md +0 -306
  312. package/.claude/skills/skill-developer/PATTERNS_LIBRARY.md +0 -152
  313. package/.claude/skills/skill-developer/SKILL.md +0 -430
  314. package/.claude/skills/skill-developer/SKILL_RULES_REFERENCE.md +0 -315
  315. package/.claude/skills/skill-developer/TRIGGER_TYPES.md +0 -305
  316. package/.claude/skills/skill-developer/TROUBLESHOOTING.md +0 -514
  317. package/.claude/skills/skill-rules.json +0 -2989
  318. package/.claude/skills/sre/SKILL.md +0 -464
  319. package/.claude/skills/sre/resources/alerting-best-practices.md +0 -282
  320. package/.claude/skills/sre/resources/capacity-planning.md +0 -226
  321. package/.claude/skills/sre/resources/chaos-engineering.md +0 -193
  322. package/.claude/skills/sre/resources/disaster-recovery.md +0 -232
  323. package/.claude/skills/sre/resources/incident-management.md +0 -436
  324. package/.claude/skills/sre/resources/observability-stack.md +0 -240
  325. package/.claude/skills/sre/resources/on-call-runbooks.md +0 -167
  326. package/.claude/skills/sre/resources/performance-optimization.md +0 -108
  327. package/.claude/skills/sre/resources/reliability-patterns.md +0 -183
  328. package/.claude/skills/sre/resources/slo-sli-sla.md +0 -464
  329. package/.claude/skills/sre/resources/toil-reduction.md +0 -145
  330. package/.claude/skills/systems-engineering/SKILL.md +0 -648
  331. package/.claude/skills/systems-engineering/resources/automation-patterns.md +0 -771
  332. package/.claude/skills/systems-engineering/resources/configuration-management.md +0 -998
  333. package/.claude/skills/systems-engineering/resources/linux-administration.md +0 -672
  334. package/.claude/skills/systems-engineering/resources/networking-fundamentals.md +0 -982
  335. package/.claude/skills/systems-engineering/resources/performance-tuning.md +0 -871
  336. package/.claude/skills/systems-engineering/resources/powershell-scripting.md +0 -482
  337. package/.claude/skills/systems-engineering/resources/security-hardening.md +0 -739
  338. package/.claude/skills/systems-engineering/resources/shell-scripting.md +0 -915
  339. package/.claude/skills/systems-engineering/resources/storage-management.md +0 -628
  340. package/.claude/skills/systems-engineering/resources/system-monitoring.md +0 -787
  341. package/.claude/skills/systems-engineering/resources/troubleshooting-guide.md +0 -753
  342. package/.claude/skills/systems-engineering/resources/windows-administration.md +0 -738
  343. package/.claude/skills/technical-leadership/SKILL.md +0 -728
  344. package/backend/docs/SECRETS_DOCUMENTATION.md +0 -327
  345. package/frontend/dist/assets/index-BC-NbKXi.css +0 -32
  346. package/frontend/dist/assets/index-DqJXZMHY.js +0 -11266
@@ -1,738 +0,0 @@
1
- # Windows Administration
2
-
3
- Comprehensive guide to Windows Server administration covering Active Directory, Group Policy, Windows services, IIS, WSUS, security hardening, and operational management.
4
-
5
- ## Windows Server Architecture
6
-
7
- ### Server Roles and Features
8
-
9
- ```
10
- ┌─────────────────────────────────────────────────────────────┐
11
- │ Windows Server Roles │
12
- ├─────────────────────────────────────────────────────────────┤
13
- │ Active Directory Domain Services (AD DS) │
14
- │ DNS Server │
15
- │ DHCP Server │
16
- │ File and Storage Services │
17
- │ Web Server (IIS) │
18
- │ Hyper-V │
19
- │ Remote Desktop Services │
20
- │ Windows Server Update Services (WSUS) │
21
- └─────────────────────────────────────────────────────────────┘
22
- ```
23
-
24
- **Installing Roles with PowerShell:**
25
- ```powershell
26
- # Install AD Domain Services
27
- Install-WindowsFeature -Name AD-Domain-Services -IncludeManagementTools
28
-
29
- # Install DNS Server
30
- Install-WindowsFeature -Name DNS -IncludeManagementTools
31
-
32
- # Install IIS with common features
33
- Install-WindowsFeature -Name Web-Server -IncludeAllSubFeature -IncludeManagementTools
34
-
35
- # Install WSUS
36
- Install-WindowsFeature -Name UpdateServices -IncludeManagementTools
37
-
38
- # List all available roles and features
39
- Get-WindowsFeature
40
-
41
- # Remove a role
42
- Uninstall-WindowsFeature -Name Web-Server -Remove
43
- ```
44
-
45
- ## Active Directory Domain Services
46
-
47
- ### Domain Controller Setup
48
-
49
- **Promote Server to Domain Controller:**
50
- ```powershell
51
- # Install AD DS role first
52
- Install-WindowsFeature -Name AD-Domain-Services -IncludeManagementTools
53
-
54
- # Create new forest
55
- $domainName = "company.local"
56
- $netbiosName = "COMPANY"
57
- $safeModePwd = ConvertTo-SecureString "P@ssw0rd123!" -AsPlainText -Force
58
-
59
- Install-ADDSForest `
60
- -DomainName $domainName `
61
- -DomainNetbiosName $netbiosName `
62
- -ForestMode "WinThreshold" `
63
- -DomainMode "WinThreshold" `
64
- -InstallDns `
65
- -SafeModeAdministratorPassword $safeModePwd `
66
- -Force
67
-
68
- # Add additional domain controller to existing domain
69
- $credential = Get-Credential "COMPANY\Administrator"
70
-
71
- Install-ADDSDomainController `
72
- -DomainName "company.local" `
73
- -Credential $credential `
74
- -InstallDns `
75
- -SafeModeAdministratorPassword $safeModePwd `
76
- -Force
77
- ```
78
-
79
- ### Active Directory User Management
80
-
81
- **Creating and Managing Users:**
82
- ```powershell
83
- # Import AD module
84
- Import-Module ActiveDirectory
85
-
86
- # Create new user
87
- New-ADUser `
88
- -Name "John Smith" `
89
- -GivenName "John" `
90
- -Surname "Smith" `
91
- -SamAccountName "jsmith" `
92
- -UserPrincipalName "jsmith@company.local" `
93
- -Path "OU=Users,OU=IT,DC=company,DC=local" `
94
- -AccountPassword (ConvertTo-SecureString "P@ssw0rd123!" -AsPlainText -Force) `
95
- -Enabled $true `
96
- -ChangePasswordAtLogon $true `
97
- -Description "IT Administrator" `
98
- -Department "IT" `
99
- -Title "System Administrator"
100
-
101
- # Bulk user creation from CSV
102
- $users = Import-Csv "C:\users.csv"
103
- foreach ($user in $users) {
104
- New-ADUser `
105
- -Name "$($user.FirstName) $($user.LastName)" `
106
- -GivenName $user.FirstName `
107
- -Surname $user.LastName `
108
- -SamAccountName $user.Username `
109
- -UserPrincipalName "$($user.Username)@company.local" `
110
- -Path $user.OU `
111
- -AccountPassword (ConvertTo-SecureString $user.Password -AsPlainText -Force) `
112
- -Enabled $true `
113
- -Department $user.Department
114
- }
115
-
116
- # Modify user properties
117
- Set-ADUser -Identity "jsmith" -Title "Senior System Administrator" -Department "IT"
118
-
119
- # Disable user account
120
- Disable-ADAccount -Identity "jsmith"
121
-
122
- # Enable user account
123
- Enable-ADAccount -Identity "jsmith"
124
-
125
- # Reset password
126
- Set-ADAccountPassword -Identity "jsmith" -Reset -NewPassword (ConvertTo-SecureString "NewP@ssw0rd!" -AsPlainText -Force)
127
-
128
- # Find inactive users (not logged in for 90 days)
129
- $inactiveDays = 90
130
- $cutoffDate = (Get-Date).AddDays(-$inactiveDays)
131
- Search-ADAccount -UsersOnly -AccountInactive -TimeSpan $inactiveDays |
132
- Select-Object Name, SamAccountName, LastLogonDate
133
-
134
- # Find locked accounts
135
- Search-ADAccount -LockedOut | Select-Object Name, SamAccountName, LockedOut
136
-
137
- # Unlock account
138
- Unlock-ADAccount -Identity "jsmith"
139
- ```
140
-
141
- ### Organizational Units (OUs) and Groups
142
-
143
- **OU Management:**
144
- ```powershell
145
- # Create OU structure
146
- New-ADOrganizationalUnit -Name "IT" -Path "DC=company,DC=local"
147
- New-ADOrganizationalUnit -Name "Users" -Path "OU=IT,DC=company,DC=local"
148
- New-ADOrganizationalUnit -Name "Computers" -Path "OU=IT,DC=company,DC=local"
149
-
150
- # Move user to different OU
151
- Move-ADObject -Identity "CN=John Smith,OU=Users,DC=company,DC=local" `
152
- -TargetPath "OU=Users,OU=IT,DC=company,DC=local"
153
-
154
- # Delete OU (must be empty or use -Recursive)
155
- Remove-ADOrganizationalUnit -Identity "OU=OldOU,DC=company,DC=local" -Recursive -Confirm:$false
156
- ```
157
-
158
- **Group Management:**
159
- ```powershell
160
- # Create security group
161
- New-ADGroup `
162
- -Name "IT-Administrators" `
163
- -SamAccountName "IT-Admins" `
164
- -GroupCategory Security `
165
- -GroupScope Global `
166
- -Path "OU=Groups,OU=IT,DC=company,DC=local" `
167
- -Description "IT Department Administrators"
168
-
169
- # Add user to group
170
- Add-ADGroupMember -Identity "IT-Administrators" -Members "jsmith"
171
-
172
- # Add multiple users
173
- Add-ADGroupMember -Identity "IT-Administrators" -Members @("jsmith", "jdoe", "aadams")
174
-
175
- # Remove user from group
176
- Remove-ADGroupMember -Identity "IT-Administrators" -Members "jsmith" -Confirm:$false
177
-
178
- # List group members
179
- Get-ADGroupMember -Identity "IT-Administrators" | Select-Object Name, SamAccountName
180
-
181
- # List groups user belongs to
182
- Get-ADPrincipalGroupMembership -Identity "jsmith" | Select-Object Name
183
- ```
184
-
185
- ## Group Policy (GPO)
186
-
187
- ### Creating and Managing GPOs
188
-
189
- **PowerShell GPO Management:**
190
- ```powershell
191
- # Import Group Policy module
192
- Import-Module GroupPolicy
193
-
194
- # Create new GPO
195
- New-GPO -Name "Security-Baseline" -Comment "Corporate security baseline settings"
196
-
197
- # Link GPO to OU
198
- New-GPLink -Name "Security-Baseline" -Target "OU=IT,DC=company,DC=local" -LinkEnabled Yes
199
-
200
- # Set GPO registry value (example: disable guest account)
201
- Set-GPRegistryValue -Name "Security-Baseline" `
202
- -Key "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" `
203
- -ValueName "AutoAdminLogon" `
204
- -Type String `
205
- -Value "0"
206
-
207
- # Backup GPO
208
- Backup-GPO -Name "Security-Baseline" -Path "C:\GPO-Backups"
209
-
210
- # Backup all GPOs
211
- Backup-GPO -All -Path "C:\GPO-Backups"
212
-
213
- # Restore GPO
214
- Restore-GPO -Name "Security-Baseline" -Path "C:\GPO-Backups"
215
-
216
- # Generate GPO report
217
- Get-GPOReport -Name "Security-Baseline" -ReportType Html -Path "C:\Reports\SecurityBaseline.html"
218
-
219
- # List all GPOs
220
- Get-GPO -All | Select-Object DisplayName, GpoStatus, CreationTime
221
-
222
- # Force Group Policy update on client
223
- gpupdate /force
224
-
225
- # Force Group Policy update remotely
226
- Invoke-Command -ComputerName "WS01" -ScriptBlock { gpupdate /force }
227
- ```
228
-
229
- ### Common GPO Settings
230
-
231
- **Security Policies via GPO:**
232
- ```powershell
233
- # Password Policy (via Set-ADDefaultDomainPasswordPolicy)
234
- Set-ADDefaultDomainPasswordPolicy -Identity "company.local" `
235
- -MinPasswordLength 14 `
236
- -PasswordHistoryCount 24 `
237
- -MaxPasswordAge (New-TimeSpan -Days 90) `
238
- -MinPasswordAge (New-TimeSpan -Days 1) `
239
- -ComplexityEnabled $true `
240
- -LockoutDuration (New-TimeSpan -Minutes 30) `
241
- -LockoutThreshold 5 `
242
- -LockoutObservationWindow (New-TimeSpan -Minutes 30)
243
-
244
- # Account Lockout Policy via LGPO
245
- # Note: Complex GPO settings typically done via GUI or LGPO tool
246
- # Example: Deploy Security Template
247
- secedit /configure /db secedit.sdb /cfg "C:\SecurityTemplates\baseline.inf"
248
- ```
249
-
250
- ## Windows Services
251
-
252
- ### Service Management
253
-
254
- **Managing Services with PowerShell:**
255
- ```powershell
256
- # List all services
257
- Get-Service | Select-Object Name, DisplayName, Status, StartType
258
-
259
- # Get specific service
260
- Get-Service -Name "W3SVC" # IIS
261
-
262
- # Start service
263
- Start-Service -Name "W3SVC"
264
-
265
- # Stop service
266
- Stop-Service -Name "W3SVC"
267
-
268
- # Restart service
269
- Restart-Service -Name "W3SVC"
270
-
271
- # Set service startup type
272
- Set-Service -Name "W3SVC" -StartupType Automatic
273
-
274
- # Create new service (example: run PowerShell script as service)
275
- New-Service -Name "CustomMonitor" `
276
- -BinaryPathName "C:\Scripts\monitor.exe" `
277
- -DisplayName "Custom Monitoring Service" `
278
- -Description "Monitors system resources" `
279
- -StartupType Automatic
280
-
281
- # Delete service
282
- Remove-Service -Name "CustomMonitor" # PowerShell 6+
283
- # For PowerShell 5.1 and earlier:
284
- sc.exe delete "CustomMonitor"
285
-
286
- # Get service dependencies
287
- Get-Service -Name "W3SVC" -DependentServices
288
- Get-Service -Name "W3SVC" -RequiredServices
289
-
290
- # Filter running services
291
- Get-Service | Where-Object { $_.Status -eq "Running" }
292
-
293
- # Monitor service and restart if stopped
294
- $serviceName = "W3SVC"
295
- $service = Get-Service -Name $serviceName
296
- if ($service.Status -ne "Running") {
297
- Start-Service -Name $serviceName
298
- Write-Host "Service $serviceName was stopped and has been restarted"
299
- }
300
- ```
301
-
302
- ### Creating Windows Service with NSSM
303
-
304
- **NSSM (Non-Sucking Service Manager):**
305
- ```powershell
306
- # Download and install NSSM
307
- # Example: Install PowerShell script as service
308
-
309
- # Install service using NSSM
310
- nssm install MyAppService "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" `
311
- "-ExecutionPolicy Bypass -NoProfile -File C:\Scripts\MyApp.ps1"
312
-
313
- # Set service description
314
- nssm set MyAppService Description "My Application Service"
315
-
316
- # Set service startup directory
317
- nssm set MyAppService AppDirectory "C:\Scripts"
318
-
319
- # Set service log file
320
- nssm set MyAppService AppStdout "C:\Logs\MyApp-output.log"
321
- nssm set MyAppService AppStderr "C:\Logs\MyApp-error.log"
322
-
323
- # Set service restart behavior
324
- nssm set MyAppService AppExit Default Restart
325
-
326
- # Start service
327
- nssm start MyAppService
328
-
329
- # Remove service
330
- nssm remove MyAppService confirm
331
- ```
332
-
333
- ## Windows Registry
334
-
335
- ### Registry Operations
336
-
337
- **PowerShell Registry Management:**
338
- ```powershell
339
- # Registry is accessed like filesystem with PSDrive
340
-
341
- # Read registry value
342
- Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion" -Name "ProgramFilesDir"
343
-
344
- # Set registry value
345
- Set-ItemProperty -Path "HKLM:\SOFTWARE\MyApp" -Name "ConfigPath" -Value "C:\Config"
346
-
347
- # Create new registry key
348
- New-Item -Path "HKLM:\SOFTWARE\MyCompany"
349
-
350
- # Create registry value
351
- New-ItemProperty -Path "HKLM:\SOFTWARE\MyCompany" -Name "Version" -Value "1.0" -PropertyType String
352
-
353
- # Delete registry key
354
- Remove-Item -Path "HKLM:\SOFTWARE\MyCompany" -Recurse
355
-
356
- # Delete registry value
357
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\MyCompany" -Name "Version"
358
-
359
- # Check if registry key exists
360
- Test-Path "HKLM:\SOFTWARE\MyCompany"
361
-
362
- # Backup registry key
363
- reg export "HKLM\SOFTWARE\MyCompany" "C:\Backups\MyCompany.reg"
364
-
365
- # Restore registry key
366
- reg import "C:\Backups\MyCompany.reg"
367
-
368
- # Remote registry operations
369
- $computer = "Server01"
370
- Invoke-Command -ComputerName $computer -ScriptBlock {
371
- Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion" -Name "ProgramFilesDir"
372
- }
373
- ```
374
-
375
- ## IIS Web Server
376
-
377
- ### IIS Management
378
-
379
- **IIS PowerShell Administration:**
380
- ```powershell
381
- # Import IIS module
382
- Import-Module WebAdministration
383
-
384
- # List all websites
385
- Get-Website | Select-Object Name, State, PhysicalPath, Bindings
386
-
387
- # Create new website
388
- New-Website -Name "MyWebsite" `
389
- -Port 80 `
390
- -PhysicalPath "C:\inetpub\wwwroot\mysite" `
391
- -ApplicationPool "DefaultAppPool"
392
-
393
- # Create website with HTTPS binding
394
- New-Website -Name "SecureWebsite" `
395
- -Port 443 `
396
- -PhysicalPath "C:\inetpub\wwwroot\securesite" `
397
- -Ssl `
398
- -ApplicationPool "DefaultAppPool"
399
-
400
- # Add website binding
401
- New-WebBinding -Name "MyWebsite" -IPAddress "*" -Port 8080 -Protocol http
402
-
403
- # Start/Stop website
404
- Start-Website -Name "MyWebsite"
405
- Stop-Website -Name "MyWebsite"
406
-
407
- # Create application pool
408
- New-WebAppPool -Name "MyAppPool"
409
-
410
- # Configure application pool
411
- Set-ItemProperty -Path "IIS:\AppPools\MyAppPool" -Name processModel.identityType -Value 4 # ApplicationPoolIdentity
412
- Set-ItemProperty -Path "IIS:\AppPools\MyAppPool" -Name recycling.periodicRestart.time -Value "00:00:00"
413
-
414
- # Start/Stop application pool
415
- Start-WebAppPool -Name "MyAppPool"
416
- Stop-WebAppPool -Name "MyAppPool"
417
- Restart-WebAppPool -Name "MyAppPool"
418
-
419
- # Create virtual directory
420
- New-WebVirtualDirectory -Site "MyWebsite" -Name "images" -PhysicalPath "C:\images"
421
-
422
- # List application pools
423
- Get-IISAppPool | Select-Object Name, Status, ManagedRuntimeVersion
424
-
425
- # Get website bindings
426
- Get-WebBinding -Name "MyWebsite"
427
-
428
- # Remove website
429
- Remove-Website -Name "MyWebsite"
430
- ```
431
-
432
- ### IIS SSL Certificate Management
433
-
434
- **SSL Certificate Operations:**
435
- ```powershell
436
- # Import certificate to certificate store
437
- $certPassword = ConvertTo-SecureString -String "P@ssw0rd" -Force -AsPlainText
438
- Import-PfxCertificate -FilePath "C:\Certificates\mycert.pfx" `
439
- -CertStoreLocation Cert:\LocalMachine\My `
440
- -Password $certPassword
441
-
442
- # List certificates
443
- Get-ChildItem -Path Cert:\LocalMachine\My | Select-Object Thumbprint, Subject, NotAfter
444
-
445
- # Bind SSL certificate to website
446
- $cert = Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object { $_.Subject -like "*mysite.com*" }
447
- New-WebBinding -Name "MyWebsite" -IPAddress "*" -Port 443 -Protocol https
448
- $binding = Get-WebBinding -Name "MyWebsite" -Protocol https
449
- $binding.AddSslCertificate($cert.Thumbprint, "my")
450
-
451
- # Remove certificate binding
452
- Remove-Item -Path "IIS:\SslBindings\0.0.0.0!443"
453
- ```
454
-
455
- ## WSUS (Windows Server Update Services)
456
-
457
- ### WSUS Configuration
458
-
459
- **PowerShell WSUS Management:**
460
- ```powershell
461
- # Load WSUS assembly
462
- [reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration") | Out-Null
463
-
464
- # Connect to WSUS server
465
- $wsus = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer("WSUSServer", $false, 8530)
466
-
467
- # Get WSUS configuration
468
- $wsusConfig = $wsus.GetConfiguration()
469
- $wsusConfig.SyncFromMicrosoftUpdate = $true
470
- $wsusConfig.Save()
471
-
472
- # Get subscription and sync
473
- $subscription = $wsus.GetSubscription()
474
- $subscription.StartSynchronization()
475
-
476
- # Check sync status
477
- $subscription.GetSynchronizationStatus()
478
-
479
- # Get update categories
480
- $wsus.GetUpdateCategories() | Select-Object Title, Type
481
-
482
- # Approve updates for specific group
483
- $targetGroup = $wsus.GetComputerTargetGroups() | Where-Object { $_.Name -eq "Production Servers" }
484
- $updates = $wsus.GetUpdates() | Where-Object { $_.IsApproved -eq $false -and $_.IsSuperseded -eq $false }
485
-
486
- foreach ($update in $updates) {
487
- $update.Approve("Install", $targetGroup)
488
- }
489
-
490
- # Get computer targets
491
- $wsus.GetComputerTargets() | Select-Object FullDomainName, LastReportedStatusTime, LastSyncTime
492
-
493
- # Decline superseded updates
494
- $wsus.GetUpdates() | Where-Object { $_.IsSuperseded -eq $true } | ForEach-Object {
495
- $_.Decline()
496
- }
497
- ```
498
-
499
- ## Windows Security Hardening
500
-
501
- ### Security Baseline
502
-
503
- **Security Configuration Script:**
504
- ```powershell
505
- # Disable unnecessary services
506
- $servicesToDisable = @(
507
- "RemoteRegistry",
508
- "RemoteAccess",
509
- "HomeGroupListener",
510
- "HomeGroupProvider"
511
- )
512
-
513
- foreach ($service in $servicesToDisable) {
514
- if (Get-Service -Name $service -ErrorAction SilentlyContinue) {
515
- Stop-Service -Name $service -Force
516
- Set-Service -Name $service -StartupType Disabled
517
- }
518
- }
519
-
520
- # Configure Windows Firewall
521
- Set-NetFirewallProfile -Profile Domain, Public, Private -Enabled True
522
-
523
- # Disable SMBv1
524
- Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force
525
-
526
- # Enable Windows Defender real-time protection
527
- Set-MpPreference -DisableRealtimeMonitoring $false
528
-
529
- # Configure UAC (User Account Control)
530
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" `
531
- -Name "EnableLUA" -Value 1
532
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" `
533
- -Name "ConsentPromptBehaviorAdmin" -Value 2 # Prompt for consent
534
-
535
- # Disable guest account
536
- Disable-LocalUser -Name "Guest"
537
-
538
- # Configure audit policy
539
- auditpol /set /subcategory:"Logon" /success:enable /failure:enable
540
- auditpol /set /subcategory:"Account Lockout" /success:enable /failure:enable
541
- auditpol /set /subcategory:"User Account Management" /success:enable /failure:enable
542
- ```
543
-
544
- ## Windows Event Logs
545
-
546
- ### Event Log Management
547
-
548
- **PowerShell Event Log Operations:**
549
- ```powershell
550
- # Get event logs
551
- Get-EventLog -List
552
-
553
- # Get recent system errors
554
- Get-EventLog -LogName System -EntryType Error -Newest 50
555
-
556
- # Get security events (logon failures)
557
- Get-EventLog -LogName Security -InstanceId 4625 -Newest 100
558
-
559
- # Filter by time range
560
- Get-EventLog -LogName System -After (Get-Date).AddDays(-1) -Before (Get-Date)
561
-
562
- # Using Get-WinEvent (more powerful, supports newer logs)
563
- Get-WinEvent -LogName Application -MaxEvents 100
564
-
565
- # Query with FilterHashTable
566
- Get-WinEvent -FilterHashtable @{
567
- LogName = 'Security'
568
- ID = 4624 # Successful logon
569
- StartTime = (Get-Date).AddDays(-7)
570
- }
571
-
572
- # Query with XPath
573
- Get-WinEvent -LogName Security -FilterXPath "*[System[EventID=4625]]"
574
-
575
- # Export events to CSV
576
- Get-EventLog -LogName System -Newest 1000 |
577
- Export-Csv -Path "C:\Logs\SystemEvents.csv" -NoTypeInformation
578
-
579
- # Clear event log
580
- Clear-EventLog -LogName Application
581
-
582
- # Configure log size and retention
583
- Limit-EventLog -LogName Application -MaximumSize 512MB -OverflowAction OverwriteAsNeeded
584
-
585
- # Monitor event log in real-time
586
- Get-EventLog -LogName System -Newest 10 -AsBaseObject |
587
- Select-Object TimeGenerated, EntryType, Source, Message
588
- ```
589
-
590
- ## Remote Desktop and WinRM
591
-
592
- ### Remote Management
593
-
594
- **WinRM Configuration:**
595
- ```powershell
596
- # Enable WinRM
597
- Enable-PSRemoting -Force
598
-
599
- # Configure TrustedHosts (for non-domain environments)
600
- Set-Item WSMan:\localhost\Client\TrustedHosts -Value "Server01,Server02" -Force
601
-
602
- # Test WinRM connectivity
603
- Test-WSMan -ComputerName "Server01"
604
-
605
- # Remote command execution
606
- Invoke-Command -ComputerName "Server01" -ScriptBlock {
607
- Get-Service -Name "W3SVC"
608
- }
609
-
610
- # Remote command with credentials
611
- $cred = Get-Credential
612
- Invoke-Command -ComputerName "Server01" -Credential $cred -ScriptBlock {
613
- Get-Process
614
- }
615
-
616
- # Interactive remote session
617
- Enter-PSSession -ComputerName "Server01"
618
-
619
- # Run command on multiple computers
620
- Invoke-Command -ComputerName "Server01", "Server02", "Server03" -ScriptBlock {
621
- Get-EventLog -LogName System -Newest 10
622
- }
623
-
624
- # Copy files to remote computer
625
- $session = New-PSSession -ComputerName "Server01"
626
- Copy-Item -Path "C:\Scripts\script.ps1" -Destination "C:\Scripts\" -ToSession $session
627
- Remove-PSSession $session
628
- ```
629
-
630
- **Remote Desktop Configuration:**
631
- ```powershell
632
- # Enable Remote Desktop
633
- Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server" `
634
- -Name "fDenyTSConnections" -Value 0
635
-
636
- # Enable Network Level Authentication
637
- Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" `
638
- -Name "UserAuthentication" -Value 1
639
-
640
- # Configure firewall for RDP
641
- Enable-NetFirewallRule -DisplayGroup "Remote Desktop"
642
-
643
- # Get RDP sessions
644
- qwinsta
645
-
646
- # Disconnect RDP session
647
- logoff <session-id>
648
- ```
649
-
650
- ## Windows Clustering and Failover
651
-
652
- ### Failover Clustering
653
-
654
- **Cluster Management:**
655
- ```powershell
656
- # Install Failover Clustering feature
657
- Install-WindowsFeature -Name Failover-Clustering -IncludeManagementTools
658
-
659
- # Test cluster configuration
660
- Test-Cluster -Node "Node1", "Node2"
661
-
662
- # Create new cluster
663
- New-Cluster -Name "MyCluster" -Node "Node1", "Node2" -StaticAddress "192.168.1.100"
664
-
665
- # Add node to cluster
666
- Add-ClusterNode -Name "Node3" -Cluster "MyCluster"
667
-
668
- # Remove node from cluster
669
- Remove-ClusterNode -Name "Node3" -Cluster "MyCluster"
670
-
671
- # Get cluster resources
672
- Get-ClusterResource
673
-
674
- # Get cluster status
675
- Get-Cluster | Select-Object Name, Domain, QuorumType
676
-
677
- # Create clustered role (example: file server)
678
- Add-ClusterFileServerRole -Name "FileServer01" -Storage "Cluster Disk 1" -StaticAddress "192.168.1.101"
679
-
680
- # Move cluster group to different node
681
- Move-ClusterGroup -Name "FileServer01" -Node "Node2"
682
-
683
- # Get cluster events
684
- Get-ClusterLog -Destination "C:\Logs"
685
- ```
686
-
687
- ## Best Practices
688
-
689
- ### Windows Administration Best Practices
690
-
691
- 1. **Security:**
692
- - Implement least privilege access (RBAC)
693
- - Regular security updates via WSUS
694
- - Enable BitLocker on sensitive servers
695
- - Use strong password policies
696
- - Enable audit logging
697
- - Disable unnecessary services and protocols
698
-
699
- 2. **Active Directory:**
700
- - Regular AD backups (System State)
701
- - Multiple domain controllers for redundancy
702
- - Proper OU structure for GPO application
703
- - Regular AD health checks (dcdiag, repadmin)
704
- - Implement fine-grained password policies
705
-
706
- 3. **Monitoring:**
707
- - Configure event log forwarding
708
- - Monitor critical services
709
- - Track failed login attempts
710
- - Monitor disk space and performance
711
- - Set up alerts for critical events
712
-
713
- 4. **Automation:**
714
- - Use PowerShell for repetitive tasks
715
- - Document all scripts and procedures
716
- - Implement scheduled tasks for maintenance
717
- - Use configuration management tools
718
- - Version control for scripts
719
-
720
- 5. **Backup and Recovery:**
721
- - Regular system state backups
722
- - Test restore procedures
723
- - Document recovery procedures
724
- - Offsite backup storage
725
- - Verify backup integrity
726
-
727
- ## Anti-Patterns to Avoid
728
-
729
- ❌ **Using GUI for repetitive tasks** - Automate with PowerShell
730
- ❌ **Running everything as Domain Admin** - Use least privilege
731
- ❌ **No GPO testing** - Test in development OU first
732
- ❌ **Ignoring Windows updates** - Security vulnerabilities
733
- ❌ **Single domain controller** - No redundancy
734
- ❌ **Default administrator account enabled** - Security risk
735
- ❌ **No audit logging** - Cannot track security events
736
- ❌ **Complex OU structure** - Hard to manage GPOs
737
- ❌ **No documentation** - Tribal knowledge
738
- ❌ **Direct registry edits in production** - Use GPO when possible