Linux 186-227-203-186.cprapid.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64
Apache
Server IP : 186.227.203.186 & Your IP : 216.73.216.196
Domains : 154 Domain
User : pmcaxingo
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Lock Shell
Lock File++
Readme
/
usr /
local /
cpanel /
scripts /
Delete
Unzip
Name
Size
Permission
Date
Action
cpan_sandbox
[ DIR ]
drwxr-xr-x
2024-11-04 17:30
php_sandbox
[ DIR ]
drwxr-xr-x
2024-11-04 17:30
MirrorSearch_pingtest
2.38
KB
-rwxr-xr-x
2024-11-04 17:30
activesync-invite-reply
1.69
KB
-rwxr-xr-x
2024-11-04 17:30
add_dns
2.36
KB
-rwxr-xr-x
2024-11-04 17:30
adddns
2.36
KB
-rwxr-xr-x
2024-11-04 17:30
addpop
6.08
KB
-rwxr-xr-x
2024-11-04 17:30
addsystemuser
3.27
KB
-rwxr-xr-x
2024-11-04 17:30
adduser
92
B
-rwxr-xr-x
2024-11-04 17:30
agent360.sh
16.03
KB
-rwx------
2026-04-13 20:58
apachelimits
4.31
KB
-rwxr-xr-x
2024-11-04 17:30
archive_sync_zones
3.05
KB
-rwxr-xr-x
2024-11-04 17:30
auto-adjust-mysql-limits
1.81
KB
-rwxr-xr-x
2024-11-04 17:30
autorepair
1.24
KB
-rwxr-xr-x
2024-11-04 17:30
backup_jobs_helper
10.88
KB
-rwxr-xr-x
2026-06-08 21:46
backups_clean_metadata_for_missing_backups
1.57
KB
-rwxr-xr-x
2024-11-04 17:30
backups_create_metadata
15.75
KB
-rwxr-xr-x
2024-11-04 17:30
backups_list_user_files
4.56
KB
-rwxr-xr-x
2024-11-04 17:30
balance_linked_node_quotas
2.58
KB
-rwxr-xr-x
2024-11-04 17:30
biglogcheck
1.69
KB
-rwxr-xr-x
2024-11-04 17:30
build_bandwidthdb_root_cache_in_background
1.52
KB
-rwxr-xr-x
2024-11-04 17:30
build_cpnat
3.41
KB
-rwxr-xr-x
2024-11-04 17:30
build_mail_sni
3.87
KB
-rwxr-xr-x
2024-11-04 17:30
build_maxemails_config
1.14
KB
-rwxr-xr-x
2024-11-04 17:30
builddovecotconf
9.64
KB
-rwxr-xr-x
2026-01-09 03:04
buildeximconf
7
KB
-rwxr-xr-x
2024-11-04 17:30
buildhttpdconf
2.6
KB
-rwxr-xr-x
2024-11-04 17:30
buildpureftproot
539
B
-rwxr-xr-x
2024-11-04 17:30
call_pkgacct
2.25
KB
-rwxr-xr-x
2026-06-08 21:46
ccs-check
4.91
KB
-rwxr-xr-x
2024-11-04 17:30
check_cpanel_pkgs
10.75
KB
-rwxr-xr-x
2024-11-04 17:30
check_domain_tls_service_domains.pl
6.68
KB
-rwxr-xr-x
2024-11-04 17:30
check_immutable_files
5.49
KB
-rwxr-xr-x
2024-11-04 17:30
check_mail_spamassassin_compiledregexps_body_0
187
B
-rwxr-xr-x
2024-11-04 17:30
check_maxmem_against_domains_count
3.57
KB
-rwxr-xr-x
2024-11-04 17:30
check_mount_procfs
2.02
KB
-rwxr-xr-x
2024-11-04 17:30
check_mysql
5.56
KB
-rwxr-xr-x
2024-12-06 03:04
check_plugin_pkgs
2.45
KB
-rwxr-xr-x
2024-11-04 17:30
check_security_advice_changes
8.28
KB
-rwxr-xr-x
2024-11-04 17:30
check_unmonitored_enabled_services
4.56
KB
-rwxr-xr-x
2024-11-04 17:30
check_unreliable_resolvers
3.59
KB
-rwxr-xr-x
2024-11-04 17:30
check_users_my_cnf
6.05
KB
-rwxr-xr-x
2024-11-04 17:30
check_valid_server_hostname
7.66
KB
-rwxr-xr-x
2024-11-04 17:30
checkalldomainsmxs
2.4
KB
-rwxr-xr-x
2024-11-04 17:30
checkbashshell
1.18
KB
-rwxr-xr-x
2024-11-04 17:30
checkccompiler
1.22
KB
-rwxr-xr-x
2024-11-04 17:30
checkexim.pl
3.1
KB
-rwxr-xr-x
2024-11-04 17:30
checklink
1.29
KB
-rwxr-xr-x
2024-11-04 17:30
checkusers
856
B
-rwxr-xr-x
2024-11-04 17:30
chkpaths
141
B
-rwxr-xr-x
2024-11-04 17:30
chpass
416
B
-rwxr-xr-x
2024-11-04 17:30
ckillall
1.11
KB
-rwxr-xr-x
2024-11-04 17:30
cl_pkg_verify_hook.py
2.38
KB
-rwxr-xr-x
2026-06-03 03:06
clean_dead_mailman_locks
2.09
KB
-rwxr-xr-x
2024-11-04 17:30
clean_up_temp_wheel_users
2.44
KB
-rwxr-xr-x
2024-11-04 17:30
clean_user_php_sessions
4.76
KB
-rwxr-xr-x
2024-11-04 17:30
cleandns
13.11
KB
-rwxr-xr-x
2024-11-04 17:30
cleandns8
417
B
-rwxr-xr-x
2024-11-04 17:30
cleanmsglog
735
B
-rwxr-xr-x
2024-11-04 17:30
cleanphpsessions
932
B
-rwxr-xr-x
2024-11-04 17:30
cleanphpsessions.php
658
B
-rw-r--r--
2024-11-04 17:30
cleanquotas
1.61
KB
-rwxr-xr-x
2024-11-04 17:30
cleansessions
5.89
KB
-rwxr-xr-x
2024-11-04 17:30
cleanupinterchange
2.64
KB
-rwxr-xr-x
2024-11-04 17:30
cleanupmysqlprivs
773
B
-rwxr-xr-x
2025-02-25 03:04
clear_orphaned_virtfs_mounts
3.56
KB
-rwxr-xr-x
2024-11-04 17:30
comet_license_registration_sync
1.67
KB
-rwxr-xr-x
2026-06-08 21:46
comet_protected_item_maintenance
20.78
KB
-rwxr-xr-x
2026-06-08 21:46
comparecdb
1.52
KB
-rwxr-xr-x
2024-11-04 17:30
compilers
2.86
KB
-rwxr-xr-x
2024-11-04 17:30
compilerscheck
999
B
-rwxr-xr-x
2024-11-04 17:30
configure_firewall_for_cpanel
520
B
-rwxr-xr-x
2024-11-04 17:30
configure_rh_firewall_for_cpanel
520
B
-rwxr-xr-x
2024-11-04 17:30
configure_rh_ipv6_firewall_for_cpanel
520
B
-rwxr-xr-x
2024-11-04 17:30
convert2dovecot
682
B
-rwxr-xr-x
2024-11-04 17:30
convert_accesshash_to_token
4.07
KB
-rwxr-xr-x
2024-11-04 17:30
convert_and_migrate_from_legacy_backup
1.97
KB
-rwxr-xr-x
2024-11-04 17:30
convert_maildir_to_mdbox
1.66
KB
-rwxr-xr-x
2024-11-04 17:30
convert_mdbox_to_maildir
1.66
KB
-rwxr-xr-x
2024-11-04 17:30
convert_roundcube_mysql2sqlite
26.12
KB
-rwxr-xr-x
2025-03-20 03:04
convert_to_dovecot_delivery
4.33
KB
-rwxr-xr-x
2024-11-04 17:30
convert_whmxfer_to_sqlite
1.46
KB
-rwxr-xr-x
2024-11-04 17:30
copy_user_mail_as_root
1.25
KB
-rwxr-xr-x
2024-11-04 17:30
copy_user_mail_as_user
1.34
KB
-rwxr-xr-x
2024-11-04 17:30
cpan_config
2.8
KB
-rwxr-xr-x
2024-11-04 17:30
cpanel_initial_install
67.95
KB
-rwxr-xr-x
2026-06-11 03:04
cpanelsync
28.31
KB
-rwxr-xr-x
2024-11-04 17:30
cpanelsync_postprocessor
1.62
KB
-rwxr-xr-x
2024-11-04 17:30
cpanpingtest
965
B
-rwxr-xr-x
2024-11-04 17:30
cpbackup
44.79
KB
-rwxr-xr-x
2024-11-04 17:30
cpbackup_transport_file
5.65
KB
-rwxr-xr-x
2024-11-04 17:30
cpdig
2.81
KB
-rwxr-xr-x
2026-04-16 03:04
cpfetch
1.23
KB
-rwxr-xr-x
2024-11-04 17:30
cphulkdblacklist
433
B
-rwxr-xr-x
2024-11-04 17:30
cphulkdwhitelist
1.3
KB
-rwxr-xr-x
2024-11-04 17:30
cpservice
2.87
KB
-rwxr-xr-x
2024-11-04 17:30
cpuser_port_authority
19.29
KB
-rwxr-xr-x
2024-11-04 17:30
cpuser_service_manager
10.85
KB
-rwxr-xr-x
2024-11-04 17:30
create_default_featurelist
11.62
KB
-rwx------
2026-05-08 00:47
createacct
30.32
MB
-rwx------
2026-06-11 03:04
custom_backup_destination.pl.sample
5.06
KB
-rwxr-xr-x
2024-11-04 17:30
custom_backup_destination.pl.skeleton
2.84
KB
-rwxr-xr-x
2024-11-04 17:30
dcpumon-wrapper
850
B
-rwxr-xr-x
2024-11-04 17:30
delpop
6.2
KB
-rwxr-xr-x
2024-11-04 17:30
detect_env_capabilities
508
B
-rwxr-xr-x
2024-11-04 17:30
disable_prelink
2.77
KB
-rwxr-xr-x
2024-11-04 17:30
disablefileprotect
2.19
KB
-rwxr-xr-x
2024-11-04 17:30
distro_changed_hook
1.16
KB
-rwxr-xr-x
2024-11-04 17:30
dnscluster
4.44
KB
-rwxr-xr-x
2024-11-04 17:30
dnsqueuecron
1.29
KB
-rwxr-xr-x
2024-11-04 17:30
dnssec-cluster-keys
3.75
KB
-rwxr-xr-x
2024-11-04 17:30
dovecot_maintenance
7.66
KB
-rwxr-xr-x
2025-01-22 03:04
dovecot_set_defaults.pl
984
B
-rwxr-xr-x
2024-11-04 17:30
dumpcdb
866
B
-rwxr-xr-x
2024-11-04 17:30
dumpinodes
687
B
-rwxr-xr-x
2024-11-04 17:30
dumpquotas
616
B
-rwxr-xr-x
2024-11-04 17:30
dumpstor
913
B
-rwxr-xr-x
2024-11-04 17:30
ea4_fresh_install
2.64
KB
-rwxr-xr-x
2024-11-04 17:30
edit_cpanelsync_exclude_list
2.58
KB
-rwxr-xr-x
2024-11-04 17:30
editquota
3.43
KB
-rwxr-xr-x
2024-11-04 17:30
email_archive_maintenance
6.15
KB
-rwxr-xr-x
2024-11-04 17:30
email_hold_maintenance
1.46
KB
-rwxr-xr-x
2024-11-04 17:30
enable_spf_dkim_globally
8.83
KB
-rwxr-xr-x
2024-11-04 17:30
enablefileprotect
2.1
KB
-rwxr-xr-x
2024-11-04 17:30
ensure_autoenabled_features
3.17
MB
-rwx------
2026-06-11 03:04
ensure_conf_dir_crt_key
4.82
KB
-rwxr-xr-x
2024-11-04 17:30
ensure_cpuser_file_ip
2.55
KB
-rwxr-xr-x
2024-11-04 17:30
ensure_crontab_permissions
1.08
KB
-rwxr-xr-x
2024-11-04 17:30
ensure_dovecot_memory_limits_meet_minimum
3.13
KB
-rwxr-xr-x
2024-11-04 17:30
ensure_hostname_resolves
2.51
KB
-rwxr-xr-x
2025-03-27 03:04
ensure_includes
601
B
-rwxr-xr-x
2024-11-04 17:30
ensure_vhost_includes
13.53
KB
-rwxr-xr-x
2024-11-04 17:30
exim_tidydb
2.96
KB
-rwxr-xr-x
2024-11-04 17:30
eximconfgen
1.32
KB
-rwxr-xr-x
2024-11-04 17:30
eximstats_spam_check
867
B
-rwxr-xr-x
2024-11-04 17:30
expunge_expired_certificates_from_sslstorage
3.56
KB
-rwxr-xr-x
2024-11-04 17:30
expunge_expired_pkgacct_sessions
852
B
-rwxr-xr-x
2024-11-04 17:30
expunge_expired_transfer_sessions
1.06
KB
-rwxr-xr-x
2024-11-04 17:30
fastmail
5.16
KB
-rwxr-xr-x
2024-11-04 17:30
featuremod
1.92
KB
-rwxr-xr-x
2024-11-04 17:30
fetchfile
422
B
-rwxr-xr-x
2024-11-04 17:30
find_and_fix_rpm_issues
6.99
KB
-rwxr-xr-x
2024-11-04 17:30
find_outdated_services
6.47
KB
-rwxr-xr-x
2026-04-24 03:04
find_pids_with_inotify_watch_on_path
3.66
KB
-rwxr-xr-x
2024-11-04 17:30
fix-cpanel-perl
28.43
KB
-rwxr-xr-x
2026-04-01 03:04
fix-listen-on-localhost
3.94
KB
-rwxr-xr-x
2026-06-03 03:04
fix-web-vhost-configuration
6.15
KB
-rwxr-xr-x
2024-11-04 17:30
fix_dns_zone_ttls
1.34
KB
-rwxr-xr-x
2024-11-04 17:30
fix_innodb_tables
4.05
KB
-rwxr-xr-x
2024-11-04 17:30
fix_reseller_acls
10.7
KB
-rwxr-xr-x
2025-06-03 03:04
fixetchosts
4.32
KB
-rwxr-xr-x
2024-11-04 17:30
fixheaders
572
B
-rwxr-xr-x
2024-11-04 17:30
fixmailinglistperms
1008
B
-rwxr-xr-x
2024-11-04 17:30
fixmailman
2.09
KB
-rwxr-xr-x
2024-11-04 17:30
fixnamedviews
1.22
KB
-rwxr-xr-x
2024-11-04 17:30
fixndc
413
B
-rwxr-xr-x
2024-11-04 17:30
fixquotas
18.39
KB
-rwxr-xr-x
2024-11-04 17:30
fixrelayd
1.74
KB
-rwxr-xr-x
2024-11-04 17:30
fixrndc
16.39
KB
-rwxr-xr-x
2024-11-04 17:30
fixtar
503
B
-rwxr-xr-x
2024-11-04 17:30
fixtlsversions
4.7
KB
-rwxr-xr-x
2024-11-04 17:30
fixvaliases
2
KB
-rwxr-xr-x
2024-11-04 17:30
fixwebalizer
966
B
-rwxr-xr-x
2024-11-04 17:30
forcelocaldomain
895
B
-rwxr-xr-x
2024-11-04 17:30
ftpfetch
2.2
KB
-rwxr-xr-x
2024-11-04 17:30
ftpquotacheck
8.31
KB
-rwxr-xr-x
2024-11-04 17:30
ftpsfetch
2.36
KB
-rwxr-xr-x
2024-11-04 17:30
ftpupdate
261
B
-rwxr-xr-x
2024-11-04 17:30
gather_update_log_stats
4.25
KB
-rwx------
2026-06-10 19:26
gather_update_logs_setupcrontab
5.45
KB
-rwx------
2026-06-10 19:26
gemwrapper
1.74
KB
-rwxr-xr-x
2024-11-04 17:30
gencrt
6.26
KB
-rwxr-xr-x
2024-11-04 17:30
generate_account_suspension_include
5.7
KB
-rwxr-xr-x
2024-11-04 17:30
generate_google_drive_credentials
1.11
KB
-rwxr-xr-x
2024-11-04 17:30
generate_google_drive_oauth_uri
984
B
-rwxr-xr-x
2024-11-04 17:30
generate_maildirsize
13.94
KB
-rwxr-xr-x
2024-11-04 17:30
gensysinfo
1.16
KB
-rwxr-xr-x
2024-11-04 17:30
get_locale_from_legacy_name_info
1.99
KB
-rwxr-xr-x
2024-11-04 17:30
getremotecpmove
12.67
KB
-rwxr-xr-x
2024-11-04 17:30
grpck
1.19
KB
-rwxr-xr-x
2024-11-04 17:30
hackcheck
3.02
KB
-rwxr-xr-x
2024-11-04 17:30
hook
1.45
KB
-rwxr-xr-x
2024-11-04 17:30
httpspamdetect
2.82
KB
-rwxr-xr-x
2026-04-16 03:04
hulk-unban-ip
4.09
MB
-rwx------
2026-06-11 03:04
import_exim_data
8.39
KB
-rwxr-xr-x
2024-11-04 17:30
increase_filesystem_limits
891
B
-rwxr-xr-x
2024-11-04 17:30
initacls
4.99
KB
-rwxr-xr-x
2024-11-04 17:30
initfpsuexec
444
B
-rwxr-xr-x
2024-11-04 17:30
initialize_360monitoring
2.76
KB
-rwx------
2026-06-09 19:13
initquotas
19.35
KB
-rwxr-xr-x
2026-02-04 03:04
initsuexec
4.03
KB
-rwxr-xr-x
2024-11-04 17:30
install_cpanel_analytics
1.93
KB
-rwxr-xr-x
2024-11-04 17:30
install_dovecot_fts
1.57
KB
-rwxr-xr-x
2024-11-04 17:30
install_plugin
2.8
KB
-rwxr-xr-x
2024-11-04 17:30
install_tuxcare_els_php
1.84
KB
-rwxr-xr-x
2025-12-18 03:04
installpkg
575
B
-rwxr-xr-x
2024-11-04 17:30
installpostgres
6.56
KB
-rwxr-xr-x
2025-11-06 03:05
installsqlite3
1.82
KB
-rwxr-xr-x
2024-11-04 17:30
ipcheck
3.93
KB
-rwxr-xr-x
2024-11-04 17:30
ipusage
7.45
KB
-rwxr-xr-x
2024-11-04 17:30
is_update_available
3.26
KB
-rwxr-xr-x
2026-05-20 03:04
isdedicatedip
602
B
-rwxr-xr-x
2024-11-04 17:30
jetbackup-check
3.69
KB
-rwxr-xr-x
2024-11-04 17:30
killdns
422
B
-rwxr-xr-x
2024-11-04 17:30
killdns-dnsadmin
1.15
KB
-rwxr-xr-x
2024-11-04 17:30
killmysqluserprivs
433
B
-rwxr-xr-x
2024-11-04 17:30
killmysqlwildcard
1.15
KB
-rwxr-xr-x
2024-11-04 17:30
killpvhost
853
B
-rwxr-xr-x
2024-11-04 17:30
killspamkeys
937
B
-rwxr-xr-x
2024-11-04 17:30
link_3rdparty_binaries
1.24
KB
-rwxr-xr-x
2024-11-04 17:30
linksubemailtomainacct
3.17
KB
-rwxr-xr-x
2024-11-04 17:30
listcheck
538
B
-rwxr-xr-x
2024-11-04 17:30
listsubdomains
1.05
KB
-rwxr-xr-x
2024-11-04 17:30
litespeed-check
3.86
KB
-rwxr-xr-x
2024-11-04 17:30
locale_export
5.21
KB
-rwxr-xr-x
2025-01-22 03:04
locale_import
4.35
KB
-rwxr-xr-x
2024-11-04 17:30
locale_info
3.99
KB
-rwxr-xr-x
2024-11-04 17:30
log_retention
21.28
KB
-rwxr-xr-x
2026-02-18 03:04
logo.dat
205
B
-rw-r--r--
2024-11-04 17:30
magicloader
1.94
KB
-rwxr-xr-x
2024-11-04 17:30
maildir_converter
6.08
KB
-rwxr-xr-x
2024-11-04 17:30
mailperm
16.53
KB
-rwxr-xr-x
2024-11-04 17:30
mailscannerupdate
2.42
KB
-rwxr-xr-x
2024-11-04 17:30
mainipcheck
10
KB
-rwxr-xr-x
2024-11-04 17:30
maintenance
52.61
KB
-rwxr-xr-x
2026-06-03 03:04
make_config
407
B
-rw-r--r--
2024-11-04 17:30
make_hostname_unowned
1.16
KB
-rwxr-xr-x
2024-11-04 17:30
manage_extra_marketing
12.76
KB
-rwx------
2026-05-08 00:47
manage_greylisting
16.33
KB
-rwxr-xr-x
2026-06-11 03:04
manage_mysql_profiles
16.33
KB
-rwxr-xr-x
2024-11-04 17:30
mass_change_php_setting
10.65
KB
-rwxr-xr-x
2026-04-16 03:04
migrate_ccs_to_cpdavd
47.06
KB
-rwxr-xr-x
2025-02-11 03:04
migrate_local_ini_to_php_ini
7.41
KB
-rwxr-xr-x
2024-11-04 17:30
migrate_whmtheme_file_to_userdata
2.95
KB
-rwxr-xr-x
2024-11-04 17:30
mkwwwacctconf
2.33
KB
-rwxr-xr-x
2024-11-04 17:30
modify_accounts
4.07
KB
-rwxr-xr-x
2025-01-22 03:04
modify_featurelist
11.33
KB
-rwx------
2026-05-08 00:47
modify_packages
3.64
KB
-rwxr-xr-x
2025-01-22 03:04
modsec_vendor
15.63
KB
-rwxr-xr-x
2024-11-04 17:30
mysqlconnectioncheck
6.72
KB
-rwxr-xr-x
2024-11-04 17:30
mysqlpasswd
4.14
KB
-rwxr-xr-x
2024-11-04 17:30
named.ca
1.57
KB
-rw-r--r--
2024-11-04 17:30
named.rfc1912.zones
774
B
-rw-r--r--
2024-11-04 17:30
notify_expiring_certificates
9.37
KB
-rwxr-xr-x
2024-11-04 17:30
notify_expiring_certificates_on_linked_nodes
1.33
KB
-rwxr-xr-x
2024-11-04 17:30
oopscheck
1.12
KB
-rwxr-xr-x
2024-11-04 17:30
optimize_eximstats
3.88
KB
-rwxr-xr-x
2024-11-04 17:30
panel_ini
4.11
KB
-rwxr-xr-x
2026-06-03 03:04
patch_mail_spamassassin_compiledregexps_body_0
2.39
KB
-rwxr-xr-x
2024-11-04 17:30
patchfdsetsize
2.72
KB
-rwxr-xr-x
2024-11-04 17:30
pedquota
2.26
KB
-rwxr-xr-x
2024-11-04 17:30
perform_sqlite_auto_rebuild_db_maintenance
1.98
KB
-rwxr-xr-x
2025-01-22 03:04
perlinstaller
528
B
-rwxr-xr-x
2024-11-04 17:30
perlmods
1.18
KB
-rwxr-xr-x
2024-11-04 17:30
php_fpm_config
9.73
KB
-rwxr-xr-x
2024-11-04 17:30
phpini_tidy
687
B
-rwxr-xr-x
2024-11-04 17:30
pkgacct
89.91
KB
-rwxr-xr-x
2026-04-16 03:04
post_snapshot
2.09
KB
-rwxr-xr-x
2024-11-04 17:30
post_sync_cleanup
5.83
KB
-rwxr-xr-x
2026-06-11 03:04
postupcp
193
B
-rwxr-xr-x
2026-06-16 03:10
primary_virtual_host_migration
2.44
KB
-rwxr-xr-x
2024-11-04 17:30
process_cpmove
4.32
KB
-rwxr-xr-x
2026-06-08 21:46
process_pending_cpanel_php_pear_registration
2.73
KB
-rwxr-xr-x
2025-06-03 03:04
proxydomains
9.59
KB
-rwxr-xr-x
2025-11-06 03:05
ptycheck
724
B
-rwxr-xr-x
2024-11-04 17:30
purge_modsec_log
1.53
KB
-rwxr-xr-x
2024-11-04 17:30
purge_old_config_caches
2.08
KB
-rwxr-xr-x
2024-11-04 17:30
pwck
708
B
-rwxr-xr-x
2024-11-04 17:30
quickdnslookup
1.13
KB
-rwxr-xr-x
2024-11-04 17:30
quickwhoisips
2.29
KB
-rwxr-xr-x
2024-11-04 17:30
quota_auto_fix
1.41
KB
-rwxr-xr-x
2024-11-04 17:30
quotacheck
22.36
KB
-rwxr-xr-x
2024-11-04 17:30
rawchpass
460
B
-rwxr-xr-x
2024-11-04 17:30
rdate
4.8
KB
-rwxr-xr-x
2024-11-04 17:30
realadduser
5.61
KB
-rwxr-xr-x
2024-11-04 17:30
realchpass
3.26
KB
-rwxr-xr-x
2024-11-04 17:30
realperlinstaller
5.67
KB
-rwxr-xr-x
2024-11-04 17:30
realrawchpass
425
B
-rwxr-xr-x
2024-11-04 17:30
rebuild_bandwidthdb_root_cache
1.45
KB
-rwxr-xr-x
2024-11-04 17:30
rebuild_dbmap
5.8
KB
-rwxr-xr-x
2024-11-04 17:30
rebuild_provider_openid_connect_links_db
1.01
KB
-rwxr-xr-x
2024-11-04 17:30
rebuild_whm_chrome
2.22
KB
-rwxr-xr-x
2024-11-04 17:30
rebuilddnsconfig
25.5
KB
-rwxr-xr-x
2025-05-08 03:04
rebuildhttpdconf
2.6
KB
-rwxr-xr-x
2024-11-04 17:30
rebuildinstalledssldb
2.85
KB
-rwxr-xr-x
2024-11-04 17:30
rebuildippool
509
B
-rwxr-xr-x
2024-11-04 17:30
rebuilduserssldb
948
B
-rwxr-xr-x
2024-11-04 17:30
refresh-dkim-validity-cache
5.97
KB
-rwxr-xr-x
2024-11-04 17:30
regenerate_tokens
2.18
KB
-rwxr-xr-x
2024-11-04 17:30
remote_log_transfer
11.6
KB
-rwxr-xr-x
2024-11-04 17:30
remove_dovecot_index_files
5.89
KB
-rwxr-xr-x
2024-11-04 17:30
removeacct
28.2
MB
-rwx------
2026-06-11 03:04
rescan_user_dovecot_fts
2.98
KB
-rwxr-xr-x
2024-11-04 17:30
reset_mail_quotas_to_sane_values
6.82
KB
-rwxr-xr-x
2024-11-04 17:30
resetmailmanurls
2.03
KB
-rwxr-xr-x
2024-11-04 17:30
resetquotas
4.61
KB
-rwxr-xr-x
2024-11-04 17:30
restartsrv
3.19
KB
-rwxr-xr-x
2024-11-04 17:30
restartsrv_apache
422
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_apache_php_fpm
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_base
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_bind
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_chkservd
427
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_clamd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_cpanel_php_fpm
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_cpanellogd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_cpdavd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_cpgreylistd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_cphulkd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_cpipv6
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_cpsrvd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_crond
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_dnsadmin
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_dovecot
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_exim
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_eximstats
504
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_ftpd
426
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_ftpserver
911
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_httpd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_imap
437
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_inetd
2.47
KB
-rwxr-xr-x
2024-11-04 17:30
restartsrv_ipaliases
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_lmtp
437
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_mailman
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_mysql
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_named
579
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_nscd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_p0f
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_pdns
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_pop3
437
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_postgres
427
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_postgresql
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_powerdns
442
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_proftpd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_pureftpd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_queueprocd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_rsyslog
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_rsyslogd
437
B
-rwxr-xr-x
2024-11-04 17:30
restartsrv_spamd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_sshd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_syslogd
2.4
KB
-rwxr-xr-x
2024-11-04 17:30
restartsrv_tailwatchd
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_unknown
10.85
MB
-rwxr-xr-x
2026-06-11 03:04
restartsrv_xinetd
422
B
-rwxr-xr-x
2024-11-04 17:30
restorecpuserfromcache
1.96
KB
-rwxr-xr-x
2024-11-04 17:30
restorepkg
48.67
MB
-rwx------
2026-06-12 03:04
rfc1912_zones.tar
10
KB
-rw-r--r--
2024-11-04 17:30
rpmup
5.07
KB
-rwxr-xr-x
2024-11-04 17:30
rsync-user-homedir.pl
5.76
KB
-rwxr-xr-x
2024-11-04 17:30
run_if_exists
512
B
-rwxr-xr-x
2024-11-04 17:30
run_plugin_lifecycle
3.82
KB
-rwx------
2026-05-08 00:47
runstatsonce
440
B
-rwxr-xr-x
2024-11-04 17:30
runweblogs
1.02
KB
-rwxr-xr-x
2024-11-04 17:30
sa-update_wrapper
3.34
KB
-rwxr-xr-x
2024-11-04 17:30
safetybits.pl
844
B
-rwxr-xr-x
2024-11-04 17:30
secureit
4.72
KB
-rwxr-xr-x
2024-11-04 17:30
securemysql
4.4
KB
-rwxr-xr-x
2024-11-04 17:30
securerailsapps
3.58
KB
-rwxr-xr-x
2024-11-04 17:30
securetmp
16.76
KB
-rwxr-xr-x
2025-07-16 03:04
selectorunparkhook.py
1.7
KB
-rwxr-xr-x
2026-06-03 03:06
sendicq
474
B
-rwxr-xr-x
2024-11-04 17:30
servicedomains
9.59
KB
-rwxr-xr-x
2025-11-06 03:05
set_mailman_archive_perms
1.75
KB
-rwxr-xr-x
2024-11-04 17:30
setpostgresconfig
6.04
KB
-rwxr-xr-x
2024-11-04 17:30
setup_greylist_db
16.33
KB
-rwxr-xr-x
2026-06-11 03:04
setup_modsec_db
1.3
KB
-rwxr-xr-x
2024-11-04 17:30
setup_systemd_timer_for_plugins
3.92
KB
-rwx------
2026-05-08 00:47
setupftpserver
10.47
KB
-rwxr-xr-x
2024-11-04 17:30
setupmailserver
9.39
KB
-rwxr-xr-x
2025-05-08 03:04
setupnameserver
12.6
KB
-rwxr-xr-x
2025-11-06 03:05
show_php_settings
3.67
KB
-rwxr-xr-x
2026-04-16 03:04
shrink_modsec_ip_database
12.97
KB
-rwxr-xr-x
2024-11-04 17:30
simpleps
3.05
KB
-rwxr-xr-x
2024-11-04 17:30
slurp_exim_mainlog
5.78
KB
-rwxr-xr-x
2024-11-04 17:30
smartcheck
15.13
KB
-rwxr-xr-x
2025-06-03 03:04
smtpmailgidonly
8.15
KB
-rwxr-xr-x
2024-11-04 17:30
snapshot_prep
5.88
KB
-rwxr-xr-x
2024-11-04 17:30
spamassassin_dbm_cleaner
5.85
KB
-rwxr-xr-x
2024-11-04 17:30
spamassassindisable
3.74
KB
-rwxr-xr-x
2024-11-04 17:30
spamboxdisable
2.27
KB
-rwxr-xr-x
2024-11-04 17:30
sshcontrol
14.38
KB
-rwxr-xr-x
2024-11-04 17:30
ssl_crt_status
3.84
KB
-rwxr-xr-x
2024-11-04 17:30
suspendacct
18.08
KB
-rwxr-xr-x
2025-11-06 03:05
suspendmysqlusers
4.78
KB
-rwxr-xr-x
2024-11-04 17:30
swapip
3.82
KB
-rwxr-xr-x
2024-11-04 17:30
sync-mysql-users-from-grants
1.2
KB
-rwxr-xr-x
2024-11-04 17:30
sync_child_accounts
1.77
KB
-rwxr-xr-x
2024-11-04 17:30
sync_contact_emails_to_cpanel_users_files
1.14
KB
-rwxr-xr-x
2024-11-04 17:30
synctransfers
1.92
KB
-rwxr-xr-x
2024-11-04 17:30
syslog_check
1.36
KB
-rwxr-xr-x
2024-11-04 17:30
sysup
645
B
-rwxr-xr-x
2024-11-04 17:30
test_sa_compiled
1.07
KB
-rwxr-xr-x
2024-11-04 17:30
transfer_account_as_user
2.34
KB
-rwxr-xr-x
2024-11-04 17:30
transfer_accounts_as_root
4.76
KB
-rwxr-xr-x
2024-11-04 17:30
transfer_in_progress
3.08
KB
-rwxr-xr-x
2024-11-04 17:30
transfer_in_progress.pod
312
B
-rw-r--r--
2024-11-04 17:30
transfermysqlusers
10.13
MB
-rwx------
2026-06-11 03:04
try-later
7.95
KB
-rwxr-xr-x
2024-11-04 17:30
unblockip
667
B
-rwxr-xr-x
2024-11-04 17:30
uninstall_cpanel_analytics
1.2
KB
-rwxr-xr-x
2024-11-04 17:30
uninstall_dovecot_fts
562
B
-rwxr-xr-x
2024-11-04 17:30
uninstall_plugin
2.84
KB
-rwxr-xr-x
2024-11-04 17:30
unlink_service_account
2.62
KB
-rwxr-xr-x
2024-11-04 17:30
unpkgacct
4.6
KB
-rwxr-xr-x
2024-11-04 17:30
unslavenamedconf
863
B
-rwxr-xr-x
2024-11-04 17:30
unsuspendacct
17.96
KB
-rwxr-xr-x
2025-11-06 03:05
unsuspendmysqlusers
7.1
KB
-rwxr-xr-x
2024-11-04 17:30
upcp
33.9
KB
-rwxr-xr-x
2026-01-21 03:04
upcp-running
2.7
KB
-rwxr-xr-x
2024-11-04 17:30
upcp.static
745.21
KB
-rwxr-xr-x
2026-06-11 03:04
update-packages
5.07
KB
-rwxr-xr-x
2024-11-04 17:30
update_apachectl
480
B
-rwxr-xr-x
2024-11-04 17:30
update_db_cache
430
B
-rwxr-xr-x
2024-11-04 17:30
update_dkim_keys
1.45
KB
-rwxr-xr-x
2024-11-04 17:30
update_exim_rejects
1.21
KB
-rwxr-xr-x
2024-11-04 17:30
update_existing_mail_quotas_for_account
4.78
KB
-rwxr-xr-x
2024-11-04 17:30
update_feature_flags
957
B
-rwxr-xr-x
2024-11-04 17:30
update_freebusy_data
5.25
KB
-rwxr-xr-x
2025-05-08 03:04
update_known_proxy_ips
1002
B
-rwxr-xr-x
2024-11-04 17:30
update_local_rpm_versions
4.56
KB
-rwxr-xr-x
2024-11-04 17:30
update_mailman_cache
8.34
KB
-rwxr-xr-x
2024-11-04 17:30
update_mysql_systemd_config
1.07
KB
-rwxr-xr-x
2025-05-08 03:04
update_neighbor_netblocks
487
B
-rwxr-xr-x
2024-11-04 17:30
update_sa_config
2.14
KB
-rwxr-xr-x
2024-11-04 17:30
update_spamassassin_config
10.73
KB
-rwxr-xr-x
2024-11-04 17:30
update_users_jail
691
B
-rwxr-xr-x
2024-11-04 17:30
update_users_vhosts
801
B
-rwxr-xr-x
2024-11-04 17:30
updatedomainips
605
B
-rwxr-xr-x
2024-11-04 17:30
updatenameserverips
1.66
KB
-rwxr-xr-x
2024-11-04 17:30
updatenow
5.18
KB
-rwxr-xr-x
2024-11-04 17:30
updatenow.static
2.01
MB
-rwxr-xr-x
2026-06-13 03:04
updatesigningkey
1.95
KB
-rwxr-xr-x
2024-11-04 17:30
updatessldomains
1.81
KB
-rwxr-xr-x
2024-11-04 17:30
updatesupportauthorizations
2.49
KB
-rwxr-xr-x
2024-11-04 17:30
updateuserdatacache
2.47
KB
-rwxr-xr-x
2024-11-04 17:30
updateuserdomains
774
B
-rwxr-xr-x
2024-11-04 17:30
upgrade_bandwidth_dbs
2.22
KB
-rwxr-xr-x
2024-11-04 17:30
upgrade_subaccount_databases
2.73
KB
-rwxr-xr-x
2024-11-04 17:30
userdata_wildcard_cleanup
5.74
KB
-rwxr-xr-x
2024-11-04 17:30
userdirctl
5.01
KB
-rwxr-xr-x
2024-11-04 17:30
validate_sshkey_passphrase
1.21
KB
-rwxr-xr-x
2024-11-04 17:30
verify_api_spec_files
757
B
-rwxr-xr-x
2024-11-04 17:30
verify_pidfile
1.96
KB
-rwxr-xr-x
2024-11-04 17:30
verify_vhost_includes
7.34
KB
-rwxr-xr-x
2024-11-04 17:30
vps_optimizer
7.82
KB
-rwxr-xr-x
2024-11-04 17:30
vzzo-fixer
725
B
-rwxr-xr-x
2024-11-04 17:30
whmlogin
2.33
KB
-rwxr-xr-x
2024-11-04 17:30
whoowns
1.13
KB
-rwxr-xr-x
2024-11-04 17:30
wwwacct
30.32
MB
-rwx------
2026-06-11 03:04
wwwacct2
88
B
-rwxr-xr-x
2024-11-04 17:30
xfer_rcube_schema_migrate.pl
2.4
KB
-rwxr-xr-x
2024-11-04 17:30
xfer_rcube_uid_resolver.pl
1.8
KB
-rwxr-xr-x
2024-11-04 17:30
xferpoint
3.13
KB
-rwxr-xr-x
2024-11-04 17:30
xfertool
16.23
KB
-rwxr-xr-x
2024-11-04 17:30
zoneexists
800
B
-rwxr-xr-x
2024-11-04 17:30
Save
Rename
#!/usr/local/cpanel/3rdparty/bin/perl # cpanel - scripts/xfertool Copyright 2022 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 package scripts::xfertool; use cPstrict; =encoding utf-8 =head1 USAGE xfertool ( --help | <COMMAND> <USERNAME> [ARGS..] ) =head1 DESCRIPTION This script is part of an automated process that WHM uses for account transfers. We B<do> B<not> recommend calling this script manually. Possible COMMAND values are: =over =item * C<allowlogins> and C<disallowlogins> Control the user’s ability to log in. =item * C<blockdynamiccontent> and C<unblockdynamiccontent> Control httpd’s handling of files with certain well-known extensions that correlate with dynamic web content. For example, after C<blockdynamiccontent>, C<.php> files will no longer function normally. =item * C<setupmaildest> Sets the user’s mail routing. Takes an additional argument that can be C<primary>, C<secondary>, or C<remote>. Example: xfertool setupmaildest howard primary =item * C<swapip> Replaces one IP address for another in the user’s DNS zones. Takes the source & target IP addresses as additional arguments. Example: xfertool swapip howard 1.2.3.4 2.3.4.5 =item * C<changenameservers> Sets the user’s nameservers, given as additional arguments. Example: xfertool changenameservers howard ns1.myhost.com ns2.myhost.com (As many nameservers can be given as needed.) =back =cut #---------------------------------------------------------------------- use parent 'Cpanel::HelpfulScript'; use Cpanel::DnsUtils::Fetch (); use Cpanel::Hostname (); use Cpanel::Encoder::URI (); use Cpanel::DnsUtils::Stream (); use Cpanel::DnsUtils::AskDnsAdmin (); use Cpanel::ZoneFile (); use Cpanel::OS (); use Cpanel::PwCache (); use Cpanel::Config (); use Cpanel::Config::CpUserGuard (); use Cpanel::ConfigFiles (); use Cpanel::AccessIds::ReducedPrivileges (); use Cpanel::Config::WebVhosts (); use Cpanel::Config::userdata::Load (); use Cpanel::AcctUtils::Domain (); use Cpanel::AcctUtils::Owner (); use Cpanel::AcctUtils::DomainOwner::Tiny (); use Cpanel::MailTools::DBS (); use Cpanel::Config::HasCpUserFile (); use Cpanel::Team::Config (); use Cpanel::Team::Constants (); use Whostmgr::Transfers::Session::Constants (); use constant { _ENOENT => 2, _ACCEPT_UNNAMED => 1, }; use constant _OPTIONS => (); #---------------------------------------------------------------------- __PACKAGE__->new(@ARGV)->script() if !caller; sub script ($self) { my @args = $self->getopt_unnamed(); my $opt = shift(@args) or die $self->help('Need a COMMAND.'); my $user = shift(@args) or die $self->help('Need a USERNAME.'); my @DOMAINS; if ( !Cpanel::PwCache::getpwnam($user) ) { # check if user looks like a valid domain if ( $user !~ /.\../ ) { print "Supplied user '$user' is not found.\n"; exit 1; } @DOMAINS = ($user); # can return 'root' if no other owner found $user = Cpanel::AcctUtils::DomainOwner::Tiny::getdomainowner( $DOMAINS[0] ); if ( $user eq 'root' ) { print "Domain '$DOMAINS[0]' cannot be transferred.\n"; exit; } } elsif ( Cpanel::Config::HasCpUserFile::has_cpuser_file($user) ) { my $cpu_ref = Cpanel::Config::loadcpuserfile($user); @DOMAINS = ( $cpu_ref->{'DOMAIN'} ); if ( ref $cpu_ref->{'DOMAINS'} ) { push @DOMAINS, @{ $cpu_ref->{'DOMAINS'} }; } } else { print "Supplied user '$user' is not found.\n"; exit 1; } if ( $user eq 'root' ) { print "Cannot use 'root' user.\n"; exit(1); } if ( $opt =~ /(dis)?allowlogins/i ) { my $dis = $1; if ( !$user ) { print "Usage: $0 --(dis)?allowlogins user\n"; exit(1); } if ($dis) { _disallow_logins($user); } else { _allow_logins($user); } } elsif ( $opt =~ /(un)?blockdynamiccontent/i ) { my $un = $1; shift @args; # $dest if ( !scalar @DOMAINS ) { print "Usage: $0 --(un)?blockdynamiccontent domain/user\n"; exit(1); } _block_dynamic_content( $user, \@DOMAINS, ( $un ? 1 : 0 ) ); } elsif ( $opt =~ /setupmaildest/i ) { my $dest = shift(@args); if ( !scalar @DOMAINS ) { print "Usage: $0 --setupmaildest domain/user primary/secondary/remote\n"; exit(1); } _setmaildest( \@DOMAINS, $dest ); } elsif ( $opt =~ /swapip/i ) { my $sourceip = shift(@args); my $targetip = shift(@args); if ( !scalar @DOMAINS || !$sourceip || !$targetip ) { print "Usage: $0 --swapip domain/user sourceip destip\n"; exit(1); } _changezones( 'SWAPIP', \@DOMAINS, $sourceip, $targetip ); } elsif ( $opt =~ /changenameservers/i ) { if ( !scalar @DOMAINS ) { print "Usage: $0 --changenameservers domain/user NS1 NS2 NS3 ...\n"; exit(1); } my @NSLIST = @args; _changezones( 'NAMESERVERS', \@DOMAINS, \@NSLIST ); } else { die $self->help("Unrecognized COMMAND ($opt) given."); } return; } sub _changezones { my $op = shift; my $domainref = shift; my %ZONES = %{ Cpanel::DnsUtils::Fetch::fetch_zones( 'zones' => $domainref ) }; if ( $op eq 'SWAPIP' ) { my $sourceip = shift; my $destip = shift; foreach my $zone ( keys %ZONES ) { my $zf = Cpanel::ZoneFile->new( text => $ZONES{$zone}, domain => $zone ); if ( $zf->{'status'} ) { } if ( !$sourceip || $sourceip == -1 ) { my @main_a_records = $zf->find_records( 'type' => 'A', 'name' => $zone . '.' ); $sourceip = $main_a_records[0]->{'address'}; } my @arecords = $zf->find_records( 'type' => 'A' ); if ( !$sourceip ) { $sourceip = $arecords[0]->{'address'}; } for ( my $i = 0; $i <= $#arecords; $i++ ) { if ( $arecords[$i]->{'address'} eq $sourceip ) { $arecords[$i]->{'address'} = $destip; } } $zf->replace_records( \@arecords ); my $zref = $zf->serialize(); $ZONES{$zone} = $zref; } } elsif ( $op eq 'NAMESERVERS' ) { my $nsref = shift; foreach my $zone ( keys %ZONES ) { my $zf = Cpanel::ZoneFile->new( text => $ZONES{$zone}, domain => $zone ); if ( $zf->{'status'} ) { } my @soarecords = $zf->find_records( 'name' => $zone . '.', 'type' => 'SOA' ); $soarecords[0]->{'mname'} = $nsref->[0]; $zf->replace_records( \@soarecords ); my @nsrecords = $zf->find_records( 'name' => $zone . '.', 'type' => 'NS' ); my $first_record = $zf->get_first_record( \@nsrecords ); my $first_record_line = $first_record->{'Line'}; my $first_record_ttl = $first_record->{'ttl'}; $zf->remove_records( \@nsrecords ); foreach my $nameserver ( @{$nsref} ) { $zf->insert_record_after_line( { 'ttl' => $first_record_ttl, 'name' => $zone . '.', 'class' => 'IN', 'type' => 'NS', 'nsdname' => $nameserver }, $first_record_line - 1 ); } my $zref = $zf->serialize(); $ZONES{$zone} = $zref; } } my $zdata; my @RELOADLIST; foreach my $zone ( keys %ZONES ) { if ( !$ZONES{$zone} ) { next(); } my $zonedata = join( "\n", @{ $ZONES{$zone} } ); $zonedata =~ s/\n{4}/\n/g; if ( $zonedata eq '' ) { next(); } #we should just edit the soa? $zonedata = Cpanel::DnsUtils::Stream::upsrnumstream($zonedata); #increase serial number push @RELOADLIST, $zone; $zdata .= 'cpdnszone-' . Cpanel::Encoder::URI::uri_encode_str($zone) . '=' . Cpanel::Encoder::URI::uri_encode_str($zonedata) . '&'; } Cpanel::DnsUtils::AskDnsAdmin::askdnsadmin( 'SYNCZONES', 0, '', '', '', $zdata ); Cpanel::DnsUtils::AskDnsAdmin::askdnsadmin( 'RELOADZONES', 0, join( ',', @RELOADLIST ) ); return; } sub _setmaildest { my $domainref = shift; my $dest = shift; if ( !$dest || ( $dest ne 'primary' && $dest ne 'secondary' ) ) { $dest = 'remote'; } my @setup; foreach my $domain ( @{$domainref} ) { print "Setting mail handling for $domain to : $dest\n"; # NB: This duplicates logic in # Whostmgr::Transfers::Systems::MailRouting; it would be nice to # normalize it. # if ( $dest eq 'primary' ) { push @setup, [ $domain, 'localdomains' => 1, 'remotedomains' => 0, 'secondarymx' => 0, 'update_proxy_subdomains' => 1 ]; } elsif ( $dest eq 'secondary' ) { push @setup, [ $domain, 'localdomains' => 0, 'remotedomains' => 1, 'secondarymx' => 1, 'update_proxy_subdomains' => 1 ]; } else { push @setup, [ $domain, 'localdomains' => 0, 'remotedomains' => 1, 'secondarymx' => 0, 'update_proxy_subdomains' => 1 ]; } } Cpanel::MailTools::DBS::setup_mail_routing_for_domains( \@setup ); return; } sub _block_dynamic_content { my $user = shift; my $domainref = shift; my $unblock = shift; my @DYNAMIC_EXTS = qw(dynamiccontent pl plx perl cgi php php4 php5 php6 php3 shtml); my $host; my $owner = Cpanel::AcctUtils::Owner::getowner($user); $owner =~ s/\n//g; if ( $owner eq '' || $owner eq 'root' || $user eq $owner ) { $host = Cpanel::Hostname::gethostname(); } else { $host = Cpanel::AcctUtils::Domain::getdomain($owner); } if ( !$host ) { $host = Cpanel::Hostname::gethostname(); } my $dynamic_regex = '\.(' . join( '|', @DYNAMIC_EXTS ) . ')$'; my $privs = Cpanel::AccessIds::ReducedPrivileges->new($user); my $wvh = Cpanel::Config::WebVhosts->load($user); my %seen_vhost; for my $domain (@$domainref) { my $vhost_name = $wvh->get_vhost_name_for_domain($domain) or do { warn "“$user” has no web vhost for domain “$domain”!\n"; next; }; next if $seen_vhost{$vhost_name}; my $vh_conf = Cpanel::Config::userdata::Load::load_userdata_domain( $user, $vhost_name ); if ( !$vh_conf || !%$vh_conf ) { warn "“$user”’s web vhost “$vhost_name” has no configuration!\n"; next; } my $docroot = $vh_conf->{'documentroot'} or do { warn "Configuration for “$user”’s web vhost “$vhost_name” has no document root!\n"; next; }; my $htaccess = "$docroot/.htaccess"; if ($unblock) { next if !-e $htaccess; if ( open my $htaccess_fh, '+<', $htaccess ) { my @HT = <$htaccess_fh>; @HT = grep( !/^\s*redirectmatch\s+[\.\\\(]*dynamiccontent/i, @HT ); # Clear final empty line. Previously there was # a bug in this logic that would leave an extra line in the # file after every block/unblock cycle. pop @HT if @HT && ( $HT[-1] eq "\n" ); seek( $htaccess_fh, 0, 0 ); print {$htaccess_fh} join( '', @HT ); truncate( $htaccess_fh, tell($htaccess_fh) ); close $htaccess_fh; } elsif ( $! != _ENOENT() ) { warn "Failed to update htaccess @ $docroot file: $!"; } } else { if ( open my $htaccess_fh, '>>', $htaccess ) { print {$htaccess_fh} "\nRedirectMatch $dynamic_regex http://$host/cgi-sys/movingpage.cgi\n"; close $htaccess_fh; } else { warn "Failed to update htaccess @ $docroot file: $!"; } } $seen_vhost{$vhost_name} = 1; } return; } sub _allow_logins { my $user = shift; $user =~ s/\\//g; unlink("/var/cpanel/suspended/${user}"); _generate_account_suspension_include(); if ( -e '/usr/sbin/pw' ) { system( '/usr/sbin/pw', 'unlock', $user ); } else { system( 'passwd', '-u', $user ); } # restore user's cron if previously suspended my $user_crontab_dir = Cpanel::OS::user_crontab_dir(); my $suspended_cron = "${user_crontab_dir}.suspended/$user"; if ( -e $suspended_cron ) { link( $suspended_cron, "$user_crontab_dir/${user}" ) && unlink $suspended_cron; } my $cpuser_guard = Cpanel::Config::CpUserGuard->new($user); delete $cpuser_guard->{'data'}->{'SUSPENDED'}; $cpuser_guard->save(); return; } sub _disallow_logins { my $user = shift; $user =~ s/\///g; # very similar to the code in scripts/suspendacct, # but cannot be used as webserver & co still need to be available if ( !-d '/var/cpanel/suspended' ) { my $original_umask = umask(022); my $mail_gid = ( getgrnam('mail') )[2] // 13; mkdir( '/var/cpanel/suspended', 0710 ); umask($original_umask); chown( 0, $mail_gid, '/var/cpanel/suspended' ); } require Cpanel::FileUtils::Write; Cpanel::FileUtils::Write::overwrite( "/var/cpanel/suspended/${user}", $Whostmgr::Transfers::Session::Constants::USER_TRANSFERRED_MESSAGE, 0640 ); _generate_account_suspension_include(); if ( -e '/usr/sbin/pw' ) { system( '/usr/sbin/pw', 'lock', $user ); } else { system( 'passwd', '-l', $user ); } # temporarily suspend crontab _suspend_cron_for($user); _suspend_ftp_for($user); # suspend the team user on source server once transferred. _suspend_team_for($user); my $cpuser_guard = Cpanel::Config::CpUserGuard->new($user); $cpuser_guard->{'data'}->{'SUSPENDTIME'} = time(); $cpuser_guard->{'data'}->{'SUSPENDED'} = 1; $cpuser_guard->save(); return; } sub _generate_account_suspension_include { require "/usr/local/cpanel/scripts/generate_account_suspension_include"; ## no critic qw(Modules::RequireBarewordIncludes) -- refactoring this is too large generate_account_suspension_include::update_include_and_restart_httpd(); return 1; } sub _suspend_cron_for { my ($user) = @_; return unless $user; my $user_crontab_dir = Cpanel::OS::user_crontab_dir(); my $cron = "$user_crontab_dir/$user"; return unless -e $cron; # create cron.suspended dir if missing my $suspended_dir = "${user_crontab_dir}.suspended"; mkdir( $suspended_dir, 0700 ) unless -e $suspended_dir; # set the cron as suspended link( $cron, "${suspended_dir}/${user}" ) && unlink($cron); return; } sub _suspend_ftp_for { my $user = shift || return; my $ftpdir = $Cpanel::ConfigFiles::FTP_PASSWD_DIR; # this same directory is used for both proftpd and pure-ftpd return if !-d $ftpdir; my $ftpfile = $ftpdir . '/' . $user; rename $ftpfile, $ftpfile . '.' . 'suspended'; system '/usr/local/cpanel/bin/ftpupdate', $user; return; } sub _suspend_team_for { my $user = shift || return; return if !-e "$Cpanel::Team::Constants::TEAM_CONFIG_DIR/$user"; require Cpanel::Exception; eval { my $team_obj = Cpanel::Team::Config->new($user); $team_obj->suspend_team(); }; if ($@) { my $error_as_string = Cpanel::Exception::get_string($@); print "Unable to suspend team user due to an exception: $error_as_string\n"; } return; }