Bug 1768501 - [RFE]Requirement is to end up with a computer certificate that was issued via the Active Directory auto-enrollment policy automatically via the computer's own kerberos credentials, with no manual authencitaion/approval steps for issuance to any machine
Summary: [RFE]Requirement is to end up with a computer certificate that was issued via...
Keywords:
Status: NEW
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: certmonger
Version: 8.4
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: 8.0
Assignee: Rob Crittenden
QA Contact: ipa-qe
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-11-04 15:41 UTC by Abhijit Roy
Modified: 2023-08-14 08:28 UTC (History)
11 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Story
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker FREEIPA-6896 0 None None None 2021-09-23 11:26:02 UTC

Description Abhijit Roy 2019-11-04 15:41:20 UTC
1.. Why does the customer need this? (List the business requirements here)  

- We need automatically-issued server certificates for use in 802.1x network authentication for wired and wireless network connections.

- These certs must not require manual action, and must be issued based on the proof-of-identity by Kerberos Keytab so that only domain-joined computers can receive these auto-generated certificates.

- the certs must automatically renew before expiration to prevent machines from getting kicked off the network

      
    2. How would the customer like to achieve this? (List the functional requirements here)  

- best case is using the Microsoft RPC protocol to request the certificate, the same way Centrify and MacOS do it.

- second best would be to leverage the CEP/CES protocols to acquire this

- the getcert already does this with other providers, so that seems the logical place to add the support


    3. For each functional requirement listed, specify how Red Hat and the customer can test to confirm the requirement is successfully implemented.  

a sequence of `getcert request` then `getcert list` to verify the cert was issued.

The end-to-end test would be to confirm that a certificate issued in such a manner would be accepted by the 802.1x authenticator.



Additional info:

Comment 1 Alexander Bokovoy 2019-11-04 16:01:20 UTC
This request lacks details that would help to understand scope and complexity of proposed solutions. Please provide details on what "Microsoft RPC protocol" is used to request the certificate. If you don't know what it is, please point to documentation where you read about "Microsoft RPC protocol" used by "Centrify and MacOS" to do it.

Which of MS-HCEP, MS-ICPR, MS-WCCE, MS-WSTEP, and/or MS-XCEP protocols is implied by that name?

Comment 2 Alexander Bokovoy 2019-11-04 16:02:03 UTC
The request is reall to certmonger, not SSSD.

Comment 3 Abhijit Roy 2019-11-04 16:11:58 UTC
Thanks for your reply Ab.

I will check which "Microsoft RPC protocol" is used to request the certificate.

Comment 4 Alexander Bokovoy 2019-11-04 16:29:31 UTC
Abhijit, please do not drop needinfo until you provided the information.

Comment 5 Abhijit Roy 2019-11-04 16:37:11 UTC
Alexander,

"it turns out that only a single API call is really needed to make the Kerberos authenticated call: CertServerRequest. In order to call that single API, you had to have a properly defined interface that can be compiled with a dce compiler."

https://twocanoes.com/ad-certificate-profile-got-macos-apple/

Comment 6 Abhijit Roy 2019-11-04 16:39:02 UTC
Hi Ab,

You can find more details.
on https://blogs.technet.microsoft.com/jeffbutte/2016/12/16/236/.
This page mentioned a tool call 'sscep' which is available in Fedora and EPEL but not in RHEL.

Comment 7 James Cassell 2019-11-04 16:50:55 UTC
(In reply to Abhijit Roy from comment #6)
> Hi Ab,
> 
> You can find more details.
> on https://blogs.technet.microsoft.com/jeffbutte/2016/12/16/236/.
> This page mentioned a tool call 'sscep' which is available in Fedora and
> EPEL but not in RHEL.

AFAIK, the scep protocol does not support Kerberos authentication.  It also requires setting up multiple additional services (including web services) on the Active Directory side.

Comment 8 Abhijit Roy 2019-11-04 16:53:38 UTC
Ab,

What about this?

"it turns out that only a single API call is really needed to make the Kerberos authenticated call: CertServerRequest. In order to call that single API, you had to have a properly defined interface that can be compiled with a dce compiler."

https://twocanoes.com/ad-certificate-profile-got-macos-apple/

Comment 9 James Cassell 2019-11-04 17:02:55 UTC
CertServerRequest is described in the '[MS-ICPR]' document: https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-icpr/9b8ed605-6b00-41d1-9a2a-9897e40678fc

(that document references the '[MS-WCCE]' document, but may not be necessary: https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-wcce/446a0fca-7f27-4436-965d-191635518466 )

MS-ICPR is the protocol under discussion for the request in this ticket.

Comment 10 Alexander Bokovoy 2019-11-04 17:19:21 UTC
Thanks. 

MS-ICPR still needs the same infrastructure MS-WCCE would build, just the supported call is limited to a single one. It is relatively straightforward to create a tool that communicates with MS-ICPR server component using Samba's PIDL compiler and NDR libraries.

I'd leave to Rob to decide what to do and how to do it.

Comment 15 Abhinay Reddy Peddireddy 2022-01-19 02:50:42 UTC
Hello, 

May I know for which version is this targeted ? Any ETA ? 

Thanks


Note You need to log in before you can comment on or make changes to this bug.