Sie sind hier : Homepage →  Linux (13) Upgrade 42.3 to 15.3→  Typo3 Versuch auf Leap 15.3 (b)

Diese Seiten sind unsere internen Protokolle aus dem Labor.

Hier wird fortlaufend protokolliert, was beim Upgrade aus dem Ruder gelaufen war

.

Den installierten Webserver Apache2 konfigurieren :

Aus der Erfahrung mit dem vielen Rumprobieren sollen zur Zeit (also ab jetzt) Änderungen und Ergänzungen nur noch im Verzeichnis /etc/apache/vhost/ in den einzelnen "*.conf" Dateien installiert werden. So jedenfalls die (Wunsch-Traum-) Idee. Hier die Liste meiner vhosts-Dateien :

[ftp.net- root] /etc/apache2/vhosts.d $ dir

10-ftp.femuwi.de.conf
20-ftp.ipw.net.conf
22-repos.ipw.net.80.conf
30-archiv.femuwi.de.conf
40-archiv1.femuwi.de.conf
50-archiv2.femuwi.de.conf
60-archiv3.femuwi.de.conf
70-archiv4.femuwi.de.conf
80-archiv4.femuwi.de.conf
vhost-nss.template

[ftp.net- root] /etc/apache2/vhosts.d $
.

Erklärungen zu den vielen Domains :

Logistisch soll unser eigener Betriebssystem- Download-Bereich (ftp.ipw.net) vom Gast/Besucher- Download-Bereich des Museen-Archivs (ftp.femuwi.de) getrennt sein. Es sind 2 Paar Schuhe. Für das ipw-opensuse Repository brauche ich keine Einweisung, für des Museen-Archiv aber schon.

Zur administrativen Prüfung der onlinie Verfügbarkeit der "vhosts" soll es also jeweils eine einzelne "Web-Page" für die getrennten Aufgaben/Angebote geben. Und dafür brauche ich mehrere Domain-Namen.
.

Die Firewall für den Apache konfigurieren :

Das sollte der Admin natürlich nicht vergessen : Alle benötigten Server-Ports in der Firewall müssen vorher offnen sein :
.

  • $ firewall-cmd --permanent --add-port=80/tcp
  • $ firewall-cmd --permanent --add-port=443/tcp
  • $ firewall-cmd --permanent --add-port=aaaaaa/tcp (ssh)
  • $ firewall-cmd --permanent --add-port=bbbbb/tcp (unsere internen Repos)
  • $ firewall-cmd --permanent --add-port=ccccc/tcp (für den webmin)

.
später brauchen wir zusätzlich noch den Standard-Port für vsftp.
.

  • $ firewall-cmd --reload
  • $ firewall-cmd --list-services
    (keine Dienste = dafür die Ports geöffnet ?? dann diese Zeile hier :)
  • $ firewall-cmd --list-ports

.

Weitere Vorbereitungen für den Apache2 .....

Eígentlich wollte ich in den (bei der Installation erstellten) globalen Konfigurationsdateien des Apache2 (in /etc/apache2/) nichts verändern. Doch das ist nicht sinnvoll bzw. das geht so doch nicht. Zumindest die "listen.conf" muß die vom Apache2 benutzen (mehreren) Ports enthalten. Und auch das Modul "userdir" sollte in "/ect/sysconfig/apache" abgeschaltet werden und mit "Apache Icons" haben wir auch nichts im Sinn. Es wird bei uns nicht gebraucht. Es sind also 3 Änderungen, die in globalen Konfigs erfolgen sollten/müssten.
.

  • $ a2dismod userdir
  • $ systemctl enable apache2 (der Apapche soll automatisch starten)
  • $ systemctl restart apache2 (der Apache wird erstmalig gestartet)
  • $ systemctl status apache2 (Gibt es Fehler ?????)
    (oder auch so :)
  • systemctl status apache2.service

.
Der Apache läuft aber bislang noch nicht. Denn beim Start wird bei mir ein Fehler angezeigt : Invalid command 'RewriteEngine' in einer meiner (alten übernommenen) vhost configurationen.
.
Die meisten wichtigen Apache2- Module sind in der installierten opensuse Version bereits enthalten, außer "rewrite". Und das geht ganz einfach :
.

  • $ a2enmod rewrite
  • $ systemctl restart apache2
  • $ rcapache2 status

.
Fertig : Er läuft jetzt, der Apache2 Webserver :
apache2.service - The Apache Webserver
     Loaded: loaded (/usr/lib/systemd/system/apache2.service; disabled; vendor preset: disabled)
     Active: active (running) since Thu 2022-03-31 01:38:35 CEST; 4s ago
.

Jetzt fülle ich die vhost Zielverzeichnisse mit den index files.

Zum Testen der einzelnen vhost Konfigurationen erstelle ich in jedem Zielverzeichnis im root eine "index.html" (Kontroll-) Datei mit dem sichtbaren Domain-Namen dieses vhosts.
.
Und jetzt überarbeite / korrigiere ich eine vhost Konfiguration nach der anderen, bis ich alle Domains (bislang noch) per "http" (noch nicht per "https") erreichen (sehen) kann. Die automatische Umsetzung aller http's auf https kommt nach der Installation von letsencrypt.
.

Bislang Web- Access nur über http, jetzt Umstellung auf https

Zuerst "apparmor" überprüfen :

  • $ zypper in -t pattern apparmor


Reading installed packages...
'pattern:apparmor' is already installed. - Also ok. - Dann ....

  • $ systemctl status snapd

.
überprüfen - Active: active (running)
- Also auch ok.
.

  • $ snap install certbot --classic

.
snap "certbot" is already installed, see 'snap help refresh' - auch ok.
.
und jetzt gehts los :

  • $ update-ca-certificates -v


[ftp.net- root] / $ update-ca-certificates -v
running /usr/lib/ca-certificates/update.d/50java.run ..
creating /var/lib/ca-certificates/java-cacerts ...
running /usr/lib/ca-certificates/update.d/70openssl.run ..
creating /var/lib/ca-certificates/openssl ...
running /usr/lib/ca-certificates/update.d/80etc_ssl.run ..
running /usr/lib/ca-certificates/update.d/99certbundle.run ..
creating /var/lib/ca-certificates/ca-bundle.pem ...
[ftp.net- root] / $
.

  • $ certbot --apache

.
Which names would you like to activate HTTPS for?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: archiv.femuwi.de
2: archiv1.femuwi.de
3: archiv2.femuwi.de
4: archiv3.femuwi.de
5: archiv4.femuwi.de
6: archiv5.femuwi.de
7: ftp.femuwi.de
8: ftp.ipw.net
9: repo.ipw.net
10: repos.ipw.net

Requesting a certificate for archiv.femuwi.de and 9 more domains

Successfully received certificate. - Certificate is saved at: /etc/letsencrypt/live/archiv.femuwi.de/fullchain.pem - Key is saved at: /etc/letsencrypt/live/archiv.femuwi.de/privkey.pem - This certificate expires on 2022-06-30.
These files will be updated when the certificate renews. - Certbot has set up a scheduled task to automatically renew this certificate in the background.
.

Die nächste Aktion ist die Initialisierung von mariadb

.

  • $ systemctl enable --now mariadb (im systemstart eintragen und starten)

.
Created symlink /etc/systemd/system/mysql.service â /usr/lib/systemd/system/mariadb.service.
Created symlink /etc/systemd/system/multi-user.target.wants/mariadb.service â /usr/lib/systemd/system/mariadb.service.

  • $ systemctl status mariadb.service


â mariadb.service - MariaDB database server
     Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
     Active: active (running) since Sun 2022-04-03 00:36:24 CEST; 22s ago
       Docs: man:mysqld(8)
             https://mariadb.com/kb/en/library/systemd/
    Process: 30344 ExecStartPre=/usr/lib/mysql/mysql-systemd-helper install (code=exited, status=0/SUCCESS)
    Process: 30406 ExecStartPre=/usr/lib/mysql/mysql-systemd-helper upgrade (code=exited, status=0/SUCCESS)
   Main PID: 30412 (mysqld)
     Status: "Taking your SQL requests now..."
      Tasks: 22 (limit: 3536)
     CGroup: /system.slice/mariadb.service
             ââ30412 /usr/sbin/mysqld --defaults-file=/etc/my.cnf --user=mysql

Apr 03 00:36:24 ftp mysql-systemd-helper[30356]: you need to be the system 'mysql' user to connect.
Apr 03 00:36:24 ftp mysql-systemd-helper[30356]: After connecting you can set the password, if you would need to be
Apr 03 00:36:24 ftp mysql-systemd-helper[30356]: able to connect as any of these users with a password and without sudo
Apr 03 00:36:24 ftp mysql-systemd-helper[30356]: See the MariaDB Knowledgebase at https://mariadb.com/kb
Apr 03 00:36:24 ftp mysql-systemd-helper[30356]: Please report any problems at https://mariadb.org/jira
Apr 03 00:36:24 ftp mysql-systemd-helper[30356]: The latest information about MariaDB is available at https://mariadb.org/.
Apr 03 00:36:24 ftp mysql-systemd-helper[30356]: Consider joining MariaDB's strong and vibrant community:
Apr 03 00:36:24 ftp mysql-systemd-helper[30356]: https://mariadb.org/get-involved/
Apr 03 00:36:24 ftp mysql-systemd-helper[30412]: 2022-04-03  0:36:24 0 [Note] /usr/sbin/mysqld (mysqld 10.5.15-MariaDB) starting as process 30412 ...
Apr 03 00:36:24 ftp systemd[1]: Started MariaDB database server.
.

  • $ mysql_secure_installation

.
Enter current password for root (enter for none): (bei neuer Installation nichts eingeben)
OK, successfully used password, moving on...

Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.
You already have your root account protected, so you can safely answer 'n'. Wir nutzen das root-Passwort aus "shadow"

Switch to unix_socket authentication [Y/n] n
 ... skipping.
You already have your root account protected, so you can safely answer 'n'.
Change the root password? [Y/n] n  ... skipping.
Remove anonymous users? [Y/n] y  ... Success!
Disallow root login remotely? [Y/n] y  ... Success!

Remove test database and access to it? [Y/n] y  - Dropping test database...  ... Success!
 - Removing privileges on test database...  ... Success!

Reload privilege tables now? [Y/n] y  ... Success! - Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB installation should now be secure.
Thanks for using MariaDB!
$ (es ist bei der Datenbank alles fertig konfiguriert)
.

Der phpMyAdmin - Vergleich mit der geretteten Konfiguration

Den mysql Server hatten wir vor der Neuinstallation bereits leidlich am Laufen und die alte mysql-Konfig ist gesichert - aber unbrauchbar ("galera" für eine Server-Farm bzw. einen großen mysql-Cluster brauchen wir unserem Einzel-Server nicht !!) - und die alte Konfig wird nur zum Vergleich aus dem Backup geholt.
.

  • Doch vorher müssen wir im mysql Konfigurationsfile "/etc/my.cnf" ein paar Änderungen prüfen bzw. ändern. Unser mysql-Datenverzeichnis (datadir) ist nicht in "/var/lib/mysql" (das liegt in der opensuse root Partition - mit nur 15 GB) sondern bei uns in unserer Data-Partition "/vol2/mysql/" mit 80 GB Platz.
  • Und deshalb müssen wir den installierten mariadb-Inhalt aus "/var/lib/mysql" in "/vol2/mysql/" verschieben !, nicht kopieren !.


Vorher aber erst mysql stoppen und das "datadir" in "/etc/my.cnf" korrigieren.
.

  • $ systemctl stop mariadb.service

.
und nach der "edit"-Aktion
.

  • systemctl start mariadb.service

.
Da unser altes "datadir" jetzt leer ist. wird auch gleich das neue "datadir" geprüft. Stimmt der Link nicht, würde mysql nicht mehr starten - eine wichtige Prüfung.
.

  • systemctl status mariadb.service

.
Ergebnis :
Active: active (running) since Sun 2022-04-03 01:18:13 CEST; 16s ago
Status: "Taking your SQL requests now..."
Apr 03 01:18:13 ftp systemd[1]: Started MariaDB database server.
.
Jetzt prüfen wir nochmal das root passwort unserer mariadb.
.

  • $ mysql -u root -p

.
Enter password: (das alte bei der Initialisierung getippte Passwort)
MariaDB [(none)]>
MariaDB [(none)]> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password AS PASSWORD('neuespasswort');
MariaDB [(none)]>
quit.
.

"phpMyAdmin" - Das hat jetzt funktioniert.- Endlich !

"phpMyAdmin" kann als priviligierter "root-user" auf die "lokale" noch leere mariadb Datenbank zugreifen. Wichtig waren in der Datei "config.inc.php" (in /etc/phpMyAdmin) diese Zeilen :

$cfg['Servers'][$i]['host']                     = '127.0.0.1';
$cfg['Servers'][$i]['port']                     = '3306';
$cfg['Servers'][$i]['socket']                   = '';
.

Test der Ausführung von PHP Programmen im Apache

In fast jedem vhost Verzeichnis habe ich probeweise eine "phptest.php" Datei, die später wieder gelöscht wird. Damit ist die Vorbereitung für die typo3-Installation, die ja das ferne Ziel dieser Neuinstallation war, fertig.
.

Vorbereitung einer typo3 9.5.31 Version.

Nach langjährigen Erfahrungen mit opensuse und auch mit typo3 kann man davon ausgehen, daß in einem 31-ten Update die gröbsten Macken korrigiert wurden.
.
Als nächstes kommt der Versuch, typo3 zum Laufen zu bringen.
.

.

Startseite -- © 2001/2022 - Copyright by Dipl.-Ing. Gert Redlich / Germany - D-65191 Wiesbaden - Telefon-Nummer - Impressum