Recent Posts

Pages: 1 2 [3] 4 5 ... 10
21
Other / Re: Goodbye CWP — I’m done for good
« Last post by cyberspace on February 23, 2026, 10:49:12 PM »
My time costs money, and I'm afraid I don't have free time to prove anything.
Anyway, CWP meets my requirements and customization options. If any problems with CWP arise, I’m able to solve them on my own. My CWP servers work with newest php versions and are connected to a custom DNS cluster with live DNS zone updates. It requires technical skills but CWP allows to do it.

If you’ve made the decision to leave CWP, then you’re just wasting your time by posting here. Sad but true.
22
Other / Re: Goodbye CWP — I’m done for good
« Last post by djprmf on February 23, 2026, 12:28:05 PM »
I like this:

The usual reply: “Go buy a paid panel then.” Cool. That’s exactly what I did because when clients are paying me, I need reliability and support, not forum drama.

It sound like:

Users pay me to get reliability and support but I don't pay. However I  require reliability and support )

or... I missed something.

Just because you don't pay for something, that doesn't mean that you shouldn't get a good product.
You should, at least, expect for some level of quality... And that is not what you get with CWP.

You get radio silence. Nothing changes, no new features... When something doesn't evolve, if gets behind.
Can you provide one thing where CWP have evolved? Can you show it?

There is MANY control panels in the market, both free and paid. and those who grow are the ones that evolve.
CWP is in the oposite end, is going downhill. That IS the issue.
23
Other / Re: Goodbye CWP — I’m done for good
« Last post by cyberspace on February 23, 2026, 09:28:45 AM »
I like this:

The usual reply: “Go buy a paid panel then.” Cool. That’s exactly what I did because when clients are paying me, I need reliability and support, not forum drama.

It sound like:

Users pay me to get reliability and support but I don't pay. However I  require reliability and support )

or... I missed something.
24
CentOS 9 Problems / Re: mysql update
« Last post by cyberspace on February 23, 2026, 09:08:16 AM »
If you followed all instructions and there were no errors during the upgrade then MySQL should be updared. Where do you see MySQL  10.5 ?

Can you connect to the server over SSH, run one by one:

Code: [Select]
# rpm -qa | egrep -i '(mysql|mariadb)'
# mysql
select version();
and show output ?
25
CentOS 9 Problems / Re: mysql update
« Last post by zeejdeej on February 23, 2026, 06:56:44 AM »
i followed the same steps mentioned on :

https://starburst.help/control-web-panel-cwp/control-web-panel-cwp-admin-tutorials/upgrade-mariadb-10-x-to-10-11-with-cwp-on-almalinux-9/

but mysql version is still showing 10.5 instead of 10.11 ? what could be possibly wrong ?
26
Other / Re: Goodbye CWP — I’m done for good
« Last post by djprmf on February 23, 2026, 06:21:15 AM »
I don't understand the point of these "suicide note" posts. Fine, make a choice, do it.

Because haters are gonna hate.
You look at the post history, and that's all they have posted since post 1.

Bashing CWP in one way or another, and all saying it's a 'dead project'.

The irony on how the OP predict what is gonna happen...
The issue is always the others...
27
Other / Re: Goodbye CWP — I’m done for good
« Last post by Martins-phpbb on February 22, 2026, 11:16:28 PM »
   :)
28
Other / Re: Goodbye CWP — I’m done for good
« Last post by Starburst on February 22, 2026, 06:36:26 PM »
I don't understand the point of these "suicide note" posts. Fine, make a choice, do it.

Because haters are gonna hate.
You look at the post history, and that's all they have posted since post 1.

Bashing CWP in one way or another, and all saying it's a 'dead project'.
29
Updates / Re: Roundcube vulnerability
« Last post by cyberspace on February 22, 2026, 03:10:42 PM »
Update to the script listed here:
http://forum.centos-webpanel.com/updates/roundcube-vulnerability/msg53064/#msg53064

Changelog:
Added the option to enable/disable email notifications
Code: [Select]
ENABLE_NOTIFICATIONS=true    # true/false to enable/disable notificationsThanks @overseer for the idea

Code: [Select]
#!/usr/bin/env bash

####################################################################################
#                                                                                  #
#  The MIT License (MIT)                                                           #
#                                                                                  #
#  Copyright (c) 2026 BeinHost.com                                                 #
#                                                                                  #
#  Permission is hereby granted, free of charge, to any person obtaining a copy    #
#  of this software and associated documentation files (the "Software"), to deal   #
#  in the Software without restriction, including without limitation the rights    #
#  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell       #
#  copies of the Software, and to permit persons to whom the Software is           #
#  furnished to do so, subject to the following conditions:                        #
#                                                                                  #
#  The above copyright notice and this permission notice shall be included in all  #
#  copies or substantial portions of the Software.                                 #
#                                                                                  #
#  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR      #
#  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,        #
#  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE     #
#  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER          #
#  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,   #
#  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE   #
#  SOFTWARE.                                                                       #
#                                                                                  #
####################################################################################

########################################
# CONFIG
########################################

BASE_DIR="/usr/local/cwpsrv/var/services"
INSTALL_DIR="$BASE_DIR/roundcube"
PAGE_URL="https://roundcube.net/download/"
OWNER="cwpsvc:cwpsvc"
EMAIL="address@domain.com" # set your email address here
ENABLE_NOTIFICATIONS=true    # true/false to enable/disable notifications
SUBJECT_PREFIX="[Roundcube Updater]"

cd "$BASE_DIR"

########################################
# Send notofication
########################################

send_email() {
    if [ "$ENABLE_NOTIFICATIONS" = true ]; then
        local subject="$1"
        local body="$2"

        # use mail command
        echo -e "$body" | mail -s "$SUBJECT_PREFIX $subject" "$EMAIL"
    fi
}

########################################
# Detect installed version
########################################

INI_FILE="$INSTALL_DIR/program/include/iniset.php"

if [[ ! -f "$INI_FILE" ]]; then
    echo "Cannot detect installed version (iniset.php missing)."
    exit 2
fi

installed_version=$(grep -oE "RCMAIL_VERSION',[[:space:]]*'[^']+'" \
    "$INI_FILE" | sed -E "s/.*'([^']+)'.*/\1/")
installed_version=$(echo "$installed_version" | tr -d '\r\n[:space:]')

echo "Installed version: $installed_version"

########################################
# Detect latest LTS version + checksum
########################################

lts_block=$(curl -fsSL "$PAGE_URL" \
  | awk '/<h2 id="lts">/,/<\/table>/')

download_url=$(echo "$lts_block" \
  | grep -oE 'https://[^"]+-complete\.tar\.gz' \
  | head -n1)

latest_version=$(echo "$download_url" \
  | sed -E 's/.*roundcubemail-([0-9]+\.[0-9]+\.[0-9]+)-complete\.tar\.gz/\1/')
latest_version=$(echo "$latest_version" | tr -d '\r\n[:space:]')

sha256_expected=$(echo "$lts_block" \
  | grep -oE '[a-f0-9]{64}' \
  | head -n1)

if [[ -z "$download_url" || -z "$latest_version" || -z "$sha256_expected" ]]; then
    echo "Failed to detect latest LTS release."
    send_email "Update failed" "Server: `hostname`\nFailed to detect latest LTS release.\nTime: $(date)"
    exit 3
fi

########################################
# Compare versions
########################################

version_gt() {
    [ "$1" = "$2" ] && return 1

    local IFS=.
    local i ver1=($1) ver2=($2)

    for ((i=${#ver1[@]}; i<${#ver2[@]}; i++)); do ver1[i]=0; done
    for ((i=${#ver2[@]}; i<${#ver1[@]}; i++)); do ver2[i]=0; done

    for ((i=0; i<${#ver1[@]}; i++)); do
        if ((10#${ver1[i]} > 10#${ver2[i]})); then return 0; fi
        if ((10#${ver1[i]} < 10#${ver2[i]})); then return 1; fi
    done

    return 1
}

#echo "Installed: [$installed_version]"
#echo "Latest:    [$latest_version]"

if version_gt "$latest_version" "$installed_version"; then
    echo "Update available."
    send_email "Update successful" "Server: `hostname`\nStatus: Roundcube updated successfully!\nPrevious version: $installed_version\nNew version: $latest_version\nBackup directory: $backup_dir\nTime: $(date)"

elif version_gt "$installed_version" "$latest_version"; then
    echo "Installed version is newer than LTS."
    send_email "Installed version newer than LTS" "Server: `hostname`\nStatus: Installed Roundcube version ($installed_version) is newer than latest LTS ($latest_version).\nNo update performed.\nTime: $(date)"
else
    echo "Latest LTS version:" "$latest_version"
    echo "Already up to date."
    send_email "No update needed" "Server: `hostname`\nStatus: Roundcube is already up to date.\nInstalled version: $installed_version\nLatest LTS: $latest_version\nTime: $(date)"
    exit 0
fi

########################################
# Backup current installation
########################################

backup_dir="roundcube_backup_v${installed_version}_$(date +%F_%H%M%S)"

echo "Creating backup: $backup_dir"
cp -a roundcube "$backup_dir"

########################################
# Download release
########################################

filename=$(basename "$download_url")

echo "Downloading $filename"
curl -fL -o "$filename" "$download_url"

########################################
# Verify SHA256
########################################

echo "Verifying checksum..."
sha256_actual=$(sha256sum "$filename" | awk '{print $1}')

if [[ "$sha256_actual" != "$sha256_expected" ]]; then
    echo "Checksum verification FAILED!"
    rm -f "$filename"
    send_email "Server: `hostname`\nUpdate FAILED" "Status: Roundcube update failed!\nInstalled version: $installed_version\nLatest version: $latest_version\nBackup: $backup_dir\nReason: SHA256 mismatch or extraction failure\nTime: $(date)"
    exit 4
fi

echo "Checksum OK."

########################################
# Extract + Install
########################################

echo "Extracting..."
tar -xzf "$filename"

src_dir="roundcubemail-$latest_version"

if [[ ! -d "$src_dir" ]]; then
    echo "Extraction failed. Directory $src_dir not found."
    exit 5
fi

echo "Running install script..."
yes | "$src_dir/bin/installto.sh" "$INSTALL_DIR"

########################################
# Fix permissions
########################################

chown -R "$OWNER" roundcube

########################################
# Cleanup
########################################

rm -rf "$src_dir" "$filename"

echo "Update completed successfully!"
echo "Now running version: $latest_version"

send_email "Update successful.\nStatus: Roundcube updated: $installed_version -> $latest_version\nBackup: $backup_dir"
30
Other / Re: Goodbye CWP — I’m done for good
« Last post by overseer on February 22, 2026, 01:25:19 PM »
I don't understand the point of these "suicide note" posts. Fine, make a choice, do it.
Pages: 1 2 [3] 4 5 ... 10