Released on April 15, 2024
opencli php-install_php_version
script that caused the missing php-fpm service in containers.opencli php-default_php_version
script that caused the new default php version not to be set for cli.opencli hostname-ssl
script failing to renew SSL.opencli nginx-modsec
script that allows admins to: update OWASP Core Ruleset, List ModSecurity rules and Logs, Enable/Disable Rules and view domain settings.localhost
and 127.0.0.1
/etc/cron.d/openpanel
dev_mode allows developers to view original responses from OpenAdmin and detailed error messages. When enabled, the following occurs:
To enable dev_mode:
opencli config update dev_mode on
To disable dev_mode:
opencli config update dev_mode on
and restart admin service.
As an additional security measure, BasicAuth can be enabled for OpenAdmin panel. Instruction
:::danger API access is automatically disabled when BasicAuth is enabled. :::
To enable basic authentication for OpenAdmin, run commands:
opencli config update basic_auth yes
opencli config update basic_auth_username STRONG_USERNAME_HERE
opencli config update basic_auth_password STRONG_PASSWORD_HERE
then reload the OpenAdmin service:
service admin reload
You can now receive email alerts from the Notifications center!
opencli config update email stefan@pejcic.rs
opencli config update email ''
opencli config get email
For sending emails, you can configure outgoing SMTP server:
[SMTP]
mail_server=
mail_port=465
mail_use_tls=False
mail_use_ssl=True
mail_username=
mail_password=
mail_default_sender=
mail_security_token=78bd237db2da
Each value can be set with the opencli config update
command.
You can now receive notifications when admin account is accessed from a new IP address.
opencli admin notifications update login no
opencli admin notifications update login yes
Docker images are now equipped with self-signed SSL certificates, enabling the establishment of secure connections from the Nginx proxy on the host server.
This eliminates the need to add custom code to wp-config.php to make WordPress work behind reverse proxy.
OpenAdmin > ModSecurity Settings pagenow provides a list of all ModSec rules (files), logs from the Nginx service and options to identify attack, block IP addresses, disable certain rules or files, etc.
New commands are also available:
opencli nginx-modsec --rules
displays rule files.opencli nginx-modsec --logs IP_HERE/RULE_ID
allows you to search the logs.opencli nginx-modsec --update
will update the ModSecurity OWASP Core Ruleset files.opencli nginx-modsec --domain
displays a summary about a domain modsec status.opencli nginx-modsec --enable FILE_NAME
enables a rule file globally.opencli nginx-modsec --disable FILE_NAME
disabled a rule file globally.Docker images can now be downloaded, updated and deleted from the OpenAdmin > Docker Settings page.
Command opencli docker-update_images
can also be used from the terminal or cronjobs: https://openpanel.co/docs/admin/scripts/docker/#update-images
Starting v0.1.6 you can set custom templates for both OpenPanel and OpenAdmin interfaces!
To create new templates copy the default templates folders:
For OpenPanel: cp /usr/local/panel/templates/ /home/custom_template/
For OpenAdmin: cp /usr/local/admin/templates/ /home/custom_admin_template/
and then make the changes over html/css file.
To change theme for OpenPanel, run command:
opencli config update template NAME_HERE
instead of NAME_HERE set either just the folder name in /usr/local/panel/
or a full path, example:
opencli config update template "/home/custom_template/"
To change theme for OpenAdmin, run command:
opencli config update admin_template NAME_HERE
instead of NAME_HERE set either just the folder name in /usr/local/admin/
or a full path, example:
opencli config update admin_template "/home/custom_admin_template/"
Users can now export the BIND9 DNS zone file from OpenPanel > Edit DNS Zone
Turkish language is now available for OpenPanel! 🎉
It will be included in the 0.1.6 version and shipped with OpenPanel core.
Thank you grafen for your personal contribution to OpenPanel. 🙏
To use tr
locale immediately, run command:
wget -O - https://gist.githubusercontent.com/stefanpejcic/701fe98ab873120378f7c7de9d75e030/raw/0d4db8338ce2ad17aec54dfc1d4982abdbb254dc/install_tr.sh | bash
and the new locale will be available to your users under Account Settings:
OpenPanel can now be updated directly form the OpenAdmin interface.
To update navigate to OpenAdmin > General Settings section and if new update is available, click on the update button to initiate.
OpenPanel now utilizes a custom cron file located at /etc/cron.d/openpanel
instead of relying on the root user's crontab. This allows the root user to add custom cronjobs without the risk of them being overwritten during OpenPanel updates.
# /etc/cron.d/openpanel: crontab entries for the OpenPanel
#
#
# This file is used by OpenPanel to schedule cronjobs
#
# It should NOT be edited manually as it is overwritten on update.
# To add crons please use the crontab as root user.
#
# Important Note! This cronjob will NOT be executed if you are
# running systemd as your init system. If you are running systemd,
# the cronjob.timer function takes precedence over this cronjob. For
# more details, see the systemd.timer manpage, or use systemctl show
# certbot.timer.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# SSL
0 */3 * * * root opencli ssl-hostname
0 */3 * * * root certbot renew --post-hook 'systemctl reload nginx'
# STATISTICS
0 * * * * root opencli docker-collect_stats
30 2 * * * root opencli domains-stats
# MAINTENANCE
* 2 * * * root opencli docker-usage_stats_cleanup
15 0 * * * root opencli update
0 0 12 * * root opencli server-ips
# BACKUPS
0 7 * * * root opencli backup-check
0 8 * * * root opencli backup-scheduler
# MONITORING
* * * * * root bash /usr/local/admin/service/notifications.sh
@reboot root bash /usr/local/admin/service/notifications.sh --startup
@reboot root opencli server-on_startup
Added checks to remove apt cache and temporary files after install process
When user modifies the default PHP version for CLI and new domains, the system logs this action in their activity log.