3 ܓij@s&ddlmZmZGdddeeZdS))Plugin RedHatPluginc@s8eZdZdZdZdZdZdZdd Zd d Z d d Z dS)DirectoryServerzDirectory ServerZdsidentity /etc/dirsrv/opt/redhat-dsredhat-ds-base redhat-ds-7cCs4|jds|jdrdS|jds,|jdr0dSdS)z Get Directory Server version zredhat-ds-basez /etc/dirsrvds8z redhat-ds-7z/opt/redhat-dsds7F)Z is_installedZ path_exists)selfr /usr/lib/python3.6/ds.py check_versions    zDirectoryServer.check_versioncCs|jdddddddgyVxP|jdD]B}|d d d kr&|jd|}|jd ||jd |dq&WWntk r|jdYnX|js|jdnPd|jkr|jddddddddg|j ddind|jkr|jddg|j ddS) Nz/etc/dirsrv/slapd*/pin.txtz/etc/dirsrv/slapd*/key3.dbz/etc/dirsrv/slapd*/pwfile.txtz/etc/dirsrv/slapd*/*passw*z"/etc/dirsrv/admin-serv/key[3-4].dbz/etc/dirsrv/admin-serv/admpwz$/etc/dirsrv/admin-serv/password.confz /etc/dirsrvrZslapdzcertutil -L -d zdsctl z healthcheckzcould not list /etc/dirsrvzDirectory Server not found.r z/etc/dirsrv/slapd*/cert8.dbz/etc/dirsrv/slapd*/certmap.confz/etc/dirsrv/slapd*/dse.ldifz#/etc/dirsrv/slapd*/dse.ldif.startOKz/etc/dirsrv/slapd*/secmod.dbz /etc/dirsrv/slapd*/schema/*.ldifz/etc/dirsrv/admin-servz/var/log/dirsrv/*z/var/log/dirsrv/*/accessZ dirsrv_accessr z/opt/redhat-ds/slapd-*/configz/opt/redhat-ds/slapd-*/logsz/var/lib/dirsrv/slapd-*/db/*) Zadd_forbidden_pathlistdirZ path_joinZadd_cmd_outputOSErrorZ _log_warnrZ add_alertZ add_copy_specZ add_file_tagsZadd_dir_listing)r ZdsrvZcertpathr r rsetup&sF     zDirectoryServer.setupcCs,d}d}d}|jd|||jd||dS)Nz/(nsslapd-rootpw(\s)*:(\s)*)(\S+)([\r\n]\s.*)*\nz0(nsSymmetricKey(\s)*::(\s)*)(\S+)([\r\n]\s.*)*\nz \1********\nz /etc/dirsrv/*)Zdo_path_regex_sub)r Z regexppassZ regexpkeyreplr r rpostprocRs zDirectoryServer.postprocN)r)rr)rr ) __name__ __module__ __qualname__Z short_descZ plugin_nameZprofilesfilesZpackagesrrrr r r rrs ,rN)Zsos.report.pluginsrrrr r r r s