~CiBzddlZddlZddlmZddlmZddlmZddlm Z ddl m Z ej e ZGdd eZGd d e ZGd d ZdS)N)Optional)PanelException) web_server)RemoteIPInterface) HostingPanelceZdZdS) RemoteIPErrorN)__name__ __module__ __qualname__J/opt/imunify360/venv/lib/python3.11/site-packages/im360/subsys/remoteip.pyr r sDrr c2eZdZdefdZdeefdZdS)LiteSpeedRemoteIPreturncKttjd}tj|}|}|}||jkrdS||jkrdS||j krVtj d}|D]=\}}|r6|dkrdS tj |}||vrdS-#t$rY9wxYw>dStd)NrbFT 127.0.0.1ALLz,Unknown value for client ip in header option)openrLITESPEED_CONF_PATHreadLiteSpeedConfigclient_ip_in_headeraccess_control_allowed_listCLIENT_IP_IN_HEADER_DISABLEDCLIENT_IP_IN_HEADER_ENABLED#CLIENT_IP_IN_HEADER_TRUSTED_IP_ONLY ipaddress IPv4Address ip_network ValueErrorr) selfcontentconfigproxyIPallowed localhostitemtrusted item_networks rremoteip_activatedz$LiteSpeedRemoteIP.remoteip_activateds0z5t<<AACC+G44,,..4466 f9 9 95 f8 8 84 f@ @ @!-k::I!( ( ( g (u}}#tt('0';D'A'A % 44#'445&!!! ! (5KLLLs7C C C cKttjd}tj|}|}||j|d| |ttjd5}| | dddn #1swxYwYtj d{VdS)Nr)rTwb) rrrrrrset_client_ip_in_headerr addset_access_control_allowed_listwritetostringgraceful_restart)r%r&r'r) config_files rremoteip_installz"LiteSpeedRemoteIP.remoteip_install,s5z5t<<AACC+G444466&&  6     '(((..w777 *0$ 7 7 1;   foo// 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1)+++++++++ts5(C))C-0C-N)r r r boolr.rstrr8rrrrrsSM$MMMM2       rrc4eZdZdZdZdZdZdefdZdZ dS) ModRemoteIpz-Manages mod_remoteip or similar functionality mod_remoteipcd|_t|_|jr6t jrt |_dS|j|_dSdSN)_ModRemoteIp__interfacer_panelremoteip_supportedrlitespeed_runningrr%s r__init__zModRemoteIp.__init__@sj"nn ; ) ) + + /+-- /#4#6#6   #';    / /rc|jduSr?)r@rDs r is_supportedzModRemoteIp.is_supportedIst++rrcK |sdS|jd{VS#t$r }t|d}~wwxYw)NF)rGr@r.rr r%excs r is_installedzModRemoteIp.is_installedLsr )$$&& u)<<>>>>>>>> > ) ) )S ( )s99 AA  AcK |r|jd{VStd|jjdS#t$r}t|d}~wwxYw)Nz9skipping installation of remoteip, panel not supported %s) rGr@r8loggerwarningrANAMErr rIs rinstallzModRemoteIp.installTs +  "" !->>@@@@@@@@@$K$  + + +//s * +s2A%A A<(A77A<N) r r r __doc__rOrErGr9rKrPrrrr<r<;sg77 D///,,,)D)))) + + + + +rr<)r!loggingtypingr"defence360agent.subsys.panels.baserdefence360agent.subsysr panels.baserpanels.hosting_panelr getLoggerr rM Exceptionr rr<rrrrZs======------******......  8 $ $     I   &&&&&)&&&R$+$+$+$+$+$+$+$+$+$+r