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:
Akzeptiere die Lizenzvereinbarung und klicke auf die Schaltfläche Weiter. Du solltest die folgende Seite sehen:
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:
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:
Klicke auf die Schaltfläche Weiter. Du solltest die SuiteCRM-Anmeldeseite sehen:
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:
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): hitjethva@gmail.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 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.