Commit Graph

5508 Commits

Author SHA1 Message Date
master3395
e14b100bff Add AngularJS filesize filter to fix createUser page error 2026-01-19 18:20:21 +01:00
master3395
bd750fb872 Fix dashboard data binding - use ng-bind instead of template syntax and add ng-cloak 2026-01-19 18:16:56 +01:00
master3395
7e23579142 Fix dashboard data loading - add error handling and force AngularJS updates 2026-01-19 18:15:40 +01:00
master3395
42ef510119 Add icon support for View Details button in .htaccess notification 2026-01-19 18:10:21 +01:00
master3395
c5d54344c6 Force icon display with !important and add info icon to Learn More button 2026-01-19 18:07:33 +01:00
master3395
f6216d9d3f Fix Learn More button text visibility and ensure .htaccess icon displays 2026-01-19 18:06:19 +01:00
master3395
4e274578ac Make Learn More button text prominent and fix notification links 2026-01-19 18:03:39 +01:00
master3395
f5bf81318e Add Learn More button to all notifications and improve button styling 2026-01-19 18:00:44 +01:00
master3395
565a677a5f Fix notification center text overflow - ensure all text stays inside container 2026-01-19 17:42:17 +01:00
master3395
16608ffc3b Improve notification center design - wider, better spacing, button-style links 2026-01-19 17:40:28 +01:00
master3395
97068705a2 Add notification center button and fix stat-card/activity board loading 2026-01-19 17:37:47 +01:00
master3395
0b2187e3f9 Implement 24-hour dismissal for notifications (backup, ai-scanner, htaccess) 2026-01-19 17:32:29 +01:00
master3395
fb1addaf4b Remove discordWebhooks from base config - plugin installer handles it dynamically 2026-01-19 17:30:25 +01:00
master3395
618c858b77 Restore discordWebhooks plugin configuration - plugin installer handles installation 2026-01-19 17:29:06 +01:00
master3395
69029777a8 Fix static file serving: Allow /static/ paths in secMiddleware and add static file URL pattern 2026-01-19 17:26:58 +01:00
Master3395
fade7c8ec7 Move guides to docs
Move guides to docs
2026-01-10 03:43:36 +01:00
Master3395
c7625c318f Merge pull request #1650 from master3395/v2.5.5-dev
V2.5.5 dev ModSecurity binary fix
2026-01-10 03:27:32 +01:00
master3395
35a6fb6792 Fix ModSecurity LMDB dependency crash (Issue #1626)
- Always download compatible ModSecurity binary after installation
- Removes conditional check for custom_ols_marker
- Fixes undefined symbol: mdb_env_create error
- Prevents OpenLiteSpeed crashes with SIGSEGV signal 11
- Compatible with Ubuntu 24.04, RHEL 8/9, Debian 11/12

The fix ensures that compatible ModSecurity binaries (built without
LMDB dependency or with LMDB statically linked) are always used,
preventing the runtime symbol lookup errors that cause crashes.

Related: https://github.com/usmannasir/cyberpanel/issues/1626
2026-01-10 03:22:45 +01:00
master3395
ea5be31de5 Fix issue #1643: Fix downloadFile function to properly parse query parameters
- Changed from incorrect URI splitting to proper request.GET.get() method
- Added proper URL decoding with unquote()
- Fixed both downloadFile and RootDownloadFile functions
- Added path normalization for additional security
- Added file existence validation
- Improved error messages to match reported error format

This fixes the 'Unauthorized access: Not a valid file' error when downloading files from the file manager.
2026-01-07 23:47:23 +01:00
Master3395
b1627aff0f Merge pull request #1645 from master3395/v2.5.5-dev
Refactor: replace url() with path() for Django routes in plugin Insta…
2026-01-06 19:25:21 +01:00
master3395
641f2befca Refactor: replace url() with path() for Django routes in plugin Installer
- Updated pluginHolder/urls.py to use path() instead of url()
- Added new API routes for plugin installation, uninstallation, enable, and disable
- Compatible with Django 4.x (url() was removed in Django 4.0)

Ref: PR 1644
2026-01-06 19:23:04 +01:00
Master3395
646866f302 Merge pull request #1642 from master3395/v2.5.5-dev
Security: Update Python packages to fix critical vulnerabilities
2026-01-04 22:25:03 +01:00
master3395
764913a842 Security: Update Python packages to fix critical vulnerabilities
Fixed 5 critical security vulnerabilities in Python dependencies:

1. Tornado (6.4.1 -> >=6.4.2)
   - CVE-2024-52804: DoS via HTTP cookie parser
   - CVE-2025-47287: DoS via multipart/form-data parser

2. Requests (2.32.3 -> >=2.32.4)
   - CVE-2024-47081: URL parsing may leak .netrc credentials

3. Cryptography (43.0.0 -> >=43.0.1)
   - CVE-2024-12797: Vulnerable statically linked OpenSSL
   - PVE-2024-73711: Another OpenSSL vulnerability

4. PyJWT (unpinned -> >=2.10.1)
   - Multiple vulnerabilities in unpinned versions

5. psutil (unpinned -> >=7.2.0)
   - Security issues in older versions

Changes:
- Updated requirments.txt with secure minimum versions
- Added requirements-secure.txt for documentation

All packages updated to secure versions that address these CVEs.
2026-01-04 22:22:48 +01:00
Master3395
b91f1869aa Merge pull request #1641 from master3395/v2.5.5-dev
Fix: Enable website creation for regular users
2026-01-04 22:06:27 +01:00
master3395
091eb95e3a Fix: Enable website creation for regular users
- Fixed bug where regular users (UserACL) cannot create websites
- Changed UserACL createWebsite permission from 0 to 1
- Also enabled modifyWebsite and deleteWebsite for consistency
- Resolves issue where non-admin/reseller users were blocked from creating websites

Related changes:
- UserACL: createWebsite: 0 -> 1
- UserACL: modifyWebsite: 0 -> 1
- UserACL: deleteWebsite: 0 -> 1
- suspendWebsite remains 0 (admin-only feature)

This allows regular users to create, modify, and delete their own websites
while maintaining proper ownership checks and security controls.
2026-01-04 22:03:27 +01:00
Master3395
5d47436fb3 Merge pull request #1640 from master3395/v2.5.5-dev
V2.5.5 dev plugin installation and management
2026-01-04 21:33:07 +01:00
master3395
43dc004287 Add PLUGINS.md reference to INDEX.md
- Added Plugin System Guide to Plugins & Extensions section
- Added plugin system to Feature-Specific Guides section
- Author: master3395
2026-01-04 21:29:24 +01:00
master3395
8dd71a35f4 Add comprehensive plugin system documentation (PLUGINS.md)
- Complete guide for plugin installation and management
- Plugin development guide with code examples
- Plugin structure and requirements documentation
- TestPlugin reference guide
- Best practices and troubleshooting sections
- Author: master3395
2026-01-04 21:26:19 +01:00
master3395
7a8a9a9715 Merge branch 'v2.5.5-dev' of https://github.com/master3395/cyberpanel into v2.5.5-dev 2026-01-04 21:13:35 +01:00
master3395
c6ba63e537 Add plugin system enhancements and testPlugin
- Enhanced plugin installer to properly extract and install plugins
- Added security middleware exception for plugin webhook endpoints
- Improved plugin listing with better error handling
- Added testPlugin as example plugin for CyberPanel plugin system
- Updated INSTALLED_APPS and URL routing for plugins

Author: master3395
2026-01-04 21:04:51 +01:00
Master3395
6e36378917 Merge pull request #1639 from master3395/v2.5.5-dev
- Fixed CloudFlare proxy toggle button to display as oblong with a round dot
- Enable CloudFlare proxy by default for all domains/subdomains except mail domains
- Automatically add AAAA (IPv6) DNS records when creating domains/subdomains
- Added GetServerIPv6() function to retrieve server IPv6 address
- Updated DNS template styling and Angular.js binding for toggle buttons
2026-01-04 04:17:02 +01:00
master3395
da576c62db DNS improvements: CloudFlare proxy toggle styling, auto AAAA records, proxy defaults
- Fixed CloudFlare proxy toggle button to display as oblong with round dot
- Enable CloudFlare proxy by default for all domains/subdomains except mail domains
- Automatically add AAAA (IPv6) DNS records when creating domains/subdomains
- Added GetServerIPv6() function to retrieve server IPv6 address
- Updated DNS template styling and Angular.js binding for toggle buttons
2026-01-04 04:15:46 +01:00
Master3395
d94322dccb Merge pull request #1638 from master3395/v2.5.5-dev
V2.5.5 dev
2026-01-04 03:59:51 +01:00
master3395
d2a649251d Fix session status logic: Add IDLE state for logged-in users without processes, improve process detection with TTY filtering, enhance status messages with clearer explanations 2026-01-04 03:57:53 +01:00
master3395
acfb372f9c Enhance SSH Activity Management: Add active/inactive session indicators, improve IP extraction (IPv4/IPv6), optimize user activity loading, fix modal display issues 2026-01-04 03:44:29 +01:00
Master3395
da649631d6 Merge pull request #1637 from master3395/v2.5.5-dev
Fix CloudFlare DNS Management: Filter main domains only, auto-delete DNS records on domain removal, improve table display
2026-01-04 02:15:42 +01:00
master3395
f248ef23c4 Fix CloudFlare DNS Management: Filter main domains only, auto-delete DNS records on domain removal, improve table display
- Filter domain dropdown to show only main domains (exclude sub-domains)
- Add automatic CloudFlare DNS record deletion when domains/sub-domains are removed
- Improve DNS Records table display to match SSH Logins/Logs table styling
- Add loading states and proper table structure with ng-if conditions
- Update CSS to match activity-table styling with sticky headers
2026-01-04 02:13:46 +01:00
Master3395
73c19445a2 Merge pull request #1634 from master3395/v2.5.5-dev
Updated index.html to reference local copies of qrious.min.js and chart.umd.min.js. Added functionality in install.py and upgrade.py to download these libraries before running collectstatic. Updated website.html to ensure compatibility with the new local scripts.
2026-01-01 05:30:21 +01:00
Master3395
737c9b99c4 Download CDN libraries locally to eliminate tracking prevention warnings. Updated index.html to reference local copies of qrious.min.js and chart.umd.min.js. Added functionality in install.py and upgrade.py to download these libraries before running collectstatic. Updated website.html to ensure compatibility with the new local scripts. 2026-01-01 05:29:46 +01:00
Master3395
fadacdcb31 Merge pull request #1633 from master3395/v2.5.5-dev
Refactor configuration modification methods for improved safety

https://github.com/usmannasir/cyberpanel/issues/1609
2025-12-31 23:15:09 +01:00
Master3395
c0586099f3 Refactor configuration modification methods for improved safety and validation
- Introduced a `safeModifyHttpdConfig` method in `installUtilities` to handle modifications to the OpenLiteSpeed configuration file with backup, validation, and rollback capabilities.
- Updated various modules (`modSec.py`, `sslUtilities.py`, `tuning.py`, `vhost.py`, etc.) to utilize the new safe modification method, enhancing reliability and preventing configuration corruption.
- Improved error handling and logging throughout the configuration modification processes to ensure better traceability and debugging.
2025-12-31 23:13:53 +01:00
Master3395
821e65f82e Merge pull request #1632 from master3395/v2.5.5-dev
Update rsync exclude patterns in backupUtilities.py

https://github.com/usmannasir/cyberpanel/issues/1615
2025-12-31 22:56:17 +01:00
Master3395
0865b60c10 Update rsync exclude patterns in backupUtilities.py to use leading slashes for top-level directory exclusions. This change improves backup accuracy by ensuring only the intended directories are excluded during the backup process. 2025-12-31 22:55:09 +01:00
Master3395
e36a51a06c Merge pull request #1631 from master3395/v2.5.5-dev
V2.5.5 dev

https://github.com/usmannasir/cyberpanel/issues/1612
2025-12-31 22:46:00 +01:00
Master3395
8c068e2e9d Merge branch 'usmannasir:v2.5.5-dev' into v2.5.5-dev 2025-12-31 22:45:34 +01:00
Master3395
158098b9ee Enhance venvsetup.sh to conditionally create timezone.ini file
- Added logic to check for the successful installation of the timezonedb extension before creating the corresponding .ini file.
- Implemented a check to verify the existence of timezonedb.so in the PHP extension directory, improving the robustness of the installation process.

These changes ensure that the timezone configuration is only applied when the extension is available, enhancing the reliability of the setup script.
2025-12-31 22:44:58 +01:00
Master3395
5cd9d51e38 Merge pull request #1630 from master3395/v2.5.5-dev
Add support for PHP versions 8.2 to 8.5 in installation process
2025-12-31 22:36:17 +01:00
Master3395
62b72b4e06 Add support for PHP versions 8.2 to 8.5 in installation process
- Implemented logic to save new PHP versions (8.2, 8.3, 8.4, 8.5) and their corresponding extensions from XML configuration files.
- Enhanced compatibility with CentOS and Ubuntu distributions by dynamically determining the correct XML file paths for each PHP version.
- Improved error handling during the installation of PHP extensions to ensure robustness.

These changes enhance the PHP management capabilities within CyberPanel, allowing users to utilize the latest PHP versions seamlessly.
2025-12-31 22:35:18 +01:00
Master3395
cfcef26fd2 Merge pull request #1629 from master3395/v2.5.5-dev
Randomize acme.sh cron schedule in installation and upgrade scripts
2025-12-31 22:28:14 +01:00
Master3395
882a970104 Randomize acme.sh cron schedule in installation and upgrade scripts to prevent traffic spikes to Let's Encrypt. Added logic to generate random hour and minute for cron job entries, enhancing the installation process. 2025-12-31 22:26:50 +01:00