%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /opt/alt/python37/lib/python3.7/site-packages/__pycache__/
Upload File :
Create Path :
Current File : //opt/alt/python37/lib/python3.7/site-packages/__pycache__/cldetectlib.cpython-37.pyc

B

L#Lb�I�@s"ddlmZddlmZddlZddlZddlZddlZddlZddlm	Z	ddl
mZmZddl
mZmZmZdadadadadadadadZd	Zd
ZdZdZdZd
ZdZdZ da!da"dZ#dZ$dZ%ej&�'e�r�eZneZdd�Z(dd�Z)dfdd�Z*dd�Z+dd�Z,dd�Z-d d!�Z.d"d#�Z/d$d%�Z0d&d'�Z1d(d)�Z2d*d+�Z3d,d-�Z4d.d/�Z5d0d1�Z6d2d3�Z7d4d5�Z8d6d7�Z9d8d9�Z:d:d;�Z;d<d=�Z<d>d?�Z=d@dA�Z>dBdC�Z?dDdE�Z@dFdG�ZAdHdI�ZBdJdK�ZCdLdM�ZDdNdO�ZEdPdQ�ZFdRdS�ZGdTdU�ZHdVdW�ZIdXdY�ZJdZd[�ZKd\d]�ZLd^d_�ZMd`da�ZNdgddde�ZOdS)h�)�absolute_import)�print_functionN)�
SysCtlConf�SYSCTL_CL_CONF_FILE)�SafeConfigParser�NoSectionError�
NoOptionError�0Zapachez%/usr/local/lsws/conf/httpd_config.xmlz&/usr/local/lsws/conf/httpd_config.confz/usr/local/lsws/VERSIONz*/usr/lib/systemd/system/postgresql.servicez/etc/rc.d/init.d/postgresqlz/var/lock/cldeploy.lckz/etc/sysconfig/cloudlinuxz/etc/ssh/sshd_configzCloudLinux OS Shared ProzCloudLinux OS SharedzCloudLinux OS SolocCstj�d�rdSdS)Nz/etc/cpanel/ea4/is_ea4TF)�os�path�exists�r
r
�</opt/alt/python37/lib/python3.7/site-packages/cldetectlib.py�is_ea4Qsrc	Cs�dadaday$t��}|da|da|daWnYnXyPtd��>}|��}t�d|�d}t�d	|�d}d
ad�	||�adSQRXWnYnXyt
j�d
�r�dadadSWnYnXyt
j�
d�r�dadadSWnYnXy,t
j�d��st
j�
d��rdadadSWnYnXyt
j�
d��rFdadadSWnYnXyt
j�
d��rrdadadSWnYnXyt
j�
d��r�dadadSWnYnXyt
j�d��r�dadadSWnYnXdS)N�Unknown�0�name�versionZadditional_infoz/hsphere/shared/versionzRelease:\s+(.+)rzVersion:\s+(.+)zH-Spherez{0}.{1}Tz/lib64/libnss_ng.so�	HostingNGZnonez/usr/local/cwpsrv�CentOS_WEB_Panelz'/etc/httpd/conf.d/atomia-pa-apache.confz!/storage/configuration/cloudlinux�Atomia_agentz/usr/local/CyberCP�
Cyberpanelz
/var/phmgr�PlaneHosterz/usr/local/vesta�Vestaz/etc/virtualmin-license�VirtualminWebminF)�CP_NAME�
CP_VERSION�CP_ISP_TYPE�cpapi�get_cp_description�open�read�re�findall�formatr
r�isfile�isdir)�
panel_data�f�data�releaserr
r
r�getCPXs�
r+�cCs�yt|d�}|��}|��Wntk
r2|SXxP|D]H}|��}|�|�r:|�|�}t|�dkr:|d��|kr:|d��Sq:W|S)N�r�r�)r �	readlines�close�IOError�strip�
startswith�split�len)ZfileNameZ	paramName�	separator�default_valr(Zcontent�lineZ	linePartsr
r
r�get_param_from_file�s



r:cCs.trtStj�d�rda�ntj�d�r.dan�tj�d�r@dan�tj�d�sXtj�d�r^d	an�tj�d
�rpdan�tj�d�r�d
an�tj�d�r�dan�tj�d�r�dan�tj�d�s�tj�d�r�danftj�d�r�danTtj�d�r�danBtj�d�r�dan0tj�d��rdant��}|�r&|dandatS)Nz/usr/local/cpanel/cpanel�cPanelz/usr/local/psa/version�Pleskz"/usr/local/directadmin/directadmin�DirectAdminz/usr/local/ispmgr/bin/ispmgrz/usr/local/mgr5�
ISPManagerz/usr/local/interworx�	InterWorxz/hsphere/sharedzH-Spherez/lib64/libnss_ng.sorz/usr/local/cwpsrvrz'/etc/httpd/conf.d/atomia-pa-apache.confz!/storage/configuration/cloudlinuxrz/usr/local/vestarz/etc/virtualmin-licenserz
/var/phmgrrz/usr/local/CyberCPrrr)rr
rr%r&rr)r'r
r
r�	getCPName�sD
r@c4Cs
ddlm}i}t�}|dkr&||d<|dkr8|d�}n|�}|��}d}ddd	d
ddd
dddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6d7d8d9h4}x>|D]6}d:}	x ||D]}
|
j|kr�d;}	Pq�W|	s�|d<7}q�W||d=<||d><d?S)@z�
    Add server statistics to status_report dict
    :param status_report: dict to add statistics to
    :type status_report: dict
    r)�ClPwdrZcpr<i'Z	nfsnobodyz
avahi-autoipdZeximZclamavZvarnish�nagiosZsaslauthZmysqlZlsadmzsystemd-bus-proxyzsystemd-networkZpolkitdZfirebirdZnginxZdovecotZdovenullZroundcube_sysuserZcpanelZcpanelhordeZcpanelphpmyadminZcpanelphppgadminZcpanelroundcubeZmailmanZcpaneleximfilterZcpanellogaholicZcpanelloginZmuninZcpaneleximscannerZcpanelphpgadminZcpsesZcpanelconnecttrackZ
cpanelrrdtool�adminZ
webappsapacheZdiradminZ	majordomoZviapmZiworxz	iworx-webz	iworx-pmaziworx-backupziworx-hordeziworx-roundcubeziworx-sqmailZiworx_support_userZpsaadmZpopuserZpsaftpZdrwebzsw-cp-serverZ
horde_sysuserFTr/�usersZclnN)ZclcommonrAr@Zget_uid_dictZpw_name)Z
status_reportrAZresZcp_nameZclpwd�drDZ	sys_usersZuid�found�entryr
r
r�add_server_statss8


rHc
CstrtStj�t�s.tdtd�t�d�y�tddd�}|�	t�|�
dd����d�d	krr|�
dd���anvyVt
�|�
dtd
�}tj�|�s�t�tj|gtjtjdd�}|��\}}|��aWntttfk
r�d
aYnXtStdtd�t�d�YnXdS)NzError: missing z
 config file.r/F)Z
interpolation�strictZ
license_checkZEMAIL�@���Z_getemail_scriptT)�stdout�stderr�textzroot@localhost.localdomainzError: bad )�CP_ADMIN_EMAILr
rr%�CL_CONFIG_FILE�print�sys�exitrr!�getr3�findr@r�FileNotFoundError�
subprocess�Popen�PIPE�communicaterr)�parserZget_email_script�p�out�errr
r
r�getCPAdminEmail<s2


r_cCstj�d�rdSdSdS)Nz/etc/cxsTF)r
rr&r
r
r
r�	CXS_check\sr`cCs,t�tdkr$tj�d�rdSdSndSdS)Nr;z&/usr/local/apache/modules/mod_suphp.soTF)r@rr
rr%r
r
r
r�mod_suPHP_checkesracCsPt�tdkrHtdkrdatdkr&dayt�t�jaWnYnXdSdSdS)Nrr;ZnobodyzH-SphereZhttpdTF)r@rr�APACHE_UNAME�pwd�getpwnam�pw_gid�
APACHE_GIDr
r
r
r�get_apache_gidqsrgcCst�p
t�S)z�
    LiteSpeed can be enterprise or open source, and each of them
    stores config in different formats
    So this checker will search for one of them
    )�detect_enterprise_litespeed�detect_open_litespeedr
r
r
r�detect_litespeed�srjcCstj�t�S)z*
    Detects LSWS Enterprise presence
    )r
rr%�LITESPEED_CONFIG_FILEr
r
r
rrh�srhcCstj�t�S)z(
    Detects OpenLiteSpeed presence
    )r
rr%�LITESPEED_OPEN_CONFIG_FILEr
r
r
rri�sric
CsBy"ttd��}|����SQRXWntttfk
r<dSXdS)z\
    Determine Litespeed version.
    Works for both LSWS Enterprise and OpenLiteSpeed.
    r-Nr,)r �LITESPEED_VERSION_FILEr!r3rV�OSErrorr2)r(r
r
r�get_litespeed_version�s
rocCstj�t�rdSdSdS)NTF)r
rr%�POSTGRE_SERVER_FILEr
r
r
r�detect_postgresql�srqcCsdt�tdkr\y@tdd�}|��}|��|�d�d�d�d�d�d	��Sd
SndSdS)Nr=z,/usr/local/directadmin/conf/directadmin.confr-z	admindir=r/�
r�/rKrCF)r@rr r!r1r5r3)r(r]r
r
r�detect_DA_admin�s
&rtcCs`tj�t�rXy>ttd�}t|���}|��tj�dt	|��rDdSdSWq\dSndSdS)Nr-z/proc/TF)
r
rr%�CL_SETUP_LOCK_FILEr �intr!r1r&�str)r(�pidr
r
r�check_CL_installing�s
rycCs2tj�d�r*yt�d�jadSdSndSdS)Nz/usr/local/nagiosrBTF)r
rr&rcrdre�
NAGIOS_GIDr
r
r
r�
get_nagios�sr{cCs tddd�}|dkrdSdSdS)Nz//usr/local/directadmin/custombuild/options.confZ
cloudlinux�=�yesTF)r:)Zcheck_resultr
r
r�da_check_options�sr~cCs*ttdd�}|�d�}|dk	r&t|�S|S)z/get fs.enforce_symlinksifowner from sysctl confF)Zconfig_fileZmute_errorszfs.enforce_symlinksifownerN)rrrTrv)Zsysctl�valuer
r
r�get_symlinksifowner�s
r�cCstdkrt�tS)N)�SUEXEC_ENABLED�detect_suEXEC_suPHPr
r
r
r�get_suEXEC_status�sr�cCstdkrt�tS)N)�
SUPHP_ENABLEDr�r
r
r
r�get_suPHP_status�sr�cCs.dadat�}|dkrdSd|kad|kadS)NFZ
suexec_moduleZsuphp_module)r�r��get_apache_modules)�modulesr
r
rr�sr�c	Cs�d}y�tj|dgtjtjdd�}|��\}}g}|�d�}x^|dd�D]N}|sRqHy|���d�d}Wntk
r�d	}YnX|d	kr�qH|�|�qHW|Stt	fk
r�dSXdS)
Nz/usr/sbin/httpdz-MT)rLrMrNrrr/� rr,)
rWrXrYrZr5r3�
IndexError�appendrnr2)Zbin_execr\r]r^r�r9�modr
r
rr�s&

r�cCs$tj|ddtjddd�}|��dS)z0
    Executes command with bash interpreter
    Tz	/bin/bashrK)�shell�
executablerLrN�bufsizer)rWrXrYrZ)Zcommand�procr
r
r�execute+sr�c	Cs�yZt�r(tdt|t�d�d�}ntdt|t��d�}|�d�dkrTdSdSWn*tk
rndSttfk
r�dSXdS)Nz/usr/bin/strings Z_ea4z | grep jailz
jail errorrKTF)rr�rwr@rU�KeyErrorr2rn)�location�resultr
r
r�check_binary_has_jail;s r�cCs,tj�t�r$ttd�dkrdSdSndSdS)NZUsePAMr}TF)r
rr%�USEPAM_FILEr:r
r
r
r�check_SSHd_UsePAMLs
r�cCstdkrt�dS)N)rr@r
r
r
r�init_cp_nameVsr�cCst�tdkS)Nr=)r�rr
r
r
r�is_da\sr�cCst�tdkS)Nr>)r�rr
r
r
r�
is_ispmanagerbsr�cCs
t�tS)N)r�rr
r
r
r�ispmanager5_typeisr�cCstdkS)NZMaster)rr
r
r
r�ispmanager5_is_masterosr�cCst�tdkS)Nr;)r�rr
r
r
r�	is_cpaneltsr�cCst�tdkS)Nr<)r�rr
r
r
r�is_pleskzsr�cCst�tdkS)Nr?)r�rr
r
r
r�is_internetworx�sr�cCst�tdkS)NzH-Sphere)r�rr
r
r
r�
is_hsphere�sr�cCst�tdkS)Nr)r�rr
r
r
r�is_hostingng�sr�cCst�tdkS)Nr)r�rr
r
r
r�
is_unknown�sr�cCsVt��}tdt|�d���}x0|D](}|�d�r&|�d�d��}t|�Sq&WdS)zD
    Returns 0 if there is no openvz, otherwise returns node id
    z/proc/z/statuszenvID:�:r/r)	r
�getpidr rwr0r4r5r3rv)rx�linesr9Zenv_idr
r
r�	is_openvz�s

r�cCstj�d�S)Nz/usr/sbin/cagefsctl)r
rrr
r
r
r�is_cagefs_installed�sr�r|TcCs(t|||dd�}|dkr|S|��dkS)N)r8)�true�1r}Zon)r:�lower)�	file_nameZ
param_namer7r8Z
config_valr
r
r�get_boolean_param�sr�)Nr,)r|T)PZ
__future__rrr
rcr"rWrRZclcommon.cpapirZclcommon.sysctlrrZfuture.moves.configparserrrrrrrrOrzrfrbrkrlrmrpZPOSTGRE_SYSTEMD_PATHZPOSTGRE_INITD_PATHrurPr�r�r�Z!SHARED_PRO_EDITION_HUMAN_READABLEZSHARED_EDITION_HUMAN_READABLEZSOLO_EDITION_HUMAN_READABLErr%rr+r:r@rHr_r`rargrjrhrirorqrtryr{r~r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r
r
r
r�<module>"s�l
?( 		




Zerion Mini Shell 1.0