OXIESEC PANEL
- Current Dir:
/
/
opt
/
cloudlinux
/
venv
/
bin
Server IP: 2a02:4780:11:1084:0:327f:3464:10
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
02/07/2025 10:01:37 PM
rwxr-xr-x
📄
Activate.ps1
8.82 KB
12/18/2024 10:23:16 AM
rw-r--r--
📄
activate
1.65 KB
12/18/2024 10:23:16 AM
rw-r--r--
📄
activate.csh
913 bytes
12/18/2024 10:23:16 AM
rw-r--r--
📄
activate.fish
2.14 KB
12/18/2024 10:23:16 AM
rw-r--r--
📄
alembic
229 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
chardetect
237 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
cl_sysctl
4.51 KB
06/23/2025 12:47:48 PM
rwxr-xr-x
📄
clcpapi
3.64 KB
06/23/2025 12:47:48 PM
rwxr-xr-x
📄
coverage
231 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
coverage-3.11
231 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
coverage3
231 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
cpanel-dbmapping
3.83 KB
06/23/2025 12:47:48 PM
rwxr-xr-x
📄
da_suid_caller.py
686 bytes
06/23/2025 12:47:48 PM
rw-r--r--
📄
detect-requirements
238 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
dodgy
224 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
epylint
235 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
f2py
232 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
f2py3
232 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
f2py3.11
232 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
flake8
230 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
futurize
231 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
get_gprof
1.84 KB
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
get_objgraph
1.63 KB
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
isort
225 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
isort-identify-imports
259 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
jsonschema
229 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
lvestats_config_reader.py
1.19 KB
04/30/2024 07:38:37 PM
rw-r--r--
📄
mako-render
229 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
normalizer
260 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pasteurize
233 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pip
237 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pip3
237 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pip3.11
237 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
plesk_suid_caller.py
905 bytes
06/23/2025 12:47:48 PM
rw-r--r--
📄
prospector
229 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
py.test
237 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pycodestyle
228 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pydocstyle
229 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pyflakes
227 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pylint
233 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pylint-config
249 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pyreverse
239 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pysemver
225 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
pytest
237 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
python
15.59 KB
06/23/2025 03:48:27 PM
rwxr-xr-x
📄
python3
15.59 KB
06/23/2025 03:48:27 PM
rwxr-xr-x
📄
python3.11
15.59 KB
06/23/2025 03:48:27 PM
rwxr-xr-x
📄
raven
235 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
symilar
235 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
tap
223 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
tappy
223 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
undill
603 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
📄
virtualenv
254 bytes
12/18/2024 10:23:16 AM
rwxr-xr-x
Editing: cl_sysctl
Close
#!/opt/cloudlinux/venv/bin/python3 -bb # coding: utf-8 # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2018 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT import fcntl import sys import time import os from argparse import ArgumentParser from clcommon.sysctl import SysCtlConf, SysCtlMigrate, SYSCTL_CL_CONF_FILE, SYSCTL_FILE SELF_LOCK_FILE = '/var/log/cl_sysctl.lock' def create_parser(): config_help = 'Path to sysctl config file. It\'s %(default)s by default' config_path = SYSCTL_CL_CONF_FILE parser = ArgumentParser(description='Utility for working with sysctl configs. INTERNAL USAGE ONLY!') subparsers = parser.add_subparsers(dest='command') subparser_set = subparsers.add_parser(name='set', help='Set or add the the sysctl parameter to the sysctl config') subparser_set.add_argument('-P', '--parameter', action='store', required=True, help='Name of the sysctl parameter') subparser_set.add_argument('-V', '--value', action='store', required=True, help='Value of the sysctl parameter') subparser_set.add_argument('-C', '--config', action='store', help=config_help, default=config_path) subparser_get = subparsers.add_parser(name='get', help='Get the sysctl parameter') subparser_get.add_argument('-P', '--parameter', action='store', required=True, help='Name of the sysctl parameter') subparser_get.add_argument('-C', '--config', action='store', help=config_help, default=config_path) subparser_remove = subparsers.add_parser(name='remove', help='Remove the sysctl parameter from the sysctl config') subparser_remove.add_argument('-P', '--parameter', action='store', required=True, help='Name of the sysctl parameter') subparser_remove.add_argument('-C', '--config', action='store', help=config_help, default=config_path) subparsers_migrate = subparsers.add_parser(name='migrate', help='Migrate sysctl param from {} to {}'.format( SYSCTL_FILE, SYSCTL_CL_CONF_FILE, )) subparsers_migrate.add_argument('-P', '--parameter', action='store', required=True, help='Name of the sysctl parameter') subparsers_migrate.add_argument('-dV', '--default-value', action='store', help='Default value of sysctl parameter if it is absent in source file') return parser def _parse_args(argv): parser = create_parser() params = parser.parse_args(argv) return params def main_(args): params = _parse_args(args) command = params.command if command == 'set': config_file = params.config sysctl = SysCtlConf(config_file=config_file) sysctl.set(name=params.parameter, value=params.value) elif command == 'get': config_file = params.config sysctl = SysCtlConf(config_file=config_file) value = sysctl.get(name=params.parameter) print(value) elif command == 'remove': config_file = params.config sysctl = SysCtlConf(config_file=config_file) sysctl.remove(name=params.parameter) elif command == 'migrate': sysctl_migrate = SysCtlMigrate() sysctl_migrate.migrate( param_name=params.parameter, default_value=params.default_value, ) def main(): with open(SELF_LOCK_FILE, 'w') as lock_file: lock_file_is_locked = True for _ in range(20): try: fcntl.flock(lock_file, fcntl.LOCK_EX | fcntl.LOCK_NB) lock_file_is_locked = False break except IOError: print('Another app is currently holding the cl_sysctl lock; waiting for it to exit.') time.sleep(5) if lock_file_is_locked: print('Another app is still holding the cl_sysctl lock after 20 attempts. Please, try again later.') exit(1) else: main_(sys.argv[1:]) try: os.remove(SELF_LOCK_FILE) except (IOError, OSError): pass if __name__ == '__main__': main()