CTO

PowerShell Host IPC for any .NET application

Explore how PowerShell enables interprocess communication (IPC) using named pipes in .NET applications, allowing seamless remote control and API access. This hands-on guide walks through creating custom named pipes, using Enter-PSHostProcess for connection, and integrating PowerShell with your .NET projects to enhance flexibility and streamline automation workflows with real-world examples.

Marc-André Moreau published on
4 min, 678 words

Enable PowerShell WinRM Remoting in PowerShell 7

Enable PowerShell 7 WinRM remoting for efficient server management without relying on SSH. This post provides a straightforward method to incorporate PowerShell 7 into Windows environments, ensuring compatibility and simplifying remoting tasks with practical code snippets and configuration advice.

Marc-André Moreau published on
7 min, 1224 words

Decompiling Hyper-V Manager to rebuild it from source

This post guides through decompiling Hyper-V Manager to rebuild it from source, aiming to assess its value for potential open-sourcing. It explores manual and automated decompilation processes, including troubleshooting and enhancing the tool, advocating for community-led improvements to this widely-used but neglected software.

Marc-André Moreau published on
21 min, 4116 words

Debugging PowerShell Binary Modules in Visual Studio

Learn to create and debug PowerShell binary modules in Visual Studio, covering both local and remote debugging. This guide simplifies the development process for PowerShell modules, enhancing productivity with practical examples and troubleshooting tips for common issues.

Marc-André Moreau published on
12 min, 2353 words

Active Directory Kerberos KDC certificate selection

Discover the intricacies of Active Directory's Kerberos KDC certificate selection for PKINIT, including techniques for choosing a specific certificate, analysis using IDA Pro, and PowerShell cmdlets for managing certificates. This deep dive explores the challenges and solutions for ensuring the right KDC certificate is used, overcoming the unpredictability of certificate selection in Windows environments.

Marc-André Moreau published on
9 min, 1711 words

Active Directory LDAPS certificate selection deep dive

A deep dive into Active Directory LDAPS certificate selection, detailing the technical intricacies of ensuring secure communications through TLS. This guide covers the validation and selection process, including PowerShell scripts for certificate management, aiming to clarify and resolve common issues with LDAPS implementation.

Marc-André Moreau published on
7 min, 1329 words

RDP NLA with Azure AD: The PKU2U Nightmare

This post tackles the challenges of RDP Network Level Authentication (NLA) with Azure AD, labeled as the PKU2U nightmare, offering detailed solutions for common problems. It addresses enabling PKU2U authentication, Azure AD workplace joining, the correct Azure AD username format, and third-party application support, providing both technical insights and practical steps to mitigate these issues in Azure AD environments.

Marc-André Moreau published on
7 min, 1223 words

RDP Smartcard Logon: User Name Does Not Exist

Navigate through the confusion of "the specified user name does not exist" error during RDP smartcard logon, offering insights into common misinterpretations and actionable solutions. This post breaks down error messages, suggests disabling strict KDC validation, and guides on certificate trust validation, ensuring successful authentication with practical steps and PowerShell commands.

Marc-André Moreau published on
7 min, 1332 words

PowerShell Remoting Trusted Hosts: What does it mean?

This guide demystifies the "TrustedHosts" setting in PowerShell remoting, explaining its significance and how to configure it to avoid common errors. It offers solutions for enabling remote connections, particularly when Kerberos or HTTPS isn't used, ensuring security and connectivity for non-domain-joined machines or across different domains.

Marc-André Moreau published on
7 min, 1271 words