So installierst du SuiteCRM mit Apache und kostenlosem Let’s Encrypt SSL auf Debian 11

SuiteCTM ist eine in PHP geschriebene Open-Source-Lösung für das Kundenbeziehungsmanagement. Es handelt sich um eine voll funktionsfähige und stark erweiterbare CRM-Anwendung, die auf jedem Betriebssystem läuft. Sie wurde populär, als SugarCRM beschloss, die Entwicklung seiner Community Edition einzustellen. Es wird für die Erstellung von Geschäftsstrategien, Aktionen und Entscheidungen verwendet. Es ist eine alternative CRM-Lösung für andere kommerzielle CRMs wie SugarCRM, Salesforce und Microsoft.

In diesem Beitrag zeigen wir dir, wie du SuiteCRM mit Apache und Let’s Encrypt SSL auf Debian 11 installierst.

Voraussetzungen

  • Ein Server, auf dem Debian 11 läuft.
  • Ein gültiger Domainname, der auf die IP deines Servers zeigt.
  • Ein Root-Passwort ist auf dem Server konfiguriert.

Installiere Apache, MariaDB und PHP

SuiteCRM ist eine PHP-basierte Anwendung und verwendet MariaDB als Datenbank-Backend. Daher musst du den Apache-Server, den MariaDB-Datenbankserver, PHP und andere notwendige PHP-Erweiterungen auf deinem Server installieren. Du kannst sie alle mit dem folgenden Befehl installieren:

apt-get install apache2 mariadb-server mariadb-client php php-common php-zip php-mysql php-gd php-curl php-imap php-mbstring php-xml php-json libapache2-mod-php unzip libpcre3 -y

Sobald alle Pakete installiert sind, bearbeite die Datei php.ini und ändere einige Standardeinstellungen:

nano /etc/php/7.4/apache2/php.ini

Ändere die folgenden Einstellungen:

memory_limit = 256M
post_max_size = 64M
upload_max_filesize = 64M

Speichere und schließe die Datei und starte den Apache-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart apache2

Erstelle eine MariaDB-Datenbank für SuiteCRM

Zuerst musst du die MariaDB-Installation sichern und ein Root-Passwort festlegen. Das kannst du tun, indem du das folgende Skript ausführst:

mysql_secure_installation

Beantworte alle Fragen wie unten gezeigt:

Enter current password for root: Press 
Set root password? [Y/n] y
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

Wenn du damit fertig bist, melde dich mit folgendem Befehl in der MariaDB-Shell an:

mysql -u root -p

Sobald du mit MariaDB verbunden bist, erstelle mit dem folgenden Befehl eine Datenbank und einen Benutzer für SuiteCRM:

MariadDB [(none)]> CREATE DATABASE suitecrm;
MariaDB [(none)]> CREATE USER 'suitecrm'@'localhost' IDENTIFIED BY 'password';

Als Nächstes erteilst du der SuiteCRM-Datenbank mit dem folgenden Befehl alle Berechtigungen:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON suitecrm.* TO 'suitecrm'@'localhost';

Lösche die Berechtigungen und verlasse die MariaDB-Shell mit dem folgenden Befehl:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Nachdem du die MariaDB-Datenbank und den Benutzer erstellt hast, kannst du mit dem nächsten Schritt fortfahren.

SuiteCRM installieren

Lade zunächst die neueste Version von SuiteCRM mit dem Befehl wget herunter:

wget https://suitecrm.com/files/147/SuiteCRM-7.12/578/SuiteCRM-7.12.1.zip

Als Nächstes entpackst du die heruntergeladene Datei mit dem folgenden Befehl:

unzip SuiteCRM-7.12.1.zip

Verschiebe das entpackte Verzeichnis in das Apache-Standard-Stammverzeichnis:

mv SuiteCRM-7.12.1 /var/www/html/suitecrm

Als Nächstes änderst du die Besitz- und Zugriffsrechte für das SuiteCRM-Verzeichnis:

chown -R www-data:www-data /var/www/html/suitecrm
chmod -R 755 /var/www/html/suitecrm

Wenn du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.

Apache für SuiteCRM konfigurieren

Als Nächstes musst du Apache so konfigurieren, dass SuiteCRM im Internet gehostet wird. Dazu erstellst du mit dem folgenden Befehl eine Konfigurationsdatei für den virtuellen Apache-Host:

nano /etc/apache2/sites-available/suitecrm.conf

Füge die folgenden Zeilen hinzu:

<VirtualHost *:80>

 DocumentRoot /var/www/html/suitecrm
 ServerName suitecrm.example.com

 <Directory /var/www/html/suitecrm>
    Options FollowSymLinks
    AllowOverride All
 </Directory>

 ErrorLog /var/log/apache2/suitecrm-error.log
 CustomLog /var/log/apache2/suitecrm-access.log common

</VirtualHost>

Speichere und schließe die Datei und aktiviere dann die Konfigurationsdatei für den virtuellen Host von SuiteCRM mit folgendem Befehl:

a2ensite suitecrm.conf

Als Nächstes musst du den Apache-Dienst neu laden, damit die Konfigurationsänderungen übernommen werden:

systemctl reload apache2

Um den Status des Apache-Dienstes zu überprüfen, führe den folgenden Befehl aus:

systemctl status apache2

Du erhältst die folgende Ausgabe:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-11-19 16:36:48 UTC; 4s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 16290 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 16296 (apache2)
      Tasks: 6 (limit: 4679)
     Memory: 15.5M
        CPU: 99ms
     CGroup: /system.slice/apache2.service
             ??16296 /usr/sbin/apache2 -k start
             ??16297 /usr/sbin/apache2 -k start
             ??16298 /usr/sbin/apache2 -k start
             ??16299 /usr/sbin/apache2 -k start
             ??16300 /usr/sbin/apache2 -k start
             ??16301 /usr/sbin/apache2 -k start

Nov 19 16:36:48 debian11 systemd[1]: Starting The Apache HTTP Server...

Nachdem du den Apache-Webserver konfiguriert hast, kannst du auf die SuiteCRM-Weboberfläche zugreifen.

Zugriff auf die SuiteCRM-Weboberfläche

Öffne nun deinen Webbrowser und gib die URL http://suitecrm.example.com ein, um auf die SuiteCRM-Web-Oberfläche zuzugreifen. Du solltest den folgenden Bildschirm sehen:

Lizenz

Akzeptiere die Lizenzvereinbarung und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

Systemprüfung

Vergewissere dich, dass alle Häkchen auf OK stehen, und klicke dann auf die Schaltfläche Weiter, um fortzufahren. Du solltest die SuiteCRM-Konfigurationsseite sehen:

Datenbank- und Standortkonfiguration

Demo-Termin

SMTP-Einstellungen

Systemgebietsschema

Gib deine Datenbankinformationen, Admin-Benutzerdetails, SMTP-Server-Spezifikationen, Branding-Details und Site-Sicherheitseinstellungen ein und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:

SuiteCRM Konfigurationsdatei

Klicke auf die Schaltfläche Weiter. Du solltest die SuiteCRM-Anmeldeseite sehen:

SuiteCRM Anmeldung

Gib deinen Admin-Benutzernamen und dein Passwort ein und klicke auf die Schaltfläche LOG IN. Auf dem folgenden Bildschirm sollte das SuiteCRM-Dashboard zu sehen sein:

Dashboard

SuiteCRM mit Let’s Encrypt SSL sichern

Nachdem du Apache konfiguriert hast, solltest du deine Website mit dem SSL-Zertifikat von Let’s Encrypt sichern. Dazu musst du den Certbot-Client in deinem System installieren. Certbot ist ein einfach zu bedienender Client, der ein Zertifikat von Let’s Encrypt, einer offenen Zertifizierungsstelle, die von der EFF, Mozilla und anderen ins Leben gerufen wurde, abruft und es auf einem Webserver bereitstellt. Mit dem Certbot Let’s Encrypt Client kannst du das SSL-Zertifikat für deine Domain ganz einfach herunterladen, installieren und erneuern.

Du kannst den Certbot mit dem folgenden Befehl installieren:

apt-get install certbot python3-certbot-apache -y

Sobald der Certbot-Client erfolgreich installiert wurde, führe den folgenden Befehl aus, um das Let’s Encrypt SSL-Zertifikat für deine Website zu installieren:

certbot --apache -d suitecrm.example.com

Du wirst aufgefordert, deine gültige E-Mail-Adresse anzugeben und die Nutzungsbedingungen zu akzeptieren (siehe unten):

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y

Obtaining a new certificate
Performing the following challenges:
http-01 challenge for suitecrm.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/suitecrm-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/suitecrm-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/suitecrm-le-ssl.conf

Als Nächstes wählst du aus, ob der HTTP-Verkehr auf HTTPS umgeleitet werden soll oder ob Nginx so konfiguriert werden soll, dass der gesamte Verkehr auf einen sicheren HTTPS-Zugang umgeleitet wird, wie in der folgenden Ausgabe gezeigt:

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Gib 2 ein und drücke die Eingabetaste, um den Vorgang zu starten. Sobald die Installation abgeschlossen ist, solltest du die folgende Ausgabe erhalten:

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/suitecrm.conf to ssl vhost in /etc/apache2/sites-available/suitecrm-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://suitecrm.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=suitecrm.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/suitecrm.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/suitecrm.example.com/privkey.pem
   Your cert will expire on 2022-02-21. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all* of
   your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Fazit

Herzlichen Glückwunsch! Du hast SuiteCRM erfolgreich mit Apache und Let’s Encrypt SSL auf Debian 11 installiert. Jetzt kannst du SuiteCRM nach weiteren Funktionen durchsuchen. Wenn du noch Fragen hast, kannst du dich gerne an mich wenden.

Das könnte dich auch interessieren …