Linux dpw.dpwebtech.com 3.10.0-1160.88.1.el7.x86_64 #1 SMP Tue Mar 7 15:41:52 UTC 2023 x86_64
Apache
: 192.232.243.69 | : 216.73.216.52
46 Domain
7.2.34
dpclient
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 /
cpanel /
scripts /
[ HOME SHELL ]
Name
Size
Permission
Action
cpan_sandbox
[ DIR ]
drwxr-xr-x
php_sandbox
[ DIR ]
drwxr-xr-x
MirrorSearch_pingtest
2.38
KB
-rwxr-xr-x
add_dns
2.36
KB
-rwxr-xr-x
adddns
2.36
KB
-rwxr-xr-x
addpop
5.96
KB
-rwxr-xr-x
addsystemuser
3.27
KB
-rwxr-xr-x
adduser
92
B
-rwxr-xr-x
apachelimits
4.31
KB
-rwxr-xr-x
archive_sync_zones
3.02
KB
-rwxr-xr-x
auto-adjust-mysql-limits
1.81
KB
-rwxr-xr-x
autorepair
1.26
KB
-rwxr-xr-x
backups_clean_metadata_for_mis...
1.57
KB
-rwxr-xr-x
backups_create_metadata
15.75
KB
-rwxr-xr-x
backups_list_user_files
4.56
KB
-rwxr-xr-x
balance_linked_node_quotas
2.62
KB
-rwxr-xr-x
biglogcheck
1.69
KB
-rwxr-xr-x
build_bandwidthdb_root_cache_i...
1.52
KB
-rwxr-xr-x
build_cpnat
3.41
KB
-rwxr-xr-x
build_mail_sni
3.84
KB
-rwxr-xr-x
build_maxemails_config
441
B
-rwxr-xr-x
builddovecotconf
7.72
KB
-rwxr-xr-x
buildeximconf
5.94
KB
-rwxr-xr-x
buildhttpdconf
2.6
KB
-rwxr-xr-x
buildnsdconf
1.01
KB
-rwxr-xr-x
buildpureftproot
539
B
-rwxr-xr-x
ccs-check
4.91
KB
-rwxr-xr-x
check_cpanel_rpms
10.45
KB
-rwxr-xr-x
check_domain_tls_service_domai...
6.68
KB
-rwxr-xr-x
check_immutable_files
5.49
KB
-rwxr-xr-x
check_mail_spamassassin_compil...
187
B
-rwxr-xr-x
check_maxmem_against_domains_c...
3.57
KB
-rwxr-xr-x
check_mount_procfs
2.02
KB
-rwxr-xr-x
check_mysql
5.58
KB
-rwxr-xr-x
check_security_advice_changes
7.4
KB
-rwxr-xr-x
check_unmonitored_enabled_serv...
4.31
KB
-rwxr-xr-x
check_unreliable_resolvers
3.59
KB
-rwxr-xr-x
check_users_my_cnf
6.05
KB
-rwxr-xr-x
check_valid_server_hostname
7.48
KB
-rwxr-xr-x
checkalldomainsmxs
2.4
KB
-rwxr-xr-x
checkbashshell
1.18
KB
-rwxr-xr-x
checkccompiler
1.33
KB
-rwxr-xr-x
checkexim.pl
3.1
KB
-rwxr-xr-x
checklink
1.29
KB
-rwxr-xr-x
checknsddirs
1014
B
-rwxr-xr-x
checkup2date
3.14
KB
-rwxr-xr-x
checkusers
856
B
-rwxr-xr-x
checkyum
1.13
KB
-rwxr-xr-x
chkmydns
561
B
-rwxr-xr-x
chkpaths
141
B
-rwxr-xr-x
chpass
416
B
-rwxr-xr-x
ckillall
1.11
KB
-rwxr-xr-x
clean_cgiemail
5.16
KB
-rwxr-xr-x
clean_dead_mailman_locks
2.09
KB
-rwxr-xr-x
clean_up_temp_wheel_users
2.43
KB
-rwxr-xr-x
clean_user_php_sessions
4.18
KB
-rwxr-xr-x
cleandns
12.25
KB
-rwxr-xr-x
cleandns8
417
B
-rwxr-xr-x
cleanmsglog
735
B
-rwxr-xr-x
cleanphpsessions
947
B
-rwxr-xr-x
cleanphpsessions.php
595
B
-rw-r--r--
cleanquotas
1.6
KB
-rwxr-xr-x
cleansessions
5.66
KB
-rwxr-xr-x
cleanupinterchange
2.64
KB
-rwxr-xr-x
cleanupmysqlprivs
531
B
-rwxr-xr-x
clear_cpaddon_ui_caches
1.03
KB
-rwxr-xr-x
clear_orphaned_virtfs_mounts
3.28
KB
-rwxr-xr-x
comparecdb
1.52
KB
-rwxr-xr-x
compilers
2.86
KB
-rwxr-xr-x
compilerscheck
999
B
-rwxr-xr-x
configure_firewall_for_cpanel
520
B
-rwxr-xr-x
configure_rh_firewall_for_cpan...
520
B
-rwxr-xr-x
configure_rh_ipv6_firewall_for...
656
B
-rwxr-xr-x
convert2dovecot
682
B
-rwxr-xr-x
convert_accesshash_to_token
4.07
KB
-rwxr-xr-x
convert_and_migrate_from_legac...
1.97
KB
-rwxr-xr-x
convert_maildir_to_mdbox
1.66
KB
-rwxr-xr-x
convert_mdbox_to_maildir
1.66
KB
-rwxr-xr-x
convert_roundcube_mysql2sqlite
25.29
KB
-rwxr-xr-x
convert_to_dovecot_delivery
4.33
KB
-rwxr-xr-x
convert_whmxfer_to_sqlite
1.46
KB
-rwxr-xr-x
cpaddonsup
3.22
KB
-rwxr-xr-x
cpan_config
2.8
KB
-rwxr-xr-x
cpanel_initial_install
63.69
KB
-rwxr-xr-x
cpanelsync
28.31
KB
-rwxr-xr-x
cpanelsync_postprocessor
1.69
KB
-rwxr-xr-x
cpanpingtest
965
B
-rwxr-xr-x
cpbackup
44.74
KB
-rwxr-xr-x
cpbackup_transport_file
5.65
KB
-rwxr-xr-x
cpdig
1.81
KB
-rwxr-xr-x
cpfetch
1.23
KB
-rwxr-xr-x
cphulkdblacklist
433
B
-rwxr-xr-x
cphulkdwhitelist
1.3
KB
-rwxr-xr-x
cpservice
2.87
KB
-rwxr-xr-x
cpuser_port_authority
19.29
KB
-rwxr-xr-x
cpuser_service_manager
10.94
KB
-rwxr-xr-x
createacct
21.17
MB
-rwx------
custom_backup_destination.pl.s...
5.06
KB
-rwxr-xr-x
custom_backup_destination.pl.s...
2.84
KB
-rwxr-xr-x
dav_change_hostname
3.57
KB
-rwxr-xr-x
dcpumon-wrapper
850
B
-rwxr-xr-x
delpop
6.2
KB
-rwxr-xr-x
detect_env_capabilities
508
B
-rwxr-xr-x
disable_prelink
2.74
KB
-rwxr-xr-x
disable_sqloptimizer
1.49
KB
-rwxr-xr-x
disablefileprotect
2.13
KB
-rwxr-xr-x
distro_changed_hook
1.08
KB
-rwxr-xr-x
dnscluster
4.44
KB
-rwxr-xr-x
dnsqueuecron
1.29
KB
-rwxr-xr-x
dnssec-cluster-keys
3.75
KB
-rwxr-xr-x
dovecot_maintenance
10.52
KB
-rwxr-xr-x
dovecot_set_defaults.pl
984
B
-rwxr-xr-x
dumpcdb
866
B
-rwxr-xr-x
dumpinodes
687
B
-rwxr-xr-x
dumpquotas
616
B
-rwxr-xr-x
dumpstor
913
B
-rwxr-xr-x
ea4_fresh_install
2.64
KB
-rwxr-xr-x
edit_cpanelsync_exclude_list
2.58
KB
-rwxr-xr-x
editquota
3.44
KB
-rwxr-xr-x
email_archive_maintenance
6.15
KB
-rwxr-xr-x
email_hold_maintenance
1.46
KB
-rwxr-xr-x
enable_spf_dkim_globally
8.83
KB
-rwxr-xr-x
enable_sqloptimizer
1.57
KB
-rwxr-xr-x
enablefileprotect
2.14
KB
-rwxr-xr-x
ensure_autoenabled_features
2.46
MB
-rwx------
ensure_conf_dir_crt_key
4.82
KB
-rwxr-xr-x
ensure_cpuser_file_ip
2.55
KB
-rwxr-xr-x
ensure_crontab_permissions
1.08
KB
-rwxr-xr-x
ensure_dovecot_memory_limits_m...
3.13
KB
-rwxr-xr-x
ensure_hostname_resolves
2.34
KB
-rwxr-xr-x
ensure_includes
601
B
-rwxr-xr-x
ensure_vhost_includes
13.53
KB
-rwxr-xr-x
ensurerpm
416
B
-rwxr-xr-x
ensurerpm2
1.94
KB
-rwxr-xr-x
exim_tidydb
3.06
KB
-rwxr-xr-x
eximconfgen
1.32
KB
-rwxr-xr-x
eximstats_spam_check
867
B
-rwxr-xr-x
exportmydnsdb
3.47
KB
-rwxr-xr-x
expunge_expired_certificates_f...
3.56
KB
-rwxr-xr-x
expunge_expired_pkgacct_sessio...
852
B
-rwxr-xr-x
expunge_expired_transfer_sessi...
1.06
KB
-rwxr-xr-x
fastmail
5.16
KB
-rwxr-xr-x
featuremod
1.92
KB
-rwxr-xr-x
fetchfile
422
B
-rwxr-xr-x
find_and_fix_rpm_issues
5.68
KB
-rwxr-xr-x
find_outdated_services
4.62
KB
-rwxr-xr-x
find_pids_with_inotify_watch_o...
3.66
KB
-rwxr-xr-x
findphpversion
2.21
KB
-rwxr-xr-x
fix-cpanel-perl
20.56
KB
-rwxr-xr-x
fix-listen-on-localhost
3.52
KB
-rwxr-xr-x
fix-web-vhost-configuration
6.15
KB
-rwxr-xr-x
fix_addon_permissions
7.68
KB
-rwxr-xr-x
fix_innodb_tables
4.05
KB
-rwxr-xr-x
fix_pear_registry
4.24
KB
-rwxr-xr-x
fix_reseller_acls
11.58
KB
-rwxr-xr-x
fixetchosts
4.21
KB
-rwxr-xr-x
fixheaders
572
B
-rwxr-xr-x
fixheaders-32bit
619
B
-rwxr-xr-x
fixmailinglistperms
1008
B
-rwxr-xr-x
fixmailman
2.09
KB
-rwxr-xr-x
fixnamedviews
1.22
KB
-rwxr-xr-x
fixndc
413
B
-rwxr-xr-x
fixquotas
13.75
KB
-rwxr-xr-x
fixquotas-onboot
564
B
-rwxr-xr-x
fixrelayd
1.44
KB
-rwxr-xr-x
fixrndc
16.48
KB
-rwxr-xr-x
fixtar
503
B
-rwxr-xr-x
fixtlsversions
4.7
KB
-rwxr-xr-x
fixvaliases
2
KB
-rwxr-xr-x
fixwebalizer
966
B
-rwxr-xr-x
forcelocaldomain
895
B
-rwxr-xr-x
ftpfetch
2.2
KB
-rwxr-xr-x
ftpquotacheck
7.7
KB
-rwxr-xr-x
ftpsfetch
2.36
KB
-rwxr-xr-x
ftpupdate
261
B
-rwxr-xr-x
gather_update_log_stats
4.25
KB
-rwx------
gather_update_logs_setupcronta...
5.45
KB
-rwx------
gemwrapper
1.74
KB
-rwxr-xr-x
gencrt
5.94
KB
-rwxr-xr-x
generate_account_suspension_in...
5.7
KB
-rwxr-xr-x
generate_google_drive_credenti...
1.11
KB
-rwxr-xr-x
generate_google_drive_oauth_ur...
984
B
-rwxr-xr-x
generate_maildirsize
14.01
KB
-rwxr-xr-x
gensysinfo
825
B
-rwxr-xr-x
get_locale_from_legacy_name_in...
1.99
KB
-rwxr-xr-x
getremotecpmove
12.69
KB
-rwxr-xr-x
grpck
1.19
KB
-rwxr-xr-x
hackcheck
3.02
KB
-rwxr-xr-x
hook
1.45
KB
-rwxr-xr-x
httpspamdetect
2.66
KB
-rwxr-xr-x
hulk-unban-ip
4.1
MB
-rwx------
import_exim_data
8.36
KB
-rwxr-xr-x
importmydnsdb
11.34
KB
-rwxr-xr-x
increase_filesystem_limits
891
B
-rwxr-xr-x
initacls
4.97
KB
-rwxr-xr-x
initfpsuexec
442
B
-rwxr-xr-x
initquotas
19.56
KB
-rwxr-xr-x
initsuexec
4.03
KB
-rwxr-xr-x
install_cpanel_analytics
1.73
KB
-rwxr-xr-x
install_dovecot_fts
845
B
-rwxr-xr-x
install_lets_encrypt_autossl_p...
646
B
-rwxr-xr-x
install_plugin
2.58
KB
-rwxr-xr-x
installpkg
575
B
-rwxr-xr-x
installpostgres
7.66
KB
-rwxr-xr-x
installrpm
495
B
-rwxr-xr-x
installrpm2
675
B
-rwxr-xr-x
installsqlite3
1.82
KB
-rwxr-xr-x
ipcheck
3.92
KB
-rwxr-xr-x
ipusage
7.45
KB
-rwxr-xr-x
isdedicatedip
602
B
-rwxr-xr-x
jetbackup-check
3.69
KB
-rwxr-xr-x
killdns
422
B
-rwxr-xr-x
killdns-dnsadmin
1.15
KB
-rwxr-xr-x
killmysqluserprivs
433
B
-rwxr-xr-x
killmysqlwildcard
1.15
KB
-rwxr-xr-x
killpvhost
853
B
-rwxr-xr-x
killspamkeys
937
B
-rwxr-xr-x
link_3rdparty_binaries
1.27
KB
-rwxr-xr-x
linksubemailtomainacct
3.17
KB
-rwxr-xr-x
listcheck
538
B
-rwxr-xr-x
listsubdomains
1.05
KB
-rwxr-xr-x
litespeed-check
3.86
KB
-rwxr-xr-x
locale_export
4.82
KB
-rwxr-xr-x
locale_import
4.35
KB
-rwxr-xr-x
locale_info
3.99
KB
-rwxr-xr-x
logo.dat
205
B
-rw-r--r--
magicloader
1.94
KB
-rwxr-xr-x
maildir_converter
6.07
KB
-rwxr-xr-x
mailperm
16.58
KB
-rwxr-xr-x
mailscannerupdate
2.42
KB
-rwxr-xr-x
mainipcheck
9.82
KB
-rwxr-xr-x
maintenance
43.69
KB
-rwxr-xr-x
make_config
407
B
-rw-r--r--
make_hostname_unowned
1.16
KB
-rwxr-xr-x
manage_greylisting
16.25
KB
-rwxr-xr-x
manage_mysql_profiles
19.82
KB
-rwxr-xr-x
migrate-pdns-conf
9.74
KB
-rwxr-xr-x
migrate_local_ini_to_php_ini
7.41
KB
-rwxr-xr-x
migrate_whmtheme_file_to_userd...
2.95
KB
-rwxr-xr-x
mkwwwacctconf
2.27
KB
-rwxr-xr-x
modify_accounts
4
KB
-rwxr-xr-x
modify_packages
3.54
KB
-rwxr-xr-x
modsec_vendor
15.63
KB
-rwxr-xr-x
mysqlconnectioncheck
6
KB
-rwxr-xr-x
mysqlpasswd
4.09
KB
-rwxr-xr-x
named.ca
1.57
KB
-rw-r--r--
named.rfc1912.zones
774
B
-rw-r--r--
notify_expiring_certificates
9.29
KB
-rwxr-xr-x
notify_expiring_certificates_o...
1.39
KB
-rwxr-xr-x
oopscheck
1.12
KB
-rwxr-xr-x
optimize_eximstats
3.88
KB
-rwxr-xr-x
patch_mail_spamassassin_compil...
2.39
KB
-rwxr-xr-x
patchfdsetsize
2.72
KB
-rwxr-xr-x
pedquota
2.26
KB
-rwxr-xr-x
perform_sqlite_auto_rebuild_db...
2.2
KB
-rwxr-xr-x
perlinstaller
528
B
-rwxr-xr-x
perlmods
1.18
KB
-rwxr-xr-x
php_fpm_config
9.73
KB
-rwxr-xr-x
phpini_tidy
687
B
-rwxr-xr-x
pkgacct
85.65
KB
-rwxr-xr-x
post_sync_cleanup
6.09
KB
-rwxr-xr-x
preupcp
741
B
-rwxr-xr-x
primary_virtual_host_migration
2.44
KB
-rwxr-xr-x
process_pending_cpanel_php_pea...
3.48
KB
-rwxr-xr-x
process_site_templates
7.27
KB
-rwxr-xr-x
proftpd.conf.default
2.75
KB
-rw-r--r--
proxydomains
9.34
KB
-rwxr-xr-x
ptycheck
724
B
-rwxr-xr-x
purge_modsec_log
1.53
KB
-rwxr-xr-x
purge_old_config_caches
2.08
KB
-rwxr-xr-x
pwck
708
B
-rwxr-xr-x
quickdnslookup
1.13
KB
-rwxr-xr-x
quickwhoisips
2.29
KB
-rwxr-xr-x
quota_auto_fix
1.41
KB
-rwxr-xr-x
quotacheck
22.36
KB
-rwxr-xr-x
rawchpass
460
B
-rwxr-xr-x
rdate
1.86
KB
-rwxr-xr-x
realadduser
5.64
KB
-rwxr-xr-x
realchpass
3.26
KB
-rwxr-xr-x
realperlinstaller
5.67
KB
-rwxr-xr-x
realrawchpass
425
B
-rwxr-xr-x
rebuild_available_rpm_addons_c...
1.03
KB
-rwxr-xr-x
rebuild_bandwidthdb_root_cache
1.45
KB
-rwxr-xr-x
rebuild_dbmap
5.8
KB
-rwxr-xr-x
rebuild_provider_openid_connec...
1.01
KB
-rwxr-xr-x
rebuild_whm_chrome
2.22
KB
-rwxr-xr-x
rebuilddnsconfig
26.19
KB
-rwxr-xr-x
rebuildhttpdconf
2.6
KB
-rwxr-xr-x
rebuildinstalledssldb
2.85
KB
-rwxr-xr-x
rebuildippool
509
B
-rwxr-xr-x
rebuildnsdzones
1.14
KB
-rwxr-xr-x
rebuilduserssldb
948
B
-rwxr-xr-x
refresh-dkim-validity-cache
5.97
KB
-rwxr-xr-x
regenerate_tokens
1.54
KB
-rwxr-xr-x
reloadnsd
821
B
-rwxr-xr-x
remove_dovecot_index_files
5.89
KB
-rwxr-xr-x
removeacct
17.69
MB
-rwx------
rescan_user_dovecot_fts
2.97
KB
-rwxr-xr-x
reset_mail_quotas_to_sane_valu...
6.82
KB
-rwxr-xr-x
resetmailmanurls
2.03
KB
-rwxr-xr-x
resetquotas
4.68
KB
-rwxr-xr-x
restartsrv
3.23
KB
-rwxr-xr-x
restartsrv_apache
422
B
-rwxr-xr-x
restartsrv_apache_php_fpm
8.67
MB
-rwxr-xr-x
restartsrv_base
8.67
MB
-rwxr-xr-x
restartsrv_bind
8.67
MB
-rwxr-xr-x
restartsrv_chkservd
427
B
-rwxr-xr-x
restartsrv_clamd
8.67
MB
-rwxr-xr-x
restartsrv_cpanalyticsd
8.67
MB
-rwxr-xr-x
restartsrv_cpanel_php_fpm
8.67
MB
-rwxr-xr-x
restartsrv_cpanellogd
8.67
MB
-rwxr-xr-x
restartsrv_cpdavd
8.67
MB
-rwxr-xr-x
restartsrv_cpgreylistd
8.67
MB
-rwxr-xr-x
restartsrv_cphulkd
8.67
MB
-rwxr-xr-x
restartsrv_cpipv6
8.67
MB
-rwxr-xr-x
restartsrv_cpsrvd
8.67
MB
-rwxr-xr-x
restartsrv_crond
8.67
MB
-rwxr-xr-x
restartsrv_dnsadmin
8.67
MB
-rwxr-xr-x
restartsrv_dovecot
8.67
MB
-rwxr-xr-x
restartsrv_exim
8.67
MB
-rwxr-xr-x
restartsrv_eximstats
504
B
-rwxr-xr-x
restartsrv_ftpd
426
B
-rwxr-xr-x
restartsrv_ftpserver
911
B
-rwxr-xr-x
restartsrv_httpd
8.67
MB
-rwxr-xr-x
restartsrv_imap
437
B
-rwxr-xr-x
restartsrv_inetd
2.67
KB
-rwxr-xr-x
restartsrv_ipaliases
8.67
MB
-rwxr-xr-x
restartsrv_lmtp
437
B
-rwxr-xr-x
restartsrv_mailman
8.67
MB
-rwxr-xr-x
restartsrv_mydns
8.67
MB
-rwxr-xr-x
restartsrv_mysql
8.67
MB
-rwxr-xr-x
restartsrv_named
777
B
-rwxr-xr-x
restartsrv_nscd
8.67
MB
-rwxr-xr-x
restartsrv_nsd
8.67
MB
-rwxr-xr-x
restartsrv_p0f
8.67
MB
-rwxr-xr-x
restartsrv_pdns
8.67
MB
-rwxr-xr-x
restartsrv_pop3
437
B
-rwxr-xr-x
restartsrv_postgres
427
B
-rwxr-xr-x
restartsrv_postgresql
8.67
MB
-rwxr-xr-x
restartsrv_powerdns
442
B
-rwxr-xr-x
restartsrv_proftpd
8.67
MB
-rwxr-xr-x
restartsrv_pureftpd
8.67
MB
-rwxr-xr-x
restartsrv_queueprocd
8.67
MB
-rwxr-xr-x
restartsrv_rsyslog
8.67
MB
-rwxr-xr-x
restartsrv_rsyslogd
437
B
-rwxr-xr-x
restartsrv_spamd
8.67
MB
-rwxr-xr-x
restartsrv_sshd
8.67
MB
-rwxr-xr-x
restartsrv_syslogd
2.47
KB
-rwxr-xr-x
restartsrv_tailwatchd
8.67
MB
-rwxr-xr-x
restartsrv_unknown
8.67
MB
-rwxr-xr-x
restartsrv_xinetd
422
B
-rwxr-xr-x
restorecpuserfromcache
1.96
KB
-rwxr-xr-x
restorepkg
30.64
MB
-rwx------
retry_rpm
4.31
KB
-rwxr-xr-x
rfc1912_zones.tar
10
KB
-rw-r--r--
rpmup
12.56
KB
-rwxr-xr-x
rpmup2
12.56
KB
-rwxr-xr-x
rsync-user-homedir.pl
5.76
KB
-rwxr-xr-x
run_if_exists
510
B
-rwxr-xr-x
runstatsonce
438
B
-rwxr-xr-x
runweblogs
1.02
KB
-rwxr-xr-x
sa-update_wrapper
3.41
KB
-rwxr-xr-x
safetybits.pl
844
B
-rwxr-xr-x
safeup2date
618
B
-rwxr-xr-x
secureit
4.72
KB
-rwxr-xr-x
securemysql
4.54
KB
-rwxr-xr-x
securerailsapps
3.58
KB
-rwxr-xr-x
securetmp
15.95
KB
-rwxr-xr-x
send_api_notifications
1.15
KB
-rwxr-xr-x
sendicq
474
B
-rwxr-xr-x
servicedomains
9.34
KB
-rwxr-xr-x
set_mailman_archive_perms
1.75
KB
-rwxr-xr-x
set_php_memory_limits
3.67
KB
-rwxr-xr-x
setpostgresconfig
6.04
KB
-rwxr-xr-x
setup_greylist_db
16.25
KB
-rwxr-xr-x
setup_modsec_db
1.3
KB
-rwxr-xr-x
setupftpserver
10.47
KB
-rwxr-xr-x
setupmailserver
9.48
KB
-rwxr-xr-x
setupnameserver
14.82
KB
-rwxr-xr-x
shrink_modsec_ip_database
12.97
KB
-rwxr-xr-x
simpleps
3.05
KB
-rwxr-xr-x
slurp_exim_mainlog
5.78
KB
-rwxr-xr-x
smartcheck
15.13
KB
-rwxr-xr-x
smtpmailgidonly
7.66
KB
-rwxr-xr-x
spamassassin_dbm_cleaner
5.85
KB
-rwxr-xr-x
spamassassindisable
3.74
KB
-rwxr-xr-x
spamboxdisable
2.27
KB
-rwxr-xr-x
sshcontrol
14.37
KB
-rwxr-xr-x
ssl_crt_status
3.84
KB
-rwxr-xr-x
suspendacct
16.63
KB
-rwxr-xr-x
suspendmysqlusers
4.42
KB
-rwxr-xr-x
swapip
6
KB
-rwxr-xr-x
sync-mysql-users-from-grants
1.2
KB
-rwxr-xr-x
sync_child_accounts
1.77
KB
-rwxr-xr-x
sync_contact_emails_to_cpanel_...
1.72
KB
-rwxr-xr-x
synccpaddonswithsqlhost
6.14
KB
-rwxr-xr-x
synctransfers
1.92
KB
-rwxr-xr-x
syslog_check
1.36
KB
-rwxr-xr-x
sysup
645
B
-rwxr-xr-x
test_sa_compiled
1.07
KB
-rwxr-xr-x
transfer_account_as_user
2.4
KB
-rwxr-xr-x
transfer_accounts_as_root
4.8
KB
-rwxr-xr-x
transfer_in_progress
3.08
KB
-rwxr-xr-x
transfer_in_progress.pod
312
B
-rw-r--r--
transfermysqlusers
8.1
MB
-rwx------
try-later
8.05
KB
-rwxr-xr-x
unblockip
667
B
-rwxr-xr-x
uninstall_cpanel_analytics
1.2
KB
-rwxr-xr-x
uninstall_dovecot_fts
562
B
-rwxr-xr-x
uninstall_lets_encrypt_autossl...
1.19
KB
-rwxr-xr-x
uninstall_plugin
2.62
KB
-rwxr-xr-x
unlink_service_account
2.62
KB
-rwxr-xr-x
unpkgacct
4.6
KB
-rwxr-xr-x
unslavenamedconf
863
B
-rwxr-xr-x
unsuspendacct
16.53
KB
-rwxr-xr-x
unsuspendmysqlusers
6.75
KB
-rwxr-xr-x
upcp
31.38
KB
-rwxr-xr-x
upcp-running
2.7
KB
-rwxr-xr-x
upcp.static
687.18
KB
-rwxr-xr-x
update_apachectl
480
B
-rwxr-xr-x
update_db_cache
430
B
-rwxr-xr-x
update_dkim_keys
1.45
KB
-rwxr-xr-x
update_exim_rejects
1.21
KB
-rwxr-xr-x
update_known_proxy_ips
1002
B
-rwxr-xr-x
update_local_rpm_versions
3.83
KB
-rwxr-xr-x
update_mailman_cache
8.34
KB
-rwxr-xr-x
update_mysql_systemd_config
1.26
KB
-rwxr-xr-x
update_neighbor_netblocks
487
B
-rwxr-xr-x
update_sa_config
2.16
KB
-rwxr-xr-x
update_spamassassin_config
12.22
KB
-rwxr-xr-x
update_users_jail
691
B
-rwxr-xr-x
update_users_vhosts
801
B
-rwxr-xr-x
updatedomainips
605
B
-rwxr-xr-x
updatenameserverips
1.66
KB
-rwxr-xr-x
updatenow
5.42
KB
-rwxr-xr-x
updatenow.static
1.84
MB
-rwxr-xr-x
updatesigningkey
1.95
KB
-rwxr-xr-x
updatessldomains
1.81
KB
-rwxr-xr-x
updatesupportauthorizations
2.49
KB
-rwxr-xr-x
updateuserdatacache
2.47
KB
-rwxr-xr-x
updateuserdomains
774
B
-rwxr-xr-x
upgrade_bandwidth_dbs
2.22
KB
-rwxr-xr-x
upgrade_subaccount_databases
2.73
KB
-rwxr-xr-x
userdata_wildcard_cleanup
5.74
KB
-rwxr-xr-x
userdirctl
5.01
KB
-rwxr-xr-x
validate_sshkey_passphrase
1.21
KB
-rwxr-xr-x
verify_api_spec_files
757
B
-rwxr-xr-x
verify_pidfile
1.96
KB
-rwxr-xr-x
verify_vhost_includes
7.39
KB
-rwxr-xr-x
vps_optimizer
7.81
KB
-rwxr-xr-x
vzzo-fixer
725
B
-rwxr-xr-x
whmlogin
2.33
KB
-rwxr-xr-x
whoowns
1.13
KB
-rwxr-xr-x
wpt_license
4.43
MB
-rwx------
wwwacct
21.17
MB
-rwx------
wwwacct2
88
B
-rwxr-xr-x
xfer_rcube_schema_migrate.pl
2.4
KB
-rwxr-xr-x
xfer_rcube_uid_resolver.pl
1.8
KB
-rwxr-xr-x
xferpoint
3.2
KB
-rwxr-xr-x
xfertool
14.02
KB
-rwxr-xr-x
yum_update_openssl
880
B
-rwxr-xr-x
zoneexists
800
B
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : fix-cpanel-perl
#!/usr/bin/perl # cpanel - scripts/fix-cpanel-perl Copyright 2020 cPanel, L.L.C. # All rights reserved. # copyright@cpanel.net http://cpanel.net # This code is subject to the cPanel license. Unauthorized copying is prohibited # This script was written to provide a means to recover from a catostropic loss # of cpanel-perl RPMs so that you cannot run check_cpanel_rpms and/or upcp to get # all your lost cPanel files back. It is automatically invoked if need-be if # check_cpanel_rpms cannot run. package scripts::fixcpanelperl; use strict; use warnings; use IPC::Open3 (); use POSIX (); my $COLOR_RED = 31; my $COLOR_YELLOW = 33; our $CPANEL_CONFIG_FILE = q[/var/cpanel/cpanel.config]; our $SIG_VALIDATION_CPCONF_KEY = 'signature_validation'; sub colorize_bold { my ( $color, $msg ) = @_; return $msg if !defined $color || -e q{/var/cpanel/disable_cpanel_terminal_colors}; $msg ||= ''; return chr(27) . '[1;' . $color . 'm' . $msg . chr(27) . '[0;m'; } sub DEBUG($) { return _MSG( 'DEBUG', " " . shift ) } ## no critic(ProhibitSubroutinePrototypes) sub ERROR($) { return _MSG( 'ERROR', colorize_bold( $COLOR_RED, shift ) ) } ## no critic(ProhibitSubroutinePrototypes) sub WARN($) { return _MSG( 'WARN', colorize_bold( $COLOR_YELLOW, shift ) ) } ## no critic(ProhibitSubroutinePrototypes) sub INFO($) { return _MSG( 'INFO', shift ) } ## no critic(ProhibitSubroutinePrototypes) sub FATAL($) { _MSG( 'FATAL', colorize_bold( $COLOR_RED, shift ) ); die "\n"; } ## no critic(ProhibitSubroutinePrototypes) # Cached and used all over the place. my ( $wget_bin, $wget_args, $gpg_bin ); my ( $distro, $distro_version, $distro_arch ); my %sha; exit script() unless caller(); sub script { return 0 if cpanel_perl_is_stable(); ERROR("Core cpanel-perl modules have been found to be corrupt. Attempting to correct this.") unless $ENV{CPANEL_BASE_INSTALL}; ( $wget_bin, $wget_args ) = get_download_tool_binary(); $gpg_bin = gpg_bin(); ( $distro, $distro_version, $distro_arch ) = check_system_support(); fetch_and_install_gpg_keys() unless $ENV{CPANEL_BASE_INSTALL_GPG_KEYS_IMPORTED}; my ( $rpm_version_source, @rpms ) = rpms_to_download(); my $rpm_downloads_dir = '/usr/local/cpanel/tmp/rpm_downloads'; my $rpm_url_base = "/RPM/$rpm_version_source/centos/$distro_version/x86_64"; my $core_perl_rpm = shift @rpms; get_rpm_sha512( $rpm_downloads_dir, $rpm_url_base, $rpm_version_source ); chdir $rpm_downloads_dir; my $core_perl_pid; if ( $core_perl_pid = fork() ) { } else { wget_and_validate_file( $core_perl_rpm, $rpm_url_base, $rpm_downloads_dir ); system( qw{/bin/rpm -Uvh --force}, $core_perl_rpm ); exit(0); } foreach my $rpm_file (@rpms) { wget_and_validate_file( $rpm_file, $rpm_url_base, $rpm_downloads_dir ); } { waitpid( $core_perl_pid, 0 ); FATAL "Core perl RPM transaction failed" unless $? == 0; } system( qw{/bin/rpm -Uvh --force}, @rpms ); FATAL "RPM transaction failed" unless $? == 0; # updatenow.static will do the needful during an install. return 0 if $ENV{CPANEL_BASE_INSTALL}; if ( !-x '/usr/local/cpanel/scripts/check_cpanel_rpms' ) { FATAL "Unable to run scripts/check_cpanel_rpms. You will need to run updatenow.static and then re-run /usr/local/cpanel/scripts/check_cpanel_rpms --fix"; } exec(qw{/usr/local/cpanel/scripts/check_cpanel_rpms --fix --long-list --no-digest}) or FATAL "Failed to exec /usr/local/cpanel/scripts/check_cpanel_rpms --fix"; return 255; } sub rpms_to_download { return "11.94", # The main perl rpm must always come first qw { cpanel-perl-532-5.32.0-3.cp1194.x86_64.rpm cpanel-perl-532-common-sense-3.75-1.cp1194.noarch.rpm cpanel-perl-532-B-COW-0.004-1.cp1194.x86_64.rpm cpanel-perl-532-CDB_File-0.99-1.cp1194.x86_64.rpm cpanel-perl-532-IO-SigGuard-0.15-1.cp1194.noarch.rpm cpanel-perl-532-JSON-XS-4.03-1.cp1194.x86_64.rpm cpanel-perl-532-Compress-Raw-Lzma-2.096-1.cp1194.x86_64.rpm cpanel-perl-532-Proc-FastSpawn-1.2-1.cp1194.x86_64.rpm cpanel-perl-532-Try-Tiny-0.30-1.cp1194.noarch.rpm cpanel-perl-532-Types-Serialiser-1.0-1.cp1194.noarch.rpm cpanel-perl-532-YAML-Syck-1.34-1.cp1194.x86_64.rpm cpanel-perl-532-Net-SSLeay-1.88-1.cp1194.x86_64.rpm cpanel-perl-532-IO-Socket-SSL-2.068-1.cp1194.noarch.rpm cpanel-perl-532-Class-XSAccessor-1.19-1.cp1194.x86_64.rpm }; } sub cpanel_perl_modules { # Throw out 11.70 and the first RPM (perl) my ( undef, undef, @rpms ) = rpms_to_download(); my @modules; foreach my $rpm (@rpms) { $rpm =~ s/^cpanel-perl-532-//; $rpm =~ s/-\d.+$//; $rpm =~ s/-/::/g; push @modules, $rpm; } return @modules; } sub cpanel_perl_is_stable { my $command = '/usr/local/cpanel/3rdparty/bin/perl'; $command .= " -M$_" foreach cpanel_perl_modules(); my $got = `$command -E'print q{ok}' 2>&1`; return ( !$? && $got && $got eq 'ok' ) ? 1 : 0; } sub get_rpm_sha512 { my ( $rpm_downloads_dir, $rpm_url_base, $rpm_version_source ) = @_; # Setup the directory as best we can. unlink( '/usr/local/cpanel/tmp', $rpm_downloads_dir ); mkdir '/usr/local/cpanel/tmp'; mkdir $rpm_downloads_dir; -d $rpm_downloads_dir or FATAL("Can't make directory $rpm_downloads_dir "); my $sha_file = "$rpm_downloads_dir/rpm.$rpm_version_source.sha512"; my $sig_file = "$rpm_downloads_dir/rpm.$rpm_version_source.sha512.asc"; # download_file( "$rpm_url_base/rpm.sha512.asc", $sig_file ); download_file( "$rpm_url_base/rpm.sha512", $sha_file ); verify_file_signature( $sha_file, $sig_file, "$rpm_url_base/rpm.sha512" ); open( my $fh, '<', $sha_file ) or FATAL("Can't read $sha_file"); while ( my $line = <$fh> ) { chomp $line; my ( $sha, $file ) = split( qr{\s+}, $line ); $sha{$file} = $sha; } close $fh; return; } sub get_download_tool_binary { for my $bin (qw(/bin/wget /usr/bin/wget /usr/local/bin/wget)) { next if ( !-e $bin ); next if ( !-x _ ); next if ( -z _ ); return ( $bin, ' -nv --no-dns-cache --tries=20 --timeout=60 --dns-timeout=60 --read-timeout=30 --waitretry=1 --retry-connrefused -O' ) if ( `$bin --version` =~ m/GNU\s+Wget\s+\d+\.\d+/ims ); } return; } sub gpg_bin { for my $bin (qw(/bin/gpg /usr/bin/gpg /usr/local/bin/gpg)) { next if ( !-e $bin ); next if ( !-x _ ); next if ( -z _ ); return $bin; } FATAL "Can't bootstrap cpanel-perl without gpg. Try: yum -y install gnupg2"; return; } sub _MSG { my $level = shift; my $msg = shift || ''; chomp $msg; my $message_caller_depth = 1; my ( $sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst ) = localtime; my ( $package, $filename, $line ) = caller($message_caller_depth); my $stamp_msg = sprintf( "%04d-%02d-%02d %02d:%02d:%02d %4s (%5s): %s\n", $year + 1900, $mon + 1, $mday, $hour, $min, $sec, $line, $level, $msg ); print $stamp_msg; return; } sub get_update_source { my $update_source = 'httpupdate.cpanel.net'; my $source_file = '/etc/cpsources.conf'; if ( -r $source_file && -s $source_file ) { # pull in from cpsources.conf if it's set. open( my $fh, "<", $source_file ) or return $update_source; while (<$fh>) { next if ( $_ !~ m/^\s*HTTPUPDATE\s*=\s*(\S+)/ ); $update_source = "$1"; FATAL("HTTPUPDATE is set to '$update_source' in the $source_file file.") if ( !$update_source ); last; } } return $update_source; } sub wget_and_validate_file { my ( $rpm_file, $rpm_url_base, $rpm_downloads_dir ) = @_; my $rpm_file_path = download_file( "$rpm_url_base/$rpm_file", "$rpm_downloads_dir/$rpm_file" ); my $result = `/usr/bin/sha512sum $rpm_file_path 2>&1`; my ($sha) = $result =~ m/^([a-fA-F0-9]+)/; if ( $sha{$rpm_file} ne $sha ) { FATAL("Couldn't verify the expected sha ($sha{$rpm_file}) for $rpm_file. Got $sha"); } return; } # # Cpanel::SecureDownload is the preferred method as it will # attempt Cpanel::HTTP::Client, curl, then wget. And it will # attempt to use Mozilla::CA if available. # However, depending on the broken state if perl, it might # not work. In that case we can go back to directly invoking # wget via backticks as before. # sub attempt_secure_download_file { my ( $url, $dest_file ) = @_; # Add this so that Cpanel::SecureDownload will pick up the # latest version of Mozilla::CA if we have it installed local @INC = ( '/usr/local/cpanel', '/usr/local/cpanel/3rdparty/perl/532/lib/perl5/cpanel_lib', @INC ); my ( $success, $msg ); eval { require Cpanel::SecureDownload; my %options = ( 'output-file' => $dest_file, 'not-verbose' => 1, 'tries' => 20, 'retry-delay' => 1, 'timeout' => 60, 'dns-timeout' => 60, 'read-timeout' => 30, 'no-dns-cache' => 1, 'retry-connrefused' => 1, ); ( $success, $msg ) = Cpanel::SecureDownload::fetch_url( $url, %options ); }; if ( !$@ && $success && -e $dest_file && !-z $dest_file ) { return 1; } # Warn if an exception had been thrown, that means there was trouble loading # Cpanel::SecureDownload. However, we do not need to warn on errors returned # from fetch_url as it already warns when each method fails if ($@) { WARN "Could not invoke Cpanel::SecureDownload::fetch_url: $@"; } return; } sub download_file { my ( $url, $dest_file, $nofixup_url, $nonfatal ) = @_; $url = 'http://' . get_update_source() . $url unless $nofixup_url; DEBUG "Retrieving $url"; # Don't call attempt_secure_download_file on new installs, as Cpanel::SecureDownload will # not be present on the system at the point where fix-cpanel-perl is called. if ( !$ENV{'CPANEL_BASE_INSTALL'} && attempt_secure_download_file( $url, $dest_file ) ) { return $dest_file; } # If $wget_bin is not set, then wget is not installed and # We do not have a fallback for Cpanel::SecureDownload::fetch_url() if ( !defined $wget_bin ) { FATAL "Can't bootstrap cpanel-perl without a working file download method. Try: yum -y install wget"; } my $output = `$wget_bin $wget_args '$dest_file' $url 2>&1`; if ( !-e $dest_file || -z $dest_file ) { unlink $dest_file; if ($nonfatal) { return $output; } else { FATAL "The system could not fetch the $dest_file file: $output"; } } return $dest_file; } sub signature_validation_enabled { my $config = read_config(); return 1 unless defined $config->{$SIG_VALIDATION_CPCONF_KEY}; return 0 if $config->{$SIG_VALIDATION_CPCONF_KEY} eq '0' || lc( $config->{$SIG_VALIDATION_CPCONF_KEY} ) eq 'off'; return 1; } sub verify_file_signature { my ( $file, $sig, $url ) = @_; if ( !signature_validation_enabled() ) { INFO "Skipping signature validation [currently disabled in cpanel.config]"; return; } INFO "FILE - $file"; INFO "SIG - $sig"; INFO "URL - $url"; my @gpg_args = ( '--logger-fd', '1', '--status-fd', '1', '--homedir', gpg_homedir(), '--verify', $sig, $file, ); # Verify the validity of the GPG signature. # Information on these return values can be found in 'doc/DETAILS' in the GnuPG source. my ( %notes, $curnote ); my ( $gpg_out, $success, $status ); my $gpg_pid = IPC::Open3::open3( undef, $gpg_out, undef, $gpg_bin, @gpg_args ); while ( my $line = readline($gpg_out) ) { if ( $line =~ /^\[GNUPG:\] VALIDSIG ([A-F0-9]+) (\d+-\d+-\d+) (\d+) ([A-F0-9]+) ([A-F0-9]+) ([A-F0-9]+) ([A-F0-9]+) ([A-F0-9]+) ([A-F0-9]+) ([A-F0-9]+)$/ ) { $status = "Valid signature for $file"; $success = 1; } elsif ( $line =~ /^\[GNUPG:\] NOTATION_NAME (.+)$/ ) { $curnote = $1; $notes{$curnote} = ''; } elsif ( $line =~ /^\[GNUPG:\] NOTATION_DATA (.+)$/ ) { $notes{$curnote} .= $1; } elsif ( $line =~ /^\[GNUPG:\] BADSIG ([A-F0-9]+) (.+)$/ ) { $status = "Invalid signature for $file."; } elsif ( $line =~ /^\[GNUPG:\] NO_PUBKEY ([A-F0-9]+)$/ ) { $status = "Could not find public key in keychain."; } elsif ( $line =~ /^\[GNUPG:\] NODATA ([A-F0-9]+)$/ ) { $status = "Could not find a GnuPG signature in the signature file."; } } waitpid( $gpg_pid, 0 ); $status ||= "Unknown error from gpg."; $status .= " ($file)"; if ($success) { INFO $status; } else { FATAL $status; } # At this point, the signature should be valid. # We now need to check to see if the filename signature notation is correct. $url =~ s/\.bz2$//; if ( defined( $notes{'filename@gpg.notations.cpanel.net'} ) ) { my $file_note = $notes{'filename@gpg.notations.cpanel.net'}; if ( $file_note ne $url ) { FATAL "Filename notation ($file_note) does not match URL ($url)."; } } else { FATAL "Signature does not contain a filename notation."; } return; } sub fetch_and_install_gpg_keys { my $pub_keys = public_keys(); _create_gpg_homedir(); foreach my $key ( @{ keys_to_download() } ) { INFO("Downloading GPG public key, $pub_keys->{$key}"); my $target = secure_downloads() . $pub_keys->{$key}; my $dest = gpg_homedir() . "/" . $pub_keys->{$key}; my $wget_out = download_file( $target, $dest, 1, 1 ); if ( !-e $dest ) { WARN("Could not download GPG public key at $target : $wget_out"); return; } my $gpg_cmd = $gpg_bin . " -q --homedir " . gpg_homedir() . " --import " . $dest; `$gpg_cmd`; } return; } sub _create_gpg_homedir { mkdir( gpg_homedir(), 0700 ) if !-e gpg_homedir(); return; } sub invalid_system { my $message = shift || ''; chomp $message; ERROR "$message"; ERROR "The system detected an unsupported distribution. cPanel & WHM only supports CentOS 7 and 8, AlmaLinux 8, Red Hat Enterprise Linux® 6 and 7 and CloudLinux™ 6, 7, and 8."; FATAL "Please reinstall cPanel & WHM from a valid distribution."; return; # Fatal will die. } sub get_distro_release_rpm { # /etc/redhat-release or /etc/system-release must be present my ( $rhel_release, $amazon_release ) = ( '/etc/redhat-release', '/etc/system-release' ); my $distro_release; if ( -e $rhel_release ) { $distro_release = $rhel_release; } elsif ( -e $amazon_release ) { $distro_release = $amazon_release; } else { invalid_system("The system could not detect a valid release file for this distribution"); } chomp( my $release_rpm = `rpm -qf $distro_release` ); return $release_rpm; } sub _distro_name { my ( $distro, $full ) = @_; for my $names ( [ 'centos', 'CentOS', 'CentOS' ], [ 'redhat', 'Red Hat', 'Red Hat Enterprise Linux®' ], [ 'cloud', 'CloudLinux', 'CloudLinux™' ], [ 'amazon', 'Amazon Linux', 'Amazon Linux' ], [ 'almalinux', 'AlmaLinux', 'AlmaLinux' ], ) { return $names->[ $full ? 2 : 1 ] if $distro eq $names->[0]; } return $distro; } sub check_system_support { # Some of these variables are unused *as of now*. However! some of these values may be useful for 'filling in the blanks' when the RPM check we do fails to provide all required info. # For now, only the $system and $machine variables are used, $machine only when Amazon Linux is detected. See https://metacpan.org/pod/POSIX#uname for more info. my ( $system, $nodename, $release, $version, $machine ) = POSIX::uname(); if ( $system !~ m/linux/i ) { invalid_system("Could not detect version for operating system"); } my $release_rpm = get_distro_release_rpm(); $release_rpm or invalid_system("RPMs do not manage release file."); # an rpm we recognize must manage it. # We require a non capturing group while still supporting CloudLinux 5, otherwise this will fail to install as it does not include the arch. my ( $distro_type, $distro_version, $distro_arch ) = $release_rpm =~ m{^(\D+)-([\d\.]+).*?(?:\.([a-z0-9_]+))?$}ms; $distro_version = $distro_version + 0; $distro_version or invalid_system("The system found that the unexpected '$release_rpm' RPM manages the release file."); # This is required for CloudLinux 5 as they do not set an arch for their rpm. So we want to ignore it. $distro_arch ||= ''; # That RPM must have redhat or centos in the name. $distro_type =~ m/centos|redhat|enterprise-release|system-release|cloud|almalinux/i or invalid_system("The system found that the unexpected '$distro_type' RPM manages the release file."); $distro_type =~ s/-release//imsg; my $distro; if ( $distro_type eq 'enterprise' ) { $distro = 'redhat'; } elsif ( $distro_type eq 'system' ) { $distro = 'amazon'; $distro_arch = $machine if $distro_arch eq 'noarch'; # SEE CPANEL-8050 } else { $distro = $distro_type; } INFO _distro_name($distro) . " $distro_version (Linux) detected!"; # Handle redhat/centos versioning if ( $distro ne 'amazon' ) { $distro_version =~ s/\.\d+//; # Strip off the decimal on Cloud Linux 7 # The version number must be 6, 7 or 8. ( 6 <= $distro_version && $distro_version <= 8 ) or invalid_system( "cPanel, L.L.C. does not support " . _distro_name($distro) . " version $distro_version." ); # Supported distros for installer: redhat/red hat enterprise/cloud/centos/amazon $distro = ( $distro =~ m/redhat|hat enterprise/i ) ? 'redhat' : ( $distro =~ m/cloud/i ) ? 'cloud' : 'centos'; } else { $distro_version = '6'; # Amazon Linux needs to act like CentOS 6 for RPMs. } return ( $distro, $distro_version, $distro_arch ); } our $CACHE_CONFIG; sub read_config { my $file = $CPANEL_CONFIG_FILE; return $CACHE_CONFIG if $CACHE_CONFIG; my $config = {}; open( my $fh, "<", $file ) or return $config; while ( my $line = readline $fh ) { chomp $line; if ( $line =~ m/^\s*([^=]+?)\s*$/ ) { my $key = $1 or next; # Skip loading the key if it's undef or 0 $config->{$key} = undef; } elsif ( $line =~ m/^\s*([^=]+?)\s*=\s*(.*?)\s*$/ ) { my $key = $1 or next; # Skip loading the key if it's undef or 0 $config->{$key} = $2; } } $CACHE_CONFIG = $config; return $config; } sub keys_to_download { my $config = read_config(); my $keyrings = gpg_keyrings(); if ( !defined $config->{'signature_validation'} ) { my $mirror = get_update_source(); if ( $mirror =~ /^(?:.*\.dev|qa-build|next)\.cpanel\.net$/ ) { return $keyrings->{'development'}; } else { return $keyrings->{'release'}; } } elsif ( $config->{'signature_validation'} =~ /^Release and (?:Development|Test) Keyrings$/ ) { return $keyrings->{'development'}; } else { return $keyrings->{'release'}; } } # The installer may set $ENV{'CPANEL_BASE_INSTALL_GPG_KEYS_IMPORTED'} # to true in which case the keys will be in /var/cpanel/.gpgtmpdir sub gpg_homedir { return '/var/cpanel/.gpgtmpdir'; } sub public_keys { return { 'release' => 'cPanelPublicKey.asc', 'development' => 'cPanelDevelopmentKey.asc', }; } sub secure_downloads { return 'https://securedownloads.cpanel.net/'; } sub gpg_keyrings { return { 'release' => ['release'], 'development' => [ 'release', 'development' ], }; } 1;
Close