SuiteCRM je open source CRM (Customer Relationship Management) software založený na PHP. Je to fork populárního CRM softwaru 'SugarCRM' a stal se populárnějším poté, co se 'SugarCRM' rozhodl zastavit vývoj bezplatné verze. SuiteCRM byl nominován jako nejlepší open source CRM software na BOSSIE 2015 a 2016.
V tomto tutoriálu vám krok za krokem ukážu, jak nainstalovat open source CRM 'SuiteCRM'. Software bude spuštěn pod webovým serverem Nginx s databází MariaDB a pomocí systému Ubuntu 16.04.
Co uděláme
- Nainstalujte webový server Nginx
- Nainstalujte a nakonfigurujte PHP-FPM
- Nainstalujte a nakonfigurujte MariaDB
- Stáhněte si a nakonfigurujte SuiteCRM
- Webový instalační program SuiteCRM
- Poslední kroky
Předpoklady
- Server Ubuntu 16.04
- Oprávnění uživatele root
Krok 1 – Instalace webového serveru Nginx
SuiteCRM je webový software a potřebuje webový server. Pro tento software můžeme použít Apache nebo Nginx. V tomto tutoriálu budeme místo webového serveru Apache používat webový server Nginx.
Připojte se k serveru Ubuntu a aktualizujte úložiště.
ssh [e-mail chráněný]
aktualizace sudo apt
Nyní nainstalujte webový server Nginx pomocí příkazu apt následujícím způsobem.
apt install -y nginx
Po instalaci spusťte nginx a povolte jeho automatické spouštění při každém startu systému.
systemctl spustit nginx
systemctl povolit nginx
Webový server Nginx je nainstalován a běží pod výchozím HTTP portem 80. Zkontrolujte jej pomocí příkazu netstat, nebo můžete použít curl k zobrazení stavového kódu HTTP.
netstat -plntu
curl -I localhost
Krok 2 – Instalace a konfigurace PHP-FPM
SuiteCRM je kompatibilní s více verzemi PHP. V tomto tutoriálu budeme používat nejnovější verzi PHP 7.0 pro instalaci SuiteCRM.
Nainstalujte PHP a PHP-FPM 7 spolu s dalšími požadovanými rozšířeními pomocí následujícího příkazu apt.
apt install -y php7.0-fpm php7.0-mcrypt php7.0-imap php7.0-curl php7.0-cli php7.0-mysql php7.0-gd php7.0-xsl php7.0 -json php7.0-intl php-pear php7.0-dev php7.0-common php7.0-mbstring php7.0-zip php-soap libcurl3 curl
Po dokončení instalace přejděte do konfiguračního adresáře PHP a upravte soubory php.ini pro konfiguraci 'cli' i 'fpm'.
cd /etc/php/7.0/
Upravte soubory php.ini.
vim cli/php.ini
vim fpm/php.ini
Změňte hodnotu maximální velikosti nahrávaného souboru. SuiteCRM potřebuje alespoň 6 MB, ale jako hodnotu nastavíme 100 MB.
upload_max_filesize =100 milionů
Odkomentujte řádek CGI (zobrazený níže) a změňte hodnotu na 0.
cgi.fix_pathinfo=0
Pro konfiguraci cesty relací odkomentujte řádek níže.
session.save_path ="/var/lib/php/sessions"
A je to. Uložte tyto změny a ukončete.
Nyní musíme vytvořit nový adresář pro soubory relací PHP a změnit vlastníka adresáře na uživatele a skupinu „www-data“.
mkdir -p /var/lib/php/sessions
chown -R www-data:www-data /var/lib/php/sessions
Konfigurace PHP a PHP-FPM byla dokončena. Nyní spusťte službu a povolte její spuštění při každém spuštění systému.
systemctl spustit php7.0-fpm
systemctl povolit php7.0-fpm
Ve výchozím nastavení na systému Ubuntu poběží PHP-FPM pod souborem sock namísto použití systémového portu. Zkontrolujte to pomocí příkazu netstat níže.
netstat -pl | grep php
A ujistěte se, že výsledek, který vidíte, je podobný tomu, co je zobrazeno na následujícím snímku obrazovky.
Krok 3 – Instalace a konfigurace MariaDB
V tomto kroku nainstalujeme MariaDB a nakonfigurujeme heslo uživatele root. Poté nakonfigurujte novou databázi pro instalaci SuiteCRM.
Nainstalujte MariaDB pomocí příkazu apt níže.
apt install -y mariadb-server mariadb-client
Po instalaci spusťte službu a povolte její spuštění při každém spuštění systému.
systemctl spustit mysql
systemctl povolit mysql
Dále nakonfigurujte root heslo MariaDB pomocí příkazu 'mysql_secure_installation', jak je uvedeno níže.
mysql_secure_installation
Budete dotázáni na konfiguraci, napište 'Y' a stiskněte 'Enter'.
Nastavit heslo root? [A/n] A
Nové heslo:
Znovu zadejte nové heslo:
Odebrat anonymní uživatele? [A/n] A
Zakázat vzdálené přihlášení root? [A/N] A
Odebrat testovací databázi a získat k ní přístup? [A/n] A
Znovu načíst tabulky oprávnění? [A/n] A
Kořenové heslo MariaDB bylo nakonfigurováno.
Nyní vytvoříme novou databázi a uživatele pro instalaci SuiteCRM. Vytvořte databázi s názvem 'suitecrm_db' a nového uživatele 'crmadmin' s heslem 'hakase-labs123'. Připojte se k mysql shellu a spusťte následující mysql dotazy.
mysql -u root -p
Zadejte své heslo:
VYTVOŘTE DATABÁZI suitecrm_db;
VYTVOŘTE UŽIVATELE 'crmadmin'@'localhost' IDENTIFIKOVANÉHO PODLE 'hakase-labs123';
UDĚLEJTE VŠECHNA PRIVILEGIA NA suitecrm_db.* TOMU 'crmadmin'@'localhost';
FLUSH PRIVILEGES;
Konfigurace databáze MariaDB pro instalaci SuiteCRM byla dokončena.
Krok 4 – Stažení a konfigurace SuiteCRM
V tomto kroku provedeme několik úkolů, které připraví systém na instalaci SuiteCRM. Stáhneme si zdrojový kód SuiteCRM, nakonfigurujeme UFW Firewall, vygenerujeme certifikáty Letsencrypt a nakonfigurujeme virtuálního hostitele nginx pro SuiteCRM.
- Stáhněte si zdrojový kód SuiteCRM
Zdrojový kód suiteCRM je k dispozici na Github. Ujistěte se, že je ve vašem systému nainstalován příkaz git. Nebo pokud nemáte balíček git, nainstalujte jej pomocí příkazu apt níže.
apt install -y git
Nyní přejděte do adresáře '/opt' a naklonujte úložiště pomocí následujícího příkazu git clone.
cd /opt/
klon git https://github.com/salesagility/SuiteCRM.git suitecrm
Přejděte do adresáře suitecrm a vytvořte nový adresář 'cache'. Poté změňte oprávnění některých souborů a adresářů a nakonec musíme změnit oprávnění k vlastnictví pro adresář 'suitecrm' na uživatele a skupinu 'www-data'.
cd /opt/suitecrm
mkdir -p /opt/suitecrm/cache
chmod -R 775 cache vlastní moduly témata nahrávání dat config_override.php
chown www-data:www-data -R /opt/suitecrm
Zdrojový kód SuiteCRM byl stažen.
– Konfigurace brány UFW Firewall
Na Ubuntu budeme používat firewall ufw. Otevřete nové porty HTTP, HTTPS a SSH pomocí příkazů ufw, jak je uvedeno níže.
ufw povolit ssh
ufw povolit http
ufw povolit https
Nyní spusťte firewall a povolte jeho spuštění při každém spuštění systému pomocí příkazu ufw enable.
ufw enable
Napište 'y' a stiskněte Enter pro aktivaci brány firewall.
Chcete-li zkontrolovat stav brány firewall, použijte příkaz ufw status.
Stav ufw
A získáte stav brány firewall včetně toho, jaké porty jste přidali.
– Vygenerujte certifikáty Letsencrypt
V tomto tutoriálu bude SuiteCRM používat HTTPS pro bezpečnější spojení mezi klientem a serverem. Pro tento účel budeme používat bezplatný certifikát SSL od společnosti Letsencrypt.
Před vygenerováním souborů certifikátů musíme do systému nainstalovat klientského agenta letsencrypt. Je k dispozici v úložišti Ubuntu, takže jej nainstalujte pomocí příkazu apt níže.
apt install -y letsencrypt
Po instalaci letsencrypt musíme před generováním souborů certifikátu zastavit službu nginx.
systemctl stop nginx
Nyní vygenerujte soubory certifikátu SSL pomocí příkazu letsencrypt níže.
letsencrypt certonly --standalone -d suitecrm.hakase-labs.co
Poznámka: –samostatný Tato možnost vytvoří v systému dočasný webový server, takže před generováním souborů certifikátu musíme webový server Nginx zastavit.
Budete dotázáni na vaši e-mailovou adresu pro obnovení upozornění. Zadejte svou e-mailovou adresu a klikněte na 'OK'.
Pro smlouvu Letsencrypt vyberte 'Agree' a stiskněte Enter.
V adresáři '/etc/letsencrypt/live/domain.com' byl vygenerován nový Letsencrypt SSL.
– Konfigurace virtuálního hostitele Nginx pro SuiteCRM
Přejděte do konfiguračního adresáře Nginx a vytvořte nový soubor virtuálního hostitele 'suitecrm' v adresáři 'sites-available'.
cd /etc/nginx
weby vim-dostupné/suitecrm
Zde vložte následující konfiguraci Nginx.
# Konfigurace serveru - hakase-labs
server {
listen 80;
název_serveru suitecrm.hakase-labs.co;
# Automaticky přesměrovat na HTTPS
return 301 https://$host$request_uri;
}
# Nginx SSL pro SuiteCRM
server {
název_serveru suitecrm.hakase -labs.co;
# Povolit http2
listen 443 http2 ssl;
# Konfigurace SSL
ssl_certificate /etc/letsencrypt/live/suitecrm. hakase-labs.co/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/suitecrm.hakase-labs.co/privkey.pem;
ssl_protocols TLSv1 TLSv1.2;ssl_ciphers HIGH:!aNULL:!MD5;
client_max_body_size 50M;
index index.php index.html index.htm;
root /opt/suitecrm;
umístění / {
root /opt/suitecrm;
index index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
error_log /var/log/nginx/suitecrm.irsyadf.me.error.log;
umístění =/50x.html {
root /var/www/html;
}
## S obrázky a statickým obsahem se zachází jinak
umístění ~* ^.+\.(jpg|jpeg|gif|css|png|js|ico|xml| svg|wgoff2)$ {
access_log off;
vyprší max.;
root /opt/suitecrm;
}
umístění ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
c_scriptro SCRI_NAME $gi_parametr SCRI_NAME $gi_parag_FI
include fastcgi_params;
}
umístění ~ /\.ht {
odmítnout vše;
}
}Uložte a ukončete.
Nyní aktivujte virtuálního hostitele, otestujte konfiguraci a ujistěte se, že nedošlo k chybě. Poté restartujte webový server.
ln -s /etc/nginx/sites-available/suitecrm /etc/nginx/sites-enabled/
nginx -t
systemctl restart nginx
Konfigurace systému pro instalaci SuiteCRM byla dokončena.
Krok 5 – Webový instalační program SuiteCRM
Otevřete webový prohlížeč a do adresního řádku zadejte URL SuiteCRM, moje je suitecrm.hakase-labs.co
Budete přesměrováni na připojení HTTPS a stránku install.php.
Na stránce, která se objeví, uvidíte licenci GNU AFFERO – zaškrtněte 'I Accept' a klikněte na 'Next'.
Nyní získáte stránku o systémovém prostředí pro instalaci SuiteCRM.
Ujistěte se, že jsou všechny výsledky 'OK', jak je znázorněno na obrázku níže.
Pokračujte kliknutím na 'Další'.
Následuje konfigurace databáze a administrátora. Zadejte informace o databázi, název databáze 'suitecrm_db', dbuser 'crmadmin' s heslem 'hakase-labs123'. A zadejte svého administrátora, heslo a e-mail, jak je uvedeno níže.
Přejděte dolů a klikněte na 'Další' pro pokračování v instalaci SuiteCRM.
Počkejte chvíli na instalaci a po jejím dokončení budete přesměrováni na přihlašovací stránku, jak je uvedeno níže.
Zadejte své administrátorské uživatelské jméno a heslo a klikněte na tlačítko 'Přihlásit se'.
Nyní budete moci vidět výchozí panel SuiteCRM.
SuiteCRM byl nainstalován s webovým serverem Nginx v systému Ubuntu 16.04.
Krok 6 – Poslední kroky
Pro tento poslední krok vytvoříme novou úlohu Cron pod www-data user.
Spusťte níže uvedený příkaz a přidejte novou úlohu Cron.
sudo crontab -e -u www-dataNíže vložte konfiguraci skriptu Cron.
* * * * * cd /opt/suitecrm; php -f cron.php> /dev/null 2>&1Uložit a odejít. Poté restartujte službu Cron.
systemctl restart cronInstalace SuiteCRM na Ubuntu 16.04 byla dokončena.
Ubuntu