Red Hat client when ConfigManager 2012 SP1/R2 on HTTPS
Linux client installation is straight forward when the site is on HTTP, https://blogs.technet.com/b/chandanbharti/archive/2013/06/26/package-deployment-amp-hardware-inventory-for-linux-in-configmanager-2012-sp1.aspx
I have illustrated Linux client installation when the site is on HTTPS.
Before you go for client install, Make sure you have PKI in place. Refer https://technet.microsoft.com/en-us/library/gg682023.aspx
Create a Linux template by duplicating Workstation template. Make the private key exportable, also make the Subject "Supply in the request".Issue the new template. This part doesn’t have a section in the above document like the Windows and Mac clients do.
Important note: Linux client should always be named with FQDN. It cant be short name. DomainHostName command should return the domain name info.
Lets Start,
STEP 1: Generate host.key and host.csr on linux client.
openssl req -newkey rsa:2048 -nodes -keyout host.key -out host.csr -subj /CN=RHEL55A.AB.COM
You have host.csr file available at the same location, open the file and you should see below content.
STEP 2: Issue a cert using the contents of the CSR on the Windows CA Cert Server website, using the new Linux template. Copy the content and paste it at the request page to generate the certificate.
Navigate to below path on the page.
https://Servername/certsrv --> Request a certificate--> advanced certificate request --> Submit a certificate request by using base-64-encoded
Choose base64 when you download or you will have to convert the DER separately. You can save it as host.cer
Save the certificate as host.cer.
STEP 3: Copy host.cer from step 4 to the Linux host and combine host.key, host.cer, and your CA chain (all of it if you have a subordinate CA as well, mine was provided as base64) to create a .pfx file :
openssl pkcs12 -export -in host.cer -inkey host.key -certfile RootCA.cer -name host -passout pass:1234 -out host.pfx
I get .pfx file that I can use with installation of client. 1234 is going to be the password of .pfx file.
-name is the friendly name that can be the name that you like.
Now that I have it,
STEP 4:
Download the Configmanager client for Linux, extract and place it at same location where I have other certificate. It's not mandatory to have same path, but was convenient for me
Now let's try installing the client using .PFX file that we created last.
./install -mp pri.ab.com -sitecode PRI -UsePKICert host.pfx -certpw 1234 -httpsport 443 -NoCRLCheck ccm-Universalx64.1.0.0.4580.tar
And this is what you should see once the installation completes.
=======================================================================================
Checking Prerequisites...
Checking existence of /lib/libssl.so.0.9.8e-fips-rhel5 and /lib/libcrypto.so.0.9.8e-fips-rhel5 ...
Checking existence of /lib/libssl.so.0.9.8--5 and /lib/libcrypto.so.0.9.8--5 ...
Checking existence of /lib/libssl.so.0.9.8e and /lib/libcrypto.so.0.9.8e ...
Found /lib/libssl.so.0.9.8e and /lib/libcrypto.so.0.9.8e ...
Running preinstall validator
All pre-install tests succeeded!
Beginning installation of Config Manager in /opt/microsoft/configmgr
Creating install directory...
Extracting archive file to /opt/microsoft/configmgr...
Installing OMI
Generating a 2048 bit RSA private key
.+++
..............................................+++
writing new private key to '/opt/microsoft/omi/etc/ssl/certs/omikey.pem'
-----
Successfully installed OMI under: /opt/microsoft/omi/.
Checking existence of /lib/libssl.so.0.9.8e-fips-rhel5 and /lib/libcrypto.so.0.9.8e-fips-rhel5 ...
Checking existence of /lib/libssl.so.0.9.8--5 and /lib/libcrypto.so.0.9.8--5 ...
Checking existence of /lib/libssl.so.0.9.8e and /lib/libcrypto.so.0.9.8e ...
Found /lib/libssl.so.0.9.8e and /lib/libcrypto.so.0.9.8e ...
Setting CM_HOME in omiserver...
Disabling HTTP Ports...
Modifying install scripts for OMI
Registering Providers...
Created /opt/microsoft/omi/./etc/omiregister/root-cimv2/scxcmprovider.reg
Performing post installation cleanup...
Linking startup script...
Initializing data store. This may take a few minutes...
Importing the Client Signing certificate...
CRL validations will be ignored.
Loading & validating the certificate
Successfully verified the Client certificate.
Imported the issued certificate to the store.
Installing boot-time scripts...
Starting Configuration Manager...
Installation complete.
[root@RHEL55A Linux-Chandan]#
=======================================================================================
And you should see the machine in the Configmanager console.
Remember, you don’t need to approve the client manually as you have while you install the client on HTTP.
In 5-10 min, you should see the inventory available in the resource explorer.
Linux client is ready to communicate to site on HTTPS :)
-Chandan
Comments
- Anonymous
January 01, 2003
Anders, you can run command , file file1 file2 >>FinalFile - Anonymous
January 07, 2014
Pingback from Red Hat client when ConfigManager 2012 SP1/R2 on HTTPS | MS Tech BLOG - Anonymous
September 27, 2014
Hi
Great post, thank you.
But it still fails to communicate with the MP because of SSL and wrong cert.
You write:
CA chain (all of it if you have a subordinate CA as well, mine was provided as base64)??????????
How do you get "ALL OF IT" ?
I can download the HOST Cert and the Chain from CA web page, even the CA's cert and it's Chain I can download, but how do I combine all of those? - Anonymous
April 28, 2015
Do you have FIPS enabled on the Linux system?