Skip to content

Nitpicked version of CyberPanel with new features focusing on Security, Stability and Reliability only.

License

Notifications You must be signed in to change notification settings

josephgodwinkimani/cyberpanel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CyberPanel

Codacy Badge

Web Hosting Control Panel that uses OpenLiteSpeed as the underlying Web Server.

Features & Services

  • Different User Access Levels (via ACLs).
  • Auto SSL.
  • FTP Server.
  • Light-weight DNS Server (PowerDNS).
  • phpMyAdmin to manage DBs (MariaDB).
  • Email Support (SnappyMail).
  • File Manager.
  • PHP Managment.
  • Firewall (FirewallD & ConfigServer Firewall Integration).
  • One-click Backups and Restores.

Supported PHP Versions

  • PHP 8.1
  • PHP 8.0
  • PHP 7.4
  • PHP 7.3
  • PHP 7.2

Installation Instructions

sh <(curl https://raw.githubusercontent.com/josephgodwinkimani/cyberpanel/main/install.sh || wget -O - https://raw.githubusercontent.com/josephgodwinkimani/cyberpanel/main/install.sh)

Upgrading CyberPanel

sh <(curl https://raw.githubusercontent.com/josephgodwinkimani/cyberpanel/main/preUpgrade.sh || wget -O - https://raw.githubusercontent.com/josephgodwinkimani/cyberpanel/main/preUpgrade.sh)

Add additional logs for CrowdSec

nano /etc/crowdsec/acquis.yaml

Add at the end:

...
#https://doc.crowdsec.net/docs/data_sources/file
source: file
filenames:
 - /home/cyberpanel/error-logs.txt
 - /usr/local/lsws/logs/error.log
 - /usr/local/lsws/logs/access.log #useless
 - /var/log/maillog
 - /var/log/messages
 - /var/log/mysql/error.log #https://community.cyberpanel.net/t/how-to-check-database-logs/37979/2
labels:
 type: syslog

You can also acquire logs from journalctl files e.g.

...
source: journalctl
journalctl_filter:
 - "_SYSTEMD_UNIT=ssh.service"
labels:
  type: journald

Enroll your CrowdSec instance on https://app.crowdsec.net/

$ sudo cscli console enroll 1234567890abcdef1234567890

Setup rclone backups

  1. Go to https://SERVER_URL/backup/backupDestinations add local path as /home/backup

  2. Go to https://SERVER_URL/backup/scheduleBackup and select destination as backup

  3. Add backup frequency (daily, weekly) and backup retention (0 = unlimited)

  4. A cronjob will run every day to copy these backups to remote backup

You can drop in a sql backup script, edit it and add it to /var/spool/cron/crontabs/root to run once everyday to backup all your databases to a remote location(s).

How this fork keeps up with main repo

  1. Changes are released on stable branch of main repo

  2. After 14 days if there no reported issues all changes from main repo are adopted for testing

  3. A proper update is released here for use

How to protect your CyberPanel server:

Resources