Update ispconfig 3.0.5.4p5 to 3.2.11p2 problems !

Discussion in 'Installation/Configuration' started by lolo888, May 21, 2024.

  1. lolo888

    lolo888 New Member

    ispconfig-3.0.5.4p5 to 3.2.11p2
    after ubuntu 14 LTS to 16 LTS
    I tried to find all the errors, but not sure if I'm exhaustive
    Thank you for your help

    i already try php -q update.php and ispconfig_update.sh --force

    Code:
    Configuring Postfix
    Configuring Dovecot
    Configuring Spamassassin
    Configuring Amavisd
    Configuring Getmail
    Configuring BIND
    [INFO] haveged not detected - DNSSEC can fail
    Configuring Pureftpd
    Configuring nginx
    Configuring Apps vhost
    Configuring Jailkit
    Configuring AppArmor
    Configuring Ubuntu Firewall
    Configuring Database
    Updating ISPConfig
    PHP Warning:  symlink(): No such file or directory in /tmp/ispconfig3_install/install/lib/installer_base.lib.php on line 2957
    Do you want to create SSL certs for your server? (y,n) [y]: n
    
    Reconfigure Crontab? (yes,no) [yes]:
    
    Updating Crontab
    Restarting services ...
    Update finished.
    
    backend web
    -------
    Unknown column 'client.contact_firstname' in 'field list'
    
    syslog
    ------------
    May 20 07:20:21 za4 dovecot: imap-login: Error: SSL: Stacked error: error:140760FC:SSL routines:SSL23_GET_CLIENT_HELLO:unknown protocol
    May 20 13:56:46 za4 dovecot: imap-login: Error: SSL: Stacked error: error:1408A10B:SSL routines:ssl3_get_client_hello:wrong version number
    May 21 03:45:02 za4 dovecot: auth-worker(30332): Error: sql(*****@*****): User query failed: Unknown column 'maildir_format' in 'field list'
    May 21 03:45:02 za4 dovecot: auth-worker(30332): Error: sql(*****@*****): User query failed: Unknown column 'maildir_format' in 'field list'
    
    mardi 21 mai 2024, 03:44:01 (UTC+0200) PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP; system has a deprecated constructor in /usr/local/ispconfig/server/lib/classes/system.inc.php on line 31
    mardi 21 mai 2024, 03:44:01 (UTC+0200) PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP; system has a deprecated constructor in /usr/local/ispconfig/server/lib/classes/system.inc.php on line 31
    mardi 21 mai 2024, 03:45:02 (UTC+0200) finished server.php.
    
    mardi 21 mai 2024, 03:50:30 (UTC+0200) PHP Fatal error:  Uncaught mysqli_sql_exception: Unknown column 'php_fpm_chroot' in 'field list' in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php:302
    mardi 21 mai 2024, 03:50:30 (UTC+0200) Stack trace:
    mardi 21 mai 2024, 03:50:30 (UTC+0200) #0 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(302): mysqli_query(Object(mysqli), 'SELECT domain_i...')
    mardi 21 mai 2024, 03:50:30 (UTC+0200) #1 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(339): db->_query('SELECT domain_i...', 1, 25)
    mardi 21 mai 2024, 03:50:30 (UTC+0200) #2 /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php(395): db->query('SELECT domain_i...', 1, 25)
    mardi 21 mai 2024, 03:50:30 (UTC+0200) #3 /usr/local/ispconfig/server/lib/classes/cron.d/600-jailkit_maintenance.inc.php(69): db->queryAllRecords('SELECT domain_i...', 1, 25)
    mardi 21 mai 2024, 03:50:30 (UTC+0200) #4 /usr/local/ispconfig/server/lib/classes/cronjob.inc.php(90): cronjob_jailkit_maintenance->onRunJob()
    mardi 21 mai 2024, 03:50:30 (UTC+0200) #5 /usr/local/ispconfig/server/cron.php(116): cronjob->run()
    mardi 21 mai 2024, 03:50:30 (UTC+0200) #6 {main}
    mardi 21 mai 2024, 03:50:30 (UTC+0200) thrown in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 302
    mardi 21 mai 2024, 03:51:01 (UTC+0200) finished server.php.
    
    May 21 04:19:46 za4 postfix/proxymap[21531]: warning: mysql query failed: Unknown column 'forward_in_lda' in 'where clause'
    
    May 21 04:19:46 za4 postfix/proxymap[21531]: warning: mysql query failed: Unknown column 'sender_cc' in 'field list'
    May 21 04:19:46 za4 postfix/cleanup[21530]: warning: proxy:mysql:/etc/postfix/mysql-virtual_outgoing_bcc.cf lookup error for "*****@*****"
     
    Last edited: May 21, 2024
  2. ztk.me

    ztk.me Well-Known Member HowtoForge Supporter

    could be a bug in the update process from a very old version, not sure if there is a list like for gitlab where you see to what version one shall upgrade before continueing.

    One could try adding the missing fields ( and check for more which did not show yet ) using a "new" setup and compare them.
    It _can_ work but no guarantee unless there is some mechanism for that?
     
  3. lolo888

    lolo888 New Member

    I had to modify the SQL structure, then I imported the new structure into a new database, then export the data and only the data, then import this data into the new database with the REPLACE function

    Code:
    diff /root/ispconfig3_install/install/sql/ispconfig3.sql /root/ispconfig3_install/install/sql/ispconfig3.lolo.sql
    149c149
    <   `contact_firstname` varchar( 64 ) NOT NULL DEFAULT '',
    ---
    >   `contact_firstname` varchar(64) NOT NULL DEFAULT '',
    376a377,380
    >   `default_mailserver` int(11) NOT NULL DEFAULT '1',
    >   `default_webserver` int(11) NOT NULL DEFAULT '1',
    >   `default_dnsserver` int(11) NOT NULL DEFAULT '1',
    >   `default_dbserver` int(11) NOT NULL DEFAULT '1',
    2029,2030c2033,2035
    <   `active` enum('n','y') NOT NULL default 'y',
    <   `traffic_quota_lock` enum('n','y') NOT NULL default 'n',
    ---
    >   `active` enum('n','y') NOT NULL DEFAULT 'y',
    >   `traffic_quota_lock` enum('n','y') NOT NULL DEFAULT 'n',
    >   `fastcgi_php_version` varchar(255) DEFAULT NULL,
    I still have these errors to resolve since the update, I no longer receive emails with local sender ?

    Code:
    May 23 03:34:14 za4 amavis[32733]: (32733-15) (!)connect to 127.0.0.1:* failed, attempt #1: Can't connect to socket 127.0.0.1:* using module IO::Socket::IP: Connection refused
    May 23 03:34:14 za4 amavis[32733]: (32733-15) (!)HJIh8NDZ_fcH FWD from <iwatch@localhost> -> <root@localhost>,  451 4.5.0 From MTA() during fwd-connect (All attempts (1) failed connecting to smtp:127.0.0.1:*): id=32733-15
    May 23 03:34:14 za4 amavis[32733]: (32733-15) Blocked MTA-BLOCKED {TempFailedOutbound}, ORIGINATING LOCAL [127.0.0.1] <iwatch@localhost> -> <root@localhost>, Message-ID: <20240521234821.287541C0386@********>, mail_id: HJIh8NDZ_fcH, Hits: -0.898, size: 604, 358 ms
     
  4. ztk.me

    ztk.me Well-Known Member HowtoForge Supporter

    what if you run
    mysql -h127.0.0.1 -uroot -p

    you can basically enter any password. The interesting thing would be, does it connect, give you authentication error or a connection refused aswell?
    Deending on if you have resolve names on or off 127.0.0.1 is treated differently from localhost string
    is your database server listening ip set to a fixed IP ( or commented out )?
    I've also seen systems where localhost is not matching 127.0.0.1 ( anymore ) for uhm reasons I guess, check your
    cat /etc/hosts

    as you were able to update the database structure I assume your mysql service is running?
    systemctl status mariadb
    netstat -tulpen | grep 3306

    Also try duplicating or modifying the dbispconfig user to be able to login from localhost AND 127.0.0.1

    https://www.howtoforge.com/perfect-server-debian-12-buster-apache-bind-dovecot-ispconfig-3-2/
    step 4
    also step 7 where, unfortunally a default file is edited ( /etc/mysql/mariadb.conf.d/50-server.cnf )
    this could have been overwritten by accident during an upgrade ( could )

    well, howto if newer than your server, file might be different but I think it works for illustration
     
  5. till

    till Super Moderator Staff Member ISPConfig Developer

    And check the MariaDB config to ensure you do not have skip-networking enabled.
     
    ztk.me likes this.
  6. lolo888

    lolo888 New Member

    Code:
    root@za4:~# mysql -h127.0.0.1 -utest -p
    Enter password:
    ERROR 1045 (28000): Access denied for user 'test'@'localhost' (using password: YES)
    root@za4:~#
    with wrong password

    the mysql server is active but in tcp6 only, I wonder why?
    Code:
    root@za4:~# netstat -tulpen | grep 3306
    tcp6       0      0 :::3306                 :::*                    LISTEN      107        18181       1298/mysqld
    root@za4:~# cat /etc/hosts
    127.0.0.1       localhost
    xxx xxxxxxxxx...
    
    step4 : there was a bad config on hostname, it is corrected, but The problem is still not resolved
    I don't have MariaDB installed, But why putting MariaDB is better?
     
  7. ztk.me

    ztk.me Well-Known Member HowtoForge Supporter

    cd /etc/mysql
    grep -HiRnF 'bind-address' *

    check if there are duplicated entries
    you can replace it with
    bind-address = 127.0.0.1

    or
    if you have a firewall / want remote usage


    bind-address = 0.0.0.0,::

    this would enable v4 and v6

    bind-address = *
    may work, too. if not, go with the above mentioned

    and restart mariadb ;)
     
  8. lolo888

    lolo888 New Member

    Code:
    root@za4:~# egrep dbispconfig /etc/ -R | grep amavis
    /etc/amavis/50-user~:   ( ['DBI:mysql:database=dbispconfig;host=127.0.0.1;port=3306', 'ispconfig', 'xxxxx'] );
    /etc/amavis/conf.d/50-user:   ( ['DBI:mysql:database=dbispconfig;host=127.0.0.1;port=3306', 'ispconfig', 'xxxxx'
    maybe if I replace 127.0.0.1 with localhost?
     
  9. lolo888

    lolo888 New Member

    Code:
    root@za4:/etc/mysql# grep -HiRnF 'bind-address' *
    my.cnf:59:#bind-address         = 127.0.0.1
    my.cnf.migrated:59:#bind-address                = 127.0.0.1
    my.cnf.migrated.bak:59:#bind-address            = 127.0.0.1
    mysql.conf.d/mysqld.cnf:43:bind-address         = 127.0.0.1
    
    root@za4:/etc/mysql# ll
    total 56K
    drwxr-xr-x   4 root root 4,0K déc.  19 04:48 ./
    drwxr-xr-x 138 root root  12K mai   24 15:49 ../
    drwxr-xr-x   2 root root 4,0K déc.  19 04:29 conf.d/
    -rw-------   1 root root  317 déc.  19 04:48 debian.cnf
    -rwxr-xr-x   1 root root  120 janv. 28  2021 debian-start*
    lrwxrwxrwx   1 root root   24 déc.  19 04:29 my.cnf -> /etc/alternatives/my.cnf
    -rw-r--r--   1 root root  839 janv. 21  2017 my.cnf.fallback
    -rw-r--r--   1 root root 4,3K déc.  19 04:48 my.cnf.migrated
    -rw-r--r--   1 root root 4,1K déc.  19 04:29 my.cnf.migrated.bak
    -rw-r--r--   1 root root  682 févr.  3  2017 mysql.cnf
    drwxr-xr-x   2 root root 4,0K déc.  19 04:48 mysql.conf.d/
    root@za4:/etc/mysql# ll /etc/alternatives/
     déc.  19 04:29 my.cnf -> /etc/mysql/my.cnf.migrated
    
    not mariadb
     
  10. ztk.me

    ztk.me Well-Known Member HowtoForge Supporter

    if you have a ipv6 mapping for localhost, will do, yes. but check postfix config also.
    And update the template files and keep in mind when updating and and and =)
    Usually it is better to work with, not against the framework.

    one of the bind settings should work for mysql, too :)
    https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_bind_address
    usually all should work, but there may have been some versions which did not understand all the syntax
     
  11. ztk.me

    ztk.me Well-Known Member HowtoForge Supporter

    still possible there is just the dbispconfig@localhost and not @ 127.0.0.1 one
    that's why the hint with resolve names

    if you did not modify the my.cnf to listen on 127.0.0.1 and it does listen on :: only, that'd be strange though, sure the config got there before a restart?

    edit: ah, might also be the case your version is "one of them" and it is listening on ipv4 mapped ipv6 addresses
     
  12. lolo888

    lolo888 New Member

    Code:
    root@za4:~# netstat -tap | grep mysql
    tcp        0      0 localhost:46646         localhost:mysql         ESTABLISHED 10482/amavisd-new (
    tcp        0      0 localhost:46638         localhost:mysql         ESTABLISHED 10478/amavisd-new (
    tcp6       0      0 [::]:mysql              [::]:*                  LISTEN      1298/mysqld
    tcp6       0      0 localhost:mysql         localhost:46646         ESTABLISHED 1298/mysqld
    tcp6       0      0 localhost:mysql         localhost:46638         ESTABLISHED 1298/mysqld
    
    still seems to work in v4 and v6
     
  13. ztk.me

    ztk.me Well-Known Member HowtoForge Supporter

    yes, it is listening on ipv4, but it is getting mapped. Though imho it should not listen on :: if you enter 127.0.0.1
    strange behaviour and not finding a matching description in the docs.
    but if you specify
    127.0.0.1,::1
    ?
     
  14. lolo888

    lolo888 New Member

    where can I find this config if it exists?
     
  15. ztk.me

    ztk.me Well-Known Member HowtoForge Supporter

    or KISS xD
    tried looking for
    bind_address?
     
  16. ztk.me

    ztk.me Well-Known Member HowtoForge Supporter

    this is controlled by
    net.ipv6.bindv6only
    on sysctl.
    Though as your distro probably has been tested using the defaults... and not tested as much when set to 1, up to you ;)

    and keep in mind, an application can specifically request, thus overwrite using IPV6_V6ONLY socket option
    https://man7.org/linux/man-pages/man7/ipv6.7.html


    therefore, probably better to add the ::1 to the bind for localhost binding
     
    Last edited: May 24, 2024

Share This Page