Daisy,
I would like to thank you for trying to help. However, If you don't know the answers please let others respond, and mainly please don't paraphrase questions, this is not helping IMHO.
I want to know HOW TO enable more logs and HOW TO enable SCHANNEL to send a request for Client Certificate. (If this is possible) The KEY ClientAuth=2 is not documented at all ! - maybe there is another KEY that must be configured. A configuration is what I am looking for ...
My question is "Schannel Not Requesting Client Cert for LDAPS mTLS" - how to enable it / control it. Are there any other settings? (To my vague understanding mTLS is a build-in feature in SSL protocol itself - please do not quote me on this) Example: IIS has dedicated package for Client Authentication maybe I missed something when setting up LDAP or maybe this is simply not supported ...
SASL
Active Directory (AD) does support the Simple Authentication and Security Layer (SASL) EXTERNAL mechanism; however, its implementation is limited. Specifically, AD permits the use of SASL EXTERNAL only over LDAP connections that are secured using the STARTTLS operation on port 389. Attempts to use SASL EXTERNAL over LDAPS (LDAP over SSL/TLS) on port 636 are not supported and will result in errors.
This behavior is documented in Microsoft's official documentation, which states that while AD supports the EXTERNAL SASL mechanism, it does not permit the use of SASL-layer encryption or integrity verification mechanisms on SSL/TLS-protected connections. This means that SASL EXTERNAL is intended for use with STARTTLS on port 389, not with LDAPS on port 636.
Microsoft Learn
Additionally, community discussions have highlighted this limitation. Users have reported that while SASL EXTERNAL works fine on port 389 with STARTTLS, it fails on port 636 with LDAPS, resulting in errors indicating an invalid authentication method.
Microsoft Learn
Therefore, while AD does support SASL EXTERNAL, its use is restricted to non-SSL/TLS connections that utilize STARTTLS on the standard LDAP port (389).
https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-adts/989e0748-0953-455d-9d37-d08dfbf3998b?utm_source=chatgpt.com
SASL works on 389: ( THAT IS NOT "FULLY" ENCRYPTED)
cat sldap_SASL.sh
#!/bin/bash
export LDAPTLS_CERT=/etc/ldap/machine.cer
export LDAPTLS_KEY=/etc/ldap/machine.key
export LDAPTLS_CACERT=/etc/ldap/CA_CHAIN.pem
ldapsearch -v -H ldap://W22SERVER.test.local:389 \
-Y EXTERNAL \
-b "" -s base "(objectClass=\*)" -ZZ
./sldap_SASL.sh
ldap_initialize( ldap://W22SERVER.test.local:389/??base )
SASL/EXTERNAL authentication started
SASL username: cn=machine
SASL SSF: 0
filter: (objectClass=*)
requesting: All userApplication attributes
extended LDIF
LDAPv3
base <> with scope baseObject
filter: (objectClass=*)
requesting: ALL
dn:
domainFunctionality: 7
forestFunctionality: 7
domainControllerFunctionality: 7
rootDomainNamingContext: DC=pentest,DC=local
ldapServiceName: test.local:w22server$@TEST.LOCAL
isGlobalCatalogReady: TRUE
supportedSASLMechanisms: GSSAPI
[...]
Logs
C:\Users\Administrator>wevtutil set-log Microsoft-Windows-SChannel/Operational /enabled:true
Failed to read configuration for log Microsoft-Windows-SChannel/Operational.
The specified channel could not be found.
wevtutil set-log Microsoft-Windows-SChannel/Operational /enabled:true
wevtutil : Failed to read configuration for log Microsoft-Windows-SChannel/Operational.
At line:1 char:1
+ wevtutil set-log Microsoft-Windows-SChannel/Operational /enabled:true
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (Failed to read ...el/Operational.:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
The specified channel could not be found.