Please help - update i-MSCP to run on new system

  • Hi

    I updated my branch so the installation also runs on Devuan 2, 3 and 4 (ascii, beowulf and chimaera). The php versions are not changed (ascii+stretch <= php 7.4, the others including also php 8.0).

    Important: the installer changes some code in the install folder if needed... not very elegant but at the moment the only way to deal with the changes in the versions...

    Still not ok: installing roundcube.

    I always use a second SSH login to change the file


    as soon as it's downloaded (after entering IP/password and mail address it starts)

    Change line 128: add a "-L " after the first %s - so it looks like this:

    1. exec(sprintf('%s -L -s %s -o %s', $CURL, escapeshellarg($package['url']), $cache_file), $out, $retval);

    on my vm I have enough time to do this... then the installation finishes smoothly.

    I think it's time to add newer PHP versions to the 6 distributions.

    If someone is here doing the job for ubuntu (xenial?, bionic, focal, and maybe already jammy)... pleas go ahead!

    cheers J


    Update: now also PHP 8.1 is included in the Debian/Devuan package lists.


    Edited once, last by joximu ().

  • Hi guys

    the problem with roundcube/codemirror is solved now (thanx Nuxwin ) - I just made a new test installation....

    So the installation runs fine on the platforms mentioned above.

    On my side the next steps are testing and creating patches for the plugins...

    Have a good weekend


  • Hola,

    got phpswithcher quick & dirty running on bullseye.

    comment out /var/www/imscp/gui/plugins/PhpSwitcher/backend/ +1018

    1. # $rs == 0 or die( $stderr || 'Unknown error' );

    /var/www/imscp/gui/plugins/PhpSwitcher/PhpCompiler/ from line 73

    1. '7.4' => '7.4.28', # End of life: 06 December 2031
    2. '8.0' => '8.0.20', # End of life: 06 December 2031
    3. '8.1' => '8.1.7', # End of life: 06 December 2031
    4. );

    chmod 777 /etc/bind/rndc.key

    service named restart

    perl /var/www/imscp/gui/plugins/PhpSwitcher/PhpCompiler/ --register --packaged --packaged-only

  • plz change

    engine/PerlLib/Servers/ftpd/proftpd/ +492

    TLSProtocol TLSv1.2

    with recommended ciphersuite it should look like this:

    1. <IfModule mod_tls.c>
    2. TLSProtocol TLSv1.2
    4. TLSServerCipherPreference on
    5. TLSSessionTickets off
    6. </IfModule>

    Edited once, last by fulltilt ().

  • Hi,

    update stretch -> buster -> bullseye works :-)

    but I think we need a patch for the pluginsources, also .

    After every ./imscp-autoinstall all the LE-Certs are invalid, for example.

    Someone got InstantSSH jails working ? It kicks me out after login.

    I'll carry on testing...


    1. mkdir /lib/security/
    2. ln -s /lib/x86_64-linux-gnu/ /lib/security/

    Edited once, last by InstantSSH now working ().

  • It's dead dudes, accept it.

    I moved to KeyHelp, it's great, features that are not in i-MSCP, it's free.

    Don't stick with this outdated and crappy panel, there is so much better.

  • Bas this thread is created for the people who want to give it a try. There are other threads for discussion about moving to other panels. You know that there are two sorts of "free" - I like the combination of both.


  • Thanks @joximu and all others that have worked on to get i-mscp maintenance branch working on debian 10/11.

    Today I upgraded my i-mscp 1.5.3 debian 9 installation (i know, quite late) and after a bit fiddeling around i came out with following steps for a smooth upgrade:

    0. Make a backup of your host!

    1. git clone joxis branch and to commented

    2. (optional if you DONT use letsencrypt) edit…0e66d66ffccb7bdb622405969 (Background LetsEncrypt - SSL certificate is not valid )

    3. Remove your SSL certificate youve entered with the panel for your aliasses and (sub)domains.

    In my case i used letsencrypt - but without the plugin. that caused me into some issues, so i had to disable all ssl certificates in the panel to get a working upgrade

    4. disable all plugins you have active.

    same as for the ssl certificates. after the upgrade, the plugins (clamav, spamassassin, opendkim, mailgraph, PolicydSPF, ServerDefaultPage) worked all fine again and the dkim keys didnt changed :)

    5. dist-upgrade your machine to buster

    6. dist-upgrade after you rebooted the machine to bullseye

    7. now run the installer script:

    1. perl imscp-autoinstall -d -r

    just go through the installer, change the PHP version to a more recent one, and dont get confused when the installer wants to create a new admin account, just let it creating it.

    8. installer should be ran through without errors.

    9. reboot

    10. enable ssl certificates for your domains and aliasses

    11. enable your plugins

    after the upgrade spamassassin plugin was crying that "WEBMAIL_PACKAGES" was not found in /etc/imscp/imscp.conf

    depending which webmailer you choose, enter it. for my installation i had to add following line before activating it

    1. WEBMAIL_PACKAGES = Rainloop

    12. Youre done! 🥳

    Maybe this will help somebody. Everyone who reads this and still runs a debian 9 installation, Please upgrade now! Debian 9 is EOL since 06/2022

    Edited once, last by DeltaLima ().

  • One thing I havent tested before but I notice now: My dovecot login fails now with the error

    1. dovecot: imap-login: Error: Failed to initialize SSL server context: Can't load DH parameters (ssl_dh setting): error:1408518A:SSL routines:ssl3_ctx_ctrl:dh key too small: user│...

    But it seems that can be easely fixed:…server-context-cant-load/

    Update 1:

    And there seems to be some options get depricated soon

    1. dovecot: config: Warning: NOTE: You can get a new clean config file with: doveconf -Pn > dovecot-new.conf │
    2. dovecot: config: Warning: Obsolete setting in /etc/dovecot/dovecot.conf:175: ssl_protocols has been replaced by ssl_min_protocol

    This could also be fixed easy (…laced-by-ssl-min-protocol), just delete the line with ssl_protocols in /etc/dovecot/dovecot.conf and add the line

    ssl_min_protocol = TLSv1.2

    Update 2:

    SpamAssassin Plugin misses a column

    1. spamd[1457]: auto-whitelist: sql-based get_addr_entry [email protected]|none: SQL error: Unknown column 'msgcount' in 'field list' │
    2. spamd[1457]: auto-whitelist: sql-based add_score/update 1|-1|[email protected]|[email protected]|none: SQL error: Unknown column 'msgcount' in 'field list'[

    seems to be this bug:

    Can be solved with adding the column as mentioned

    1. $ mysql imscp_spamassassin -e "alter table awl add msgcount int(11);"

    Update 3:

    When receiving a mail, i get a permission denied error from dovecot

    1. postfix/pipe[8047]: 18CF4C0DA1: to=<[email protected]>, relay=dovecot, delay=0.39, delays=0.27/0/0/0.11, dsn=2.0.0, status=sent (delivered via dovecot service (lda([email protected]): Error: net_connect_unix(/run/dovecot/stats-writer) failed: Permission den))

    I have tried to delete it, that havent worked. Also giving the user dovecot the ownership of this file didnt worked either.

    Putting an additional service definition into dovecot.conf and specifying the permissions did the trick (

    1. service stats {
    2. unix_listener stats-writer {
    3. mode = 0666
    4. }
    5. }

    Update 4:

    Also when receiving a mail, I get errors from dovecat that a sieve folder cannot be found

    1. dovecot: imap([email protected])<169859><Funnyrandomstring>: Error: stat(/var/mail/virtual/ failed: Not a directory

    I found this maillisting entry

    but for now I havent dove deeper into it :)

    Edited 16 times, last by DeltaLima ().