Installationsbeispiel für Ubuntu Linux 20.04 (Als Server) für untermStrich X3

Ab X3 13.3.3 PHP 7.1-7.4 oder neuer.

Freigabe als Release Candidate.

:!: ACHTUNG: ANLEITUNG OHNE GEWÄHR.
Die Firma untermStrich software gmbh übernimmt keine Haftung für etwaige Schäden oder Fehler die direkt oder indirekt durch die Benutzung oder nicht Benutzung dieser Anleitung entstehen!
:!: ACHTEN SIE AUF DIE SICHERHEIT IHRES SERVERS!!
Apache, PHP, MySQL muss wie auch untermStrich aktuell gehalten werden. Dies gilt besonders, wenn der Server im Internet verfügbar sein soll.


Sichern Sie die Datenbank vor dem Update!
Es kann notwendig werden, die Datenbank nach dem Ubuntu Update neu einzuspielen, vor allem nach dem Update von 14.04 auf 16.04.

  • Ein direktes Update ist nicht möglich. Verschieben sie das untermStrich Programmverzeichnis /var/www/html/ustrich nach /var/www/html/ustrich.old und führen Sie die Installation wie unten beschrieben aus:
  1. Ubuntu Server herunterladen
  2. LAMP Installieren:
    sudo apt-get update
    sudo apt-get install tasksel
    sudo tasksel install lamp-server
    sudo mysql -u root
      mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'ustrich';
      mysql> quit
    sudo mysql_secure_installation
      VALIDATE PASSWORD COMPONENT can be used to test passwords
      ...
      Press y|Y for Yes, any other key for No: n
      Change the password for root ? ((Press y|Y for Yes, any other key for No) : n
      Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
      Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
      Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
      Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
    • :!: ACHTUNG: Bewahren Sie das MySQL root Kennwort gut auf. Sie benötigen es, um später untermStrich zu installieren, ein Backup auszuführen u.s.w..

Mit diesen Befehlen bereiten Sie den Server so vor, dass Sie später keine Komponenten mehr installieren müssen.

:!: Selbstverständlich ist dies nur einer der vielen möglichen Wege. Wenn Sie eine andere Methode bevorzugen, erhalten Sie in Schritt V durch den Installer alle notwendigen Informationen.

:!: Beachten Sie dennoch Schritt III und IV

  • Software
    • sudo apt-get install unzip
      sudo apt-get install automysqlbackup
      sudo apt-get install openjdk-11-jre-headless
  • ioncube
    • wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
      tar -xzvf ioncube_loaders_lin_x86-64.tar.gz
      sudo mv ioncube /usr/lib/php/
    • Erstellen Sie die Datei /etc/php/7.4/mods-available/ioncube.ini mit dem Inhalt:
      • ; configuration for php mysql module
        ; priority=00
        zend_extension = /usr/lib/php/ioncube/ioncube_loader_lin_7.4.so

        Die Versionsnummer in der Loader Datei (ioncube_loader_lin_7.4.so) entspricht Ihrer PHP Version. Vergessen Sie nicht den Kommentar ; priority=00 genau so zu kopieren.

    • und erstellen Sie einen Symlink in die beiden apache2 und cli Verzeichnisse:
      • sudo phpenmod ioncube
  • Apache
    • sudo a2enmod rewrite
      sudo a2enmod expires
    • Öffnen Sie die Datei /etc/apache2/sites-enabled/000-default.conf und ergänzen Sie den Directory Block:
      • <VirtualHost *:80>
        ...
        <Directory /var/www/html/ustrich>
        AllowOverride All
        Require all granted
        </Directory>
        ...
        </VirtualHost>

Wenn Sie HTTPS einrichten und dafür einen eignen VHOST nutzen (etwa default-ssl.conf), müssen Sie diese Änderungen dann natürlich auch dort einfügen.

  • PHP
    • sudo apt-get install php-xml php-ldap php-tidy php-mbstring php-zip php7.4-gd
    • Erstellen Sie die Datei /etc/php/7.4/mods-available/ustrich.ini mit dem Inhalt:
      • upload_max_filesize = 100M
        post_max_size = 130M
    • und erstellen Sie einen Symlink in die beiden apache2 und cli Verzeichnisse:
      • sudo phpenmod ustrich
  • sudo service apache2 restart
  • Zeitzone ändern
    • sudo dpkg-reconfigure tzdata

      Diese Zeitzone wirkt sich in der Regel auch auf MySQL aus. Starten Sie dazu, nach der Anpassung, den MySQL Server neu:

      sudo service mysql restart
       
  1. :!: Konfigurieren und optimieren Sie nun den MySQL Server.
    • Legen Sie die folgende Datei an /etc/mysql/conf.d/performance.cnf:
      • [mysqld]
        default-authentication-plugin=mysql_native_password
         
        sql-mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION"
        log_bin_trust_function_creators = 1
        group_concat_max_len=50000
         
        max_allowed_packet = 16M
        table_open_cache = 512
        sort_buffer_size = 2M
         
        max_heap_table_size = 256M
        tmp_table_size = 256
         
        innodb_buffer_pool_size=664M 
         
  2. Wenn Sie den Connector 4VX nutzen möchten, müssen Sie die bind-address anpassen.
    • Öffnen Sie dazu die Datei /etc/mysql/mysql.conf.d/mysqld.cnf und ändern Sie bitte den Eintrag
      • bind-address            = 0.0.0.0
  3. MySQL neu starten
    • sudo service mysql restart
  4. :!: Backup: Sie sollten regelmäßig ein Backup der MySQL Datenbank durchführen. Dies ist unter Ubuntu sehr einfach.

Die aktuelle Version der X3 für PHP7 finden Sie unter: https://webservices.untermstrich.com/update/

Entpacken Sie die ustrich.3_p71.zip nach /var/www/html/ustrich/

Beachten Sie, dass die ustrich.3_p71.zip kein Verzeichnis ustrich beinhaltet. Entpacken Sie die Datei also am Besten bereits im Verzeichnis /var/www/html/ustrich.

sudo unzip ustrich.3_p71.zip -d /var/www/html/ustrich/

Achten Sie darauf, dass „alle“ lesenden Zugriff benötigen: sudo chmod -R a+r /var/www/html/ustrich
Auf folgendes Verzeichnis wird auch Schreibzugriff benötigt: sudo chmod -R a+w /var/www/html/ustrich/writeable

Sie können den Besitzer ändern um Updates vollständig über die Weboberfläche durchführbar zu machen. Diese Konfiguration ist jedoch weniger sicher:

sudo chown -R www-data:www-data /var/www/html/ustrich/

Als Besitzer der Dateien kann root bleiben. Sie müssen dann jedoch bei untermStrich X Updates diese als root auf der Konsole bestätigen:

sudo php /var/www/html/ustrich/update.php -u

Der untermStrich X3 Installer gibt Ihnen alle Befehle an, die Sie zum Konfigurieren benötigen. (a2enmod)



.