Bug 1180051

Summary: Make puppet ssl certificate+key that is used to authenticate against foreman available to the smart-proxy
Product: Red Hat Satellite Reporter: Ivan Necas <inecas>
Component: Content ManagementAssignee: Ivan Necas <inecas>
Status: CLOSED ERRATA QA Contact: Kedar Bidarkar <kbidarka>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.0.4CC: bbuckingham, bkearney, cwelton, inecas, mmilata
Target Milestone: UnspecifiedKeywords: Triaged
Target Release: Unused   
Hardware: Unspecified   
OS: Unspecified   
URL: http://projects.theforeman.org/issues/8372
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-08-12 05:21:35 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1161120    

Description Ivan Necas 2015-01-08 08:39:29 UTC
The smart-proxy-abrt (and possibly other plugins, like openscap) needs to send HTTP requests to Foreman, and for that it needs to be SSL-authenticated. However the cert+key in /etc/foreman-proxy/ssl_{cert,key}.pem cannot be used because it is designated as a server certificate and Apache rejects it when it is used for client authentication.

We can reuse the cert+key pair in /etc/puppet, however smart-proxy currently does not have the permissions to access the private key.

1) Can you copy /etc/puppet/{client_cert,client_key,ssl_ca.pem} to /etc/foreman-proxy with permissions so that smart-proxy can read them? (On my system /etc/puppet/ssl_ca.pem is the same as /etc/foreman-proxy/ssl_ca.pem so no need to have it twice if it's always the case)

2) Can you then assign the paths to the files to @foreman_ssl_cert@, @foreman_ssl_key@, and @foreman_ssl_ca@ in /etc/foreman-proxy/settings.yml?

Comment 1 Ivan Necas 2015-01-08 08:39:30 UTC
Created from redmine issue http://projects.theforeman.org/issues/8372

Comment 2 Ivan Necas 2015-01-08 08:40:24 UTC
Setting as blocker since abrt and openscap integration depends on that

Comment 4 Bryan Kearney 2015-01-08 09:05:30 UTC
Upstream bug assigned to inecas

Comment 5 Bryan Kearney 2015-02-07 01:05:07 UTC
Moving to POST since upstream bug http://projects.theforeman.org/issues/8372 has been closed
-------------
Ivan Necas
Fixes that generate and deploy a cert for smart proxy to use to call to the foreman are here:

https://github.com/theforeman/puppet-foreman_proxy/pull/130
https://github.com/Katello/puppet-certs/issues/41
https://github.com/Katello/puppet-capsule/issues/26
-------------
Martin Milata
> https://github.com/theforeman/puppet-foreman_proxy/pull/130
> https://github.com/Katello/puppet-certs/issues/41
> https://github.com/Katello/puppet-capsule/issues/26

I've tested the changes on single-host Katello installation and the ABRT plugin now works out-of-the-box (with the exception of #7833 which has to be done manually).

Comment 12 Kedar Bidarkar 2015-07-24 15:53:08 UTC
Tested generating openscap reports on clients and uploading it using custom-certs on both "Internal capsule" and "external capsule".

VERIFIED with sat6.1.1-GA-snap13-c1

Comment 14 errata-xmlrpc 2015-08-12 05:21:35 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2015:1592