ISPConfig kamikaze installation on Rocky Linux 9.4

Discussion in 'Installation/Configuration' started by Stanislav Panayotov, Aug 7, 2024.

  1. Stanislav Panayotov

    Stanislav Panayotov New Member

    I'm using this tutorial "The Perfect Server CentOS 8 with Apache, PHP, Postfix, Dovecot, Pure-FTPD, BIND and ISPConfig 3.2" to point 5 with no problems. After that I install Remi repository for PHP and some other repositories:
    dnf repolist
    repo id repo name
    appstream Rocky Linux 9 - AppStream
    baseos Rocky Linux 9 - BaseOS
    epel Extra Packages for Enterprise Linux 9 - x86_64
    epel-cisco-openh264 Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64
    extras Rocky Linux 9 - Extras
    okay Extra OKay Packages for Enterprise Linux - x86_64
    prel-release-noarch Percona Release release/noarch YUM repository
    ps-80-release-x86_64 Percona Server for MySQL 8.0 release/x86_64 YUM repository
    remi-modular Remi's Modular repository for Enterprise Linux 9 - x86_64
    remi-safe Safe Remi's RPM repository for Enterprise Linux 9 - x86_64
    telemetry-release-x86_64 Percona Telemetry release/x86_64 YUM repository
    tools-release-x86_64 Percona Tools release/x86_64 YUM repository

    Installation of Percona MySQL is simple. After that I php 8.2 as primary php version from Remi. After that I use this commands:
    dnf install perl-sigtrap php83 php84 php83-php-gd php84-php-gd php83-php-mysqlnd php84-php-mysqlnd php83-php-process php84-php-process php83-php-fpm php84-php-fpm mod_fcgid certbot mod_python phpMyAdmin httpd httpd-core httpd-filesystem httpd-tools

    sudo systemctl enable php83-php-fpm
    sudo systemctl enable php84-php-fpm
    sudo systemctl start php83-php-fpm
    sudo systemctl start php84-php-fpm

    echo "RequestHeader unset Proxy early" >> /etc/httpd/conf/httpd.conf

    I install ISPConfig without SSL, DNS, MAIL - simple webserver and it works! Login on it. Creating user - all is simple ok, but Address and Limits tabs of user edit give me SQL errors. I found this little problem in two files:
    /usr/local/ispconfig/interface/web/dashboard/dashlets/limits.php on line 240 and /usr/local/ispconfig/interface/lib/classes/functions.inc.php on line 687.
    Maybe groups is some new command in new PHP. To fix this I change row to:
    $group = $app->db->queryOneRecord("SELECT GROUP_CONCAT(groupid) AS groups1 FROM `sys_group` WHERE client_id IN (SELECT client_id FROM `client` WHERE client_id=? OR parent_client_id=?)", $client_id, $client_id);
    Do you see the different? From groups to groups1. I change next line too. No more errors with client edition. Now all works with clients.
    The clients add sites with no problems and all is working without Let's Encript certificates. I have other ISPConfig server on old Centos 7 with php 7.4. I know how big is vhosts apache file for site when all is working perfectly, some like 20KB. On new server this is not. On new kamikaze testing server vhost file is half in size an site give me error when I open it:

    Secure Connection Failed

    An error occurred during a connection to webhosting.ucc.uni-sofia.bg. SSL received a record that exceeded the maximum permissible length.

    Error code: SSL_ERROR_RX_RECORD_TOO_LONG

    The page you are trying to view cannot be shown because the authenticity of the received data could not be verified.

    Please help me!
     
  2. till

    till Super Moderator Staff Member ISPConfig Developer

    ahrasis likes this.
  3. Stanislav Panayotov

    Stanislav Panayotov New Member

    You are simply the best! I install missed apache module with command dnf install python-certbot-apache and now Let's Encrypt is working but vhosts file still is small! My mind is blowing! Why this is working when there is no rows start with SSL in vhost file?
     
  4. till

    till Super Moderator Staff Member ISPConfig Developer

    It is not working as you saw in the vhost yourself. I hope you did not ran certbot manually as this will make LE wtop working in ISPConfig. Current ISPConfig versions use acme.sh, certbot shall not be installed then and causes a conflict. Follow the Let's encrypt error FAQ step-by-step, when you are at the end you will know why you do not get a Let#s encrypt cert and without a cert, no SSL vhost of course.
     
    Stanislav Panayotov likes this.
  5. Stanislav Panayotov

    Stanislav Panayotov New Member

    There is a line in the ispconfig code for this file which is responsible for the certificates, but the file was out of place. I copied the acme.sh file from /root/.acme.sh to /usr/local/ispconfig/server/scripts/ - Everything works great now!
     
  6. Stanislav Panayotov

    Stanislav Panayotov New Member

    I removed the extra versions of php. Before that, some php would crash after a while. Maybe they should set themselves up so they don't get in each other's way.
     
  7. till

    till Super Moderator Staff Member ISPConfig Developer

    That's not related to ISPConfig, as we do not provide any PHP packages. Any additional PHP package you use must be compiled so that it has its own PHP config file directory, otherwise you can not install multiple versions at the same time. If you use additional PHP packages that get in each other's way, then you should use packages from another source. For Debian and Ubuntu, one would use packages from Ondrej (sury repo); they work flawlessly. But Rocky Linux is neither supported nor do we test it, so I can not recommend any reliable PHP package source for that. If you do not find a good source for RockyLinux PHP packages that use separate config directories, then you might have to compile them.

    Also, crashing after a while does not look like the packages you use are conflicting. The behavior you describe is likely caused by a resource shortage, like insufficient RAM. You should monitor the server metrics and logs to see why they fail.
     
    Last edited: Aug 16, 2024
  8. Stanislav Panayotov

    Stanislav Panayotov New Member

    I'm testing and so far most things are working. I had a little problem. After deleting a client and their sites when creating a new client and site I saw that the data from the old user was still sitting in the fstab file as well as the mount points. Also after adding each domain I have to restart php-fpm manually.
     
  9. till

    till Super Moderator Staff Member ISPConfig Developer

    Then there is still something wrong with your setup. You can use debug mode to find out what is causing this. Regarding php-fpm restarts, either you have set the wrong names for the PHP-FPM versions so that a systemctl restart on that name does not restart that php-fpm version, or you are mixing init scripts with systemd, so that systemd calls will fail.
     
    ahrasis likes this.
  10. Stanislav Panayotov

    Stanislav Panayotov New Member

    As always you are right! I ran ISPConfig in debug mode. I saw that it was trying to run incron. I installed it, enabled and started the incrond daemon. I think that's pretty important. Is it possible that because of this ISPConfig was unable to clear the records in the /etc/passwords and /etc/fstab? Although I don't have any other PHP versions I made the following settings for an additional PHP version:
    [​IMG]
    [​IMG]
     
  11. till

    till Super Moderator Staff Member ISPConfig Developer

    No, Incron is only used for very few functions and none of them are critical for daily use.

    If you do not have other PHP versions, then there should be no config under additional PHP versions. I thought, according to your prior posts, you installed several PHP versions. If you have just one PHP version, remove all additional PHP versions and then check PHP settings under system > server config.
     
    ahrasis likes this.

Share This Page