Description of problem: The default installation of Satellite 5.3.0 adds /usr/bin/rhn-install-ssl-cert.pl to alias INSTALL_RHN in /etc/sudoers. I've grepped Spacewalk source and rhn-install-ssl-cert.pl appears to be called in two places -- in spacewalk/setup/lib/Spacewalk/Setup.pm, and in web/modules/rhn/RHN/SatInstall.pm. That Spacewalk::Setup is being used by root, so no sudo is needed (and called) there. That RHN::SatInstall calls sub install_server_cert { my $class = shift; my %params = validate(@_, { dir => 1, system => 1 }); my @opts; push @opts, '--dir=' . File::Spec->catfile($params{dir}, $params{system}); my @command = ('/usr/bin/rhn-install-ssl-cert.pl', @opts); my $ret = system('/usr/bin/sudo', @command); if ($ret) { die "Could not install ssl cert."; } return; } But the function install_server_cert is not used in the whole Spacewalk codebase. Therefore I assume it is dead code which can be removed, and so can /usr/bin/rhn-install-ssl-cert.pl from /etc/sudoers. Note: I did this scan through our code to figure out if there are some commands that need additional SELinux treatment. Version-Release number of selected component (if applicable): Satellite-5.3.0-RHEL5-re20090206.1 How reproducible: Deterministic. Steps to Reproduce: 1. Install Satellite 5.3.0. 2. Look into /etc/sudoers. Actual results: /usr/bin/rhn-install-ssl-cert.pl is there. Expected results: /usr/bin/rhn-install-ssl-cert.pl is not there and Satellite continues to work OK. Additional info: This bug was modeled based on bug 484681.
The proposed change is to remove the INSTALL_RHN section and merge whatever needs to be there to CONFIG_RHN. The proposed sudoers.rhn is below. I've tested that with this, the Satellite/Spacewalk works and runs external commands fine. ## RHN specifics ## Cmnd_Alias CONFIG_RHN = /usr/sbin/rhn-sat-restart-silent,\ /usr/bin/rhn-config-satellite.pl,\ /usr/bin/rhn-satellite-activate,\ /usr/bin/rhn-bootstrap,\ /usr/bin/rhn-ssl-tool,\ /usr/bin/rhn-ssl-dbstore,\ /usr/bin/rhn-load-ssl-cert.pl,\ /etc/rc.d/np.d/step Monitoring install,\ /etc/rc.d/np.d/step MonitoringScout install,\ /etc/rc.d/np.d/step Monitoring uninstall,\ /etc/rc.d/np.d/step MonitoringScout uninstall,\ /sbin/service Monitoring restart,\ /sbin/service MonitoringScout restart,\ /sbin/service taskomatic restart # The CONFIG_RHN commands are required for reconfiguration of a # running RHN Satellite. They should be enabled for proper operation # of the RHN Satellite. apache ALL=(root) NOPASSWD: CONFIG_RHN tomcat ALL=(root) NOPASSWD: CONFIG_RHN # These two directives allow tomcat and apache to invoke CONFIG_RHN # commands via sudo even without a real tty Defaults:tomcat !requiretty Defaults:apache !requiretty
This is a throw back from the old Installer - where we had command line install laid down packages. The WebUI then went through configuration/installation of Satellite to get it running, with many many steps, unlike the new WebUI portion that just asks for Username/password to be created for Sat Admin account. Cliff.
Reassigning to myself as the bugzillas are not tracked against the SELinux feature.
The previous comment should have been "are *now*".
Committed to Spacewalk repo, 309f5c5a08971963267ea6bd829eb0b9b67a44b0 and c3eb252bb1f7b687cce9fcc062ded1ee3f041e13.
With compose Satellite-5.3.0-RHEL5-re20090220.1 available, moving ON_QA.
cat /etc/sudoers | grep /usr/bin/rhn-install-ssl-cert [root@grandprix ~]# Satellite-5.3.0-RHEL5-re20090220.1-i386-embedded-oracle.iso verified
[root@xen5 ~]# grep rhn-install-ssl-cert.pl /etc/sudoers [root@xen5 ~]# satellite works fine verified in stage on xen5
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHEA-2009-1434.html