Zammad Installer script

HI all,

I trust you are well.

I like Zammad but found it rather tedious to copy & paste (or even type) commands, then jump to another page (i.e. to get Elasticsearch installed), then back to the original one, etc… you get the idea.

I found some Ansible playbooks but they did not work as expected, so I decided to code a quick installer script for Zammad, a la old-school, to make my life easier and do the whole process in one go while I sit back and relax as the install process still requires some time…

You will find the script here:

Just do not expect anything too fancy. It just translates the instructions from the installation page, adds a few checks and that’s it!

I coded it on a CentOS 8 VM. It should, in theory, also work well on CentOS 7.
For other distros, you may need to adjust a few things though…

You may want to check/comment out the part where the self-signed SSL certificates are created, especially if you already have your own.

There is not much to say about it.

I hope this helps.

Should you find any bugs, or have ideas for improvement, etc etc, please either fork the repo and add those improvements yourself, or just let me know and I will do my best to implement them.

Feedback is also welcome :wink:

Stay safe and healthy!

Best regards,


Thanks so much for this. I tried to install Zammad earlier today but had so may issues trying to Google and fine out how to solve them but was able to complete the Installation only that I could not navigate to it on browser. Can you help for a version in Ubuntu for non-programmer like me?

you are welcome.

Ubuntu is in my TO-DO list… I will announce it as soon as I have the time to adjust it… or just make a bigger script covering several distributions…


Appreciated and looking forward to when it is released .

A quick note before hitting the sack…:slight_smile:

I have created a revamped version for Ubuntu systems and updated the file as well.
It has been tested to work on 18.06 at least.


1 Like

Thank so much for taking the time to make it available for newbies.

1 Like

My pleasure.
I know it is not as clean or fancy as I wanted it to be but it works on Ubuntu 18.10 at least.
Please let me know if you hit any bugs or errors…

Take care

Thank you so much for your work!

As long as I don’t have SSL certificates, can I just remove the variables and the SSL part?

Also, I’m surprised that you specify for CentOS8.

But according to the zammad documentation, only:
“Currently we support RHEL7 & CentOS7.”

When I do the installation “manually” with the documentation I always have the problem that I can’t get to the zammad login page via fqdn but only to Welcome to CentOS. If I enter the IP address (which is also configured in the DNS for fqdn) it works sometimes and sometimes not.

I’m not very familiar with Linux, so I couldn’t find out which mistake I make.

Actually, I find it a bit sad that such an “installer” was not provided by Zammad itself, but that’s probably because of the consulting prices…

So I can only repeat myself: Thanks a lot!

1 Like

CentOS 8 support has been added some months ago, however, the documentation currently can’t keep up with all the changes. Rather, I can’t.

1 Like

First of all thanks for the info!

Apparently it’s a global problem that no company manages to keep their documentation up to date… (Just changed my employer)

Please don’t take it amiss, but if it’s been supported for a few months now, it’s a bit sad that you didn’t manage to adapt the note at the beginning of the documentation.

Which actually raises the question for me:
Are my problems with the installation caused by the outdated documentation?

Is there anything to consider in the meantime that is not documented?

I haven’t had a look at your post (yet, the time thing… ;( ) but doubt that.
All documentations are, in terms of “installable or not” functioning.

We had quite some big changes within the docs and in terms of functionality lately. I tend to try to not touch the same page too often in a short time period. As I’m currently working on a rework of exactly that part it may be my fault.

Maybe the change also got lost, because up to now I was sure it was there. :wink:

As I said, I did not want to attack anyone with this and mistakes are human.

I was just a bit surprised because I had installed on CentOS8 the first time. Therefore I had put my problem on incompatibility with CentOS…

As mentioned before, I am not very familiar with Linux and if a manual says: “Follow all steps and it will work” - but it does not work afterwards, as described, then I assume that the error is mine.

So I have no other choice than to start all over again. In the meantime I have reinstalled Zammad for the 3rd time. (1x CentOS8 2x CentOS7) Nevertheless I always have the error that I only get to the setup of Zammad via localhost:3000.

If I enter the IP address or ticket.domain.local I only get to Welcome to CentOS!

I will now install a fourth time, but this time again on CentOS8.

What you’re describing rather sounds like issues with the configuration with your webserver.
If you have a default installation we will automatically write a vHost configuration for you.

If you don’t, you’ll have to get a config from the contrib directory within Zammad.
Don’t forget to adjust the server_name.

@Shuriken91 the installer script will generate self-signed certificates for you out of the box. They will be located under /etc/nginx/ssl/ and the filenames will be made up from your current hostname. You will get a warning message from your browser but it is fine to ignore it and accept the risks.

Running HTTP (so, without SSL support) is discouraged, even if you use the server at home…
If you ever get your own SSL certs, just replace the existing files. Don’t forget to restart nginx! :slight_smile:

Indeed, the docs only mention CentOS 7 but I did some investigations and found out that the CentOS 8 repo file was also available… and as everyone should be migrating to CentOS 8 anyway, I decided to go that way.

Yep, running the manual process can get tricky, specially if you are new to Linux and get lost following the instructions. Hence me coding this installer script… well, I really did it because I am lazy and always try to automate as much as I can :slight_smile:

You are more than welcome! Happy to hear that it helped other Zammad family member! :slight_smile:


The installer script will do everything automagically :slight_smile:

Have you guys tried it out yet? :slight_smile:

Feel free to include it in your toolkit.


What do you mean with:
“If you don’t, you’ll have to get a config from the contrib directory within Zammad.”

I install elasticsearch as described above, followed by the Zammad installation.
Firewall is configured.
And then I set via “vim /etc/nginx/conf.d/zammad.conf”
the server_name ticket.domain.local

Am I still missing something?

This is a common issue when you are new to Linux.
Companies and the so called Community do their best to keep documentation as accurate as possible.
Sometimes they are overwhelmed by lots of work, sometimes, like in my case, it’s just a person doing something in his/her free time… this means that help may not always be available or that you will experiment delays getting an answer…
With that said, the guys at Zammad had made a massive job by releasing their tool for us all to use it. Of course, you still can purchase support from them and use the enterprise version.


Oh no, your installer even generates the certificates?
I’ve probably spent half a day with LetsEncript now… without success. :joy:

As already mentioned, I haven’t been with this employer for that long and unfortunately I don’t have access to everything yet and have to beg the boss for every little thing to implement it. (Starting with the DNS entry…)

This makes the work even more annoying and if you can’t even get a result with a manual, it’s quite frustrating.

In the old company we also relied on Zammad, but there our “customers” were our employees and a colleague was responsible for hosting Zammad.

That’s actually how I became a big fan of Zammad and I would like to use that in the new company. But here I would also have to make it accessible to external customers.

I’ll go beg for a subdomain so I can try your installer again with SSL certificates.

Again: Thank you so much for spending your free time for newbies like me :slight_smile:

Hi, I will be interested in your use case both in your former employment and now.
I have been using Osticket and now considering Zammad, how did you manage not being able to use Ticket Types tied to SLAs or is that a Zammad feature that I don’t see or understand as yet?

in case you would like to share.

That’s actually how I became a big fan of Zammad and I would like to use that in the new company. But here I would also have to make it accessible to external customers.

If you want to make your Zammad server accessible to external customers, I would suggest you get some real SSL certificates. The ones generated by the installer script are self-signed and should be good enough to get you started but they are usually not that good when exposing your system to the outside world. Your communications will still be encrypted (HTTPS) but some people outside your company, or even your colleagues/managers, could not react so well to those warning messages on their web browsers… you know: users! :smiley:

Again: Thank you so much for spending your free time for newbies like me

As I also said: my pleasure. We all were newbies at some point in our lives :slight_smile: