Submit
Path:
~
/
/
opt
/
imunify360
/
venv
/
lib
/
python3.11
/
site-packages
/
im360
/
subsys
/
panels
/
plesk
/
File Content:
remoteip.py
import os from typing import Optional, Tuple from defence360agent.utils import check_run from im360.subsys.panels.base import RemoteIPInterface __all__ = [] # type: list _REMOTEIP = "remoteip" _RPAF = "rpaf" _HTTPD_IS_NOT_RUNNING = "httpd is not running" _NGINX_MNG_CMD = ("/usr/local/psa/admin/sbin/nginxmng", "-s") async def _enable_httpd_module(name: str): await check_run(["plesk", "sbin", "httpd_modules_ctl", "-e", name]) async def _is_nginx_proxy_on() -> bool: return b"Enabled" in ( await check_run( _NGINX_MNG_CMD, env=dict(os.environ, LC_ALL="C"), ) ) class RemoteIP(RemoteIPInterface): _REMOTEIP_MODULE_NAMES: Tuple[bytes, ...] = ( b"mod_remoteip", b"remoteip_module", b"rpaf_module", ) async def remoteip_activated(self) -> bool: return await self._is_loaded_to_apache() async def remoteip_install(self) -> Optional[str]: for m in (_REMOTEIP, _RPAF): await _enable_httpd_module(m) if await _is_nginx_proxy_on(): await check_run(["service", "nginx", "reload"]) return None
Edit
Rename
Chmod
Delete
FILE
FOLDER
Name
Size
Permission
Action
__pycache__
---
0755
__init__.py
46 bytes
0644
mod_security.py
19469 bytes
0644
panel.py
723 bytes
0644
remoteip.py
1144 bytes
0644
N4ST4R_ID | Naxtarrr