Skip to content

Faveo Helpdesk Installation on CentOS 7 with Nginx

visruth edited this page Jan 2, 2018 · 2 revisions

Introduction

This document will list on how to install Faveo Help Desk on a new CentOS server.

We will install following dependencies in order to make Faveo Help Desk work

  • Apache/NGINX
  • PHP 7.1
  • PHP Extensions:
  • MySQL/MariaDB
  • Composer
  • Cron Job

We are using vi editor throughout to open and edit file, you can use nano editor also

iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT

iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT

iptables -A INPUT -p tcp --dport 443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -p tcp --sport 443 -m conntrack --ctstate ESTABLISHED -j ACCEPT

Create a user for faveo and update all the repos.

We will create web user in this step

useradd -r www-data && usermod -G www-data www-data

Download EPEL keys

wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 https://www.faveohelpdesk.com/user-manual/code/centos7/RPM-GPG-KEY-EPEL-7.txt

wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-remi https://www.faveohelpdesk.com/user-manual/code/centos7/RPM-GPG-KEY-remi.txt

Update PHP Repo

wget -O /etc/yum.repos.d/remi-php56-safe.repo https://www.faveohelpdesk.com/user-manual/code/centos7/repoall.txt

Update Yum

yum update -y

Install Common Packages and PHP with Extensions

In this step we install following

  • PHP and Extensions
  • MariaDB
  • Git
  • Curl
  • Openssl

Start Installation

yum install php-cli phpunit php-fpm php-mysql php-mcrypt php-gd php-json php-curl php-imap php-mbstring php-gd php-xmlrpc php-pdo nginx git sl mlocate dos2unix bash-completion openssl mariadb-server -y

systemctl stop nginx && systemctl stop php-fpm

Configure Nginx

Create copy of Nginx default config file

mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.back

wget -O /etc/nginx/nginx.conf https://www.faveohelpdesk.com/user-manual/code/centos7/nginx-conf.txt

Edit domain

wget -O /etc/nginx/conf.d/faveo-helpdesk.conf https://www.faveohelpdesk.com/user-manual/code/centos7/faveo-helpdesk-conf.txt

Open the file and replace SERVERNAME with you domain name or IP

Remove default config file

rm -rf /etc/nginx/conf.d/default.conf

Create config file for PHP FPM

wget -O /etc/php-fpm.d/faveo_php.conf https://www.faveohelpdesk.com/user-manual/code/centos7/faveo_php-conf.txt

Create a folder for Faveo and clone Faveo Help Desk Community latest release from Github to it

mkdir -p /opt/faveo/log && mkdir -p /opt/faveo/run

git clone https://github.com/ladybirdweb/faveo-helpdesk.git /opt/faveo/faveo-helpdesk

chown -R www-data:www-data /opt/faveo

chmod -R 755 /opt/faveo

chmod -R 755 /opt/faveo/faveo-helpdesk

chmod -R 755 /opt/faveo/faveo-helpdesk/storage

rm -rf /opt/faveo/faveo-helpdesk/example.env

Start Mysql and Create Database for faveo

service mysql start

mysql_secure_installation

mysql -u root -p

CREATE DATABASE faveo;

GRANT ALL PRIVILEGES ON faveo.* TO 'faveouser'@'localhost' IDENTIFIED BY 'faveouserpass';

FLUSH PRIVILEGES;

quit

Start all services

setenforce 0

iptables -F

service php-fpm start

service nginx start

service mysql start

Install Composer by changing the directory to faveo folder

curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

Setup Cron

Path can vary according to your server. This cron is set for every 1 minute fetching.

crontab -e

* * * * * php /opt/faveo/faveo-helpdesk/artisan schedule:run >> /dev/null 2>&1

Install Faveo

Now you can install Faveo via GUI Wizard or CLI.

You can access Faveo url in the browser

Please make note of that you have reset the firewall and iptables to your specifications

Installation and Upgrade Guide

Administrator's Guide

Agent's Guide

Email Integration

Release & Upgrade Notes

Known Issues

Contribute & Feedback

Knowledge Base

Third Party Integration

Plugins

API

Clone this wiki locally