Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /lib/python3.6/site-packages/sos/report/plugins/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/python3.6/site-packages/sos/report/plugins/foreman_proxy.py
# Copyright (C) 2021 Red Hat, Inc., Pavel Moravec <[email protected]>

# This file is part of the sos project: https://github.com/sosreport/sos
#
# This copyrighted material is made available to anyone wishing to use,
# modify, copy, or redistribute it subject to the terms and conditions of
# version 2 of the GNU General Public License.
#
# See the LICENSE file in the source distribution for further information.

from sos.report.plugins import (Plugin, RedHatPlugin, DebianPlugin,
                                UbuntuPlugin)


class ForemanProxy(Plugin):

    short_desc = 'Foreman Smart Proxy systems management'

    plugin_name = 'foreman_proxy'
    profiles = ('sysmgmt',)
    packages = ('foreman-proxy',)
    apachepkg = None

    def setup(self):
        self.add_file_tags({
            '/var/log/foreman-proxy/proxy.log': 'foreman_proxy_log',
            '/etc/foreman-proxy/settings.yml': 'foreman_proxy_conf'
        })

        self.add_forbidden_path([
            "/etc/foreman-proxy/*key.pem"
        ])

        self.add_copy_spec([
            "/etc/foreman-proxy/",
            "/etc/smart_proxy_dynflow_core/settings.yml",
            "/var/log/foreman-proxy/*log*",
            f"/var/log/{self.apachepkg}*/katello-reverse-proxy_error_ssl.log*",
            f"/var/log/{self.apachepkg}*/rhsm-pulpcore-https-*access_ssl.log*",
            f"/var/log/{self.apachepkg}*/rhsm-pulpcore-https-*error_ssl.log*",
            f"/var/log/{self.apachepkg}*/katello-reverse-proxy_access_ssl.log*"
        ])

        # collect http[|s]_proxy env.variables
        self.add_env_var([
            'HTTP_PROXY',
            'HTTPS_PROXY',
            'NO_PROXY',
            'ALL_PROXY',
        ])

    def postproc(self):
        self.do_path_regex_sub(
            r"/etc/foreman-proxy/(.*)((conf)(.*)?)",
            r"((\:|\s*)(passw|cred|token|secret|key).*(\:\s|=))(.*)",
            r"\1********")
        # yaml values should be alphanumeric
        self.do_path_regex_sub(
            r"/etc/foreman-proxy/(.*)((yaml|yml)(.*)?)",
            r"((\:|\s*)(passw|cred|token|secret|key).*(\:\s|=))(.*)",
            r'\1"********"')


# Child classes needed to declare the apachepkg attr properly per distro

class RedHatForemanProxy(ForemanProxy, RedHatPlugin):

    apachepkg = 'httpd'


class DebianForemanProxy(ForemanProxy, DebianPlugin, UbuntuPlugin):

    apachepkg = 'apache2'


# vim: set et ts=4 sw=4 :

Spamworldpro Mini