The history of Pandora FMS
Since our humble beginnings, Pandora FMS has overcome challenges that have strengthened and guided us towards growth. Every obstacle became an opportunity to innovate, and today, thanks to our effort and dedication, we continue to move forward with the same passion that inspired us from the beginning.
A story by Sancho Lerena
CEO and founder of Pandora FMS
It was 2001. I was twenty-five years old and was a fan of Linux.
At the time, I was working at AOL Spain as a production technician in the communications and security department, but my experience was mostly reduced to Checkpoint firewalls, so I learned a lot about pure networking with Cabletron and Cisco equipment.
My job at the time was to configure and manage the entire production networking environment. It was an entire data center with hundreds of Unix, Windows and high-end network equipment. Although the operations group used HPOpenview, it was impossible to have a global picture of everything, not even a “map”.
Thanks to my background in security and Linux, I made myself a place on the team, due to my ability to explore networks, entering systems and relating every part logically.
I then discovered that there was no decent tool for monitoring heterogeneous environments with complex network topology
I used a lot of MRTG and developed scripts with RRDTool, which helped me in painting graphs representing main communications systems (Routers, Equipment RAS high-end connectivity between VPN, firewalls, etc.), things OVO didn’t or wouldn’t do as it seemed complicated to make any changes.
Afterwards I started working at BBVA. In this new job, my tasks were more related with the world of security and systems and I came into serious contact with AIX and Solaris. The monitoring tools used by the corporation were the Big4: they had it all, but it was simultaneously a very fragmented framework.
The division of departments was planned to binomial: communications or systems, and each team was oriented differently, using different tools and different methodologies.
From security, I didn’t have access to any of those tools to monitor my systems (Firewalls, IDS, Unix environments, Windows, etc), so I had no choice but to explore new ways to complete the task at hand.
I became a specialist in firewall piercing techniques, that later helped me out in understanding and overcoming the challenges of complex network topologies, and which have added to what are now parts of the architecture design in Pandora FMS
Based on my own experience in logs and event collection tools I saw that all agent-based systems crashed due to their rigid requirements, recent Java-based machines or because of binary package distribution. In many production environments, it was impossible to upgrade versions, install packages on the system or install things as the root user. Nagios wasn’t even close to what I needed or imagined. Since then, I’ve found once and again many systems with uptimes that took several years, which of course nobody wanted to even look at.
The father of Pandora FMS:
ARENA
The first integrated software concept that satisfied our needs was “Arena” . It was an environment that gathered data sent by some precarious agents written in KSH.
This data was not even standardized; it was sent in plain text and separated by dotted lines “—-“. The server was developed in Perl, made by a colleague of the Department of logical security (Juan H.) and included a frontend in PHP that, in fact, was made from some of my first pieces of code written in PHP.
I knew some web programming by then, but my experience was very poor and responded to very old paradigms (CGI Programming in C and rudimentary HTML in Netscape servers). It was also my first contact with MySQL as my only background then had been my work on Sybase databases.
The birth of Pandora FMS
The needs were growing and the architecture and design just didn’t fit. On the other hand my partner -Juan H.- withdrew from the project and I considered starting the whole idea again from scratch with another design.
That day, December 2002, Pandora was born, but it was just a hobby to occupy my idle time, which at that time I had plenty of.
With the help of a partner (Sergio I.), we created the first Windows agent, based on Windows Scripting Host and coded using VBScript. Needless to say, that was only the tip of the iceberg compared to what it would years later become.
In fact, it had many initial issues. I developed the server from scratch, using Perl. I had used Perl scripts in the past to develop small, closely related systems, audit tools, brute force scripts, network scanning, and auditing.
Therefore part of these codes were included in Pandora, and Goliath as well, a WEB engine that makes synthetic transactions. But still, my experience with Perl at that time was limited.
Slowly, and with the help of some friends, we created something with documentation to get by, and, at the time, I was showing the project to co-workers and acquaintances who, thanks to their feedback, helped shape the released version of Pandora FMS.
Internally, banks began to see this as a useful tool to get an exact picture of their security systems, especially Checkpoint firewalls and AIX environments.
The initial project was called “Pandoramon”.
Pandora FMS as a company
In 2002 I had tried to set up a company based on a software we had developed for Internet remote surveillance for guards (BabyCam), and in 2004 a security consulting company (Ip4All) but neither came to fruition.
In mid-2005 I decided to make a professional living from Pandora, offering network auditing services, custom development, security software installations, etc. At this point there is still no concept of “Enterprise version”.
The business model is based on offering services around two base products: Pandora and Babel. Babel was another software with a similar philosophy, oriented to system hardering and security dashboards.
Together with David Villanueva, a former colleague, we decided to set up Artica. I left my great job as a senior specialist consultant at the bank. From this point on everything goes faster and faster, Ártica Soluciones Tecnológicas is officially founded in November 2005.
The first beginnings are hard, and Pandora is nothing more than an anecdote for my first clients. I dedicate myself to observe their needs and learn from real problems in different environments, always linked to the security world.
One of the first things we did was to rename the project to Pandora. At the end of 2006 we added the FMS tag because “Pandora” was too generic.
The first years, Pandora had a very slow development, since it was not a software as such, but a purely “Free” project that served to introduce us in security consulting projects. Together we developed Babel Enterprise and it was not until early 2006 that the first professional programmer joined the staff: Esteban Sanchez. He started working full-time on Pandora FMS.
“Someone gave us a wise advice: Free Monitoring System was a very bad way to try to sell. So for the F, we chose the main quality of Pandora and very much related to the original logo (an octopus): F for Flexible.
During the first years, Esteban and I were the first programmers, until November 2007 when Ramon Novoa joined and we started to make Pandora a real software product. At this time we had collaborations from several people, one of the most important, Guruevi from New York and other people from South America, New Zealand and Japan.
Pandora FMS today
According to openhub.net as of November 2015, Pandora FMS has 11,000 commits made by over 50 people, with a total of 413,000 lines of code developed in PHP, Javascript, Perl, C ++, C, Java and Shellscript. Sourceforge has registered nearly one million downloads.
There have been many versions, patches, and updates, which during the last 12 years have transformed what was originally a project from a simple technician who strived to solve technical problems into something much larger.
Thanks to the collaboration of dozens of programmers, system technicians, users, and customers, today Pandora FMS is a professional tool for monitoring and managing large environments.
As a “Father” of this creature, I can only say: Thank you all for bringing us here!
Summary versions of Pandora FMS
Null
First public release: Pandora v0.8.1 (2004)
Until August 2004 we didn’t release our first version publicly, which was version 0.8. At that time the development team was composed of three people: Sergio I. bearing part of the initial agent VBScript for Windows, Raul M. helping on different code-related tasks, and myself, all working alongside each other to make this possible.
We had to rename the project “Pandoramon” on Sourceforge at the time (because Pandora was already taken).
The first version included features related strictly to agents (we still hadn’t included any kind of remote monitoring) and its interface was pretty basic, to say the least. It didn’t even have an ‘events’ feature, although the graphs were pretty decent. The data model is perhaps the part of the original which has gone through the least changes, but there’s no remaining trace of the original code.
It wasn’t until version 1.0 that we started using a VCS (Version Control System). And though this may sound shocking, the fact is that all of us involved in the project were coming from Networks and Systems, so we were quite the amateurs when it came to Software Development at the time.
Pandora v1.x (2004-2007)
We started using Subversion to manage the code. The first version of the agent was written in C ++ and developed by Esteban S.. The agent we had written in VBScript was discarded. Remote monitoring and SNMP trap collecting was added.
Reports, combined graphics, recon server and customized reports are combined with the previous features. Module and machine templates are designed for the recon server. There was a significant visual improvement, and Pandora started to be taken seriously.
Pandora v2.x (2008-2009)
In this version we created the ‘Tentacle Protocol’. We introduced an export server. ‘Tentacle’ (a unique file transfer protocol with ports assigned by IANA, 41121 / tcp) marked a before and after in making life easier for users when installing agents.
In version 2.x we made an attempt at creating a server version in C but it didn’t materialize, and we continued working on Perl code. Looking back on this, we can say it was a great decision. The main bottleneck in the server is SQL interaction, not internal operations.
Pandora v3.x (2010-2011)
Here we include the first ‘Enterprise’ version. It includes the possibility to remotely modify agent settings, PDF formatted reports, and some other features. We have customers monitoring environments with over 2000 agents.
Pandora v4.x (2012-2013)
Pandora v5.x (2014-2015)
We transition the project from SVN to GIT. We introduce the Satellite Server. Thanks to the satellite we achieved a rate of 500 check-ups per second in some specific environments, quite a big number. Plus, this was done through “headless” monitoring, which means the monitoring process was distributed and had no bidirectional connectivity.
Pandora v6.x (2016)
We introduce the ‘agent metadirectory’, integrated desktop remote access (through Pandora RC), remote access and management of servers and satellites, improvements in the dashboard, dynamic monitoring, and improvements in predictive monitoring
Pandora v7.x (2016-2024)
In 2024, Pandora FMS version 7.X was a significant step forward, integrating essential changes such as the exclusive use of MySQL® version 8 and PHP version 8. The Web Console interface was completely renewed, accompanied by internal improvements that reinforce security monitoring, hardware and software inventory management through Pandora ITSM, and the complete rewrite of key functionalities such as “Discovery PFMS .disk” and “Remote Monitoring and Management server” (RMM). These advances were made possible thanks to the combined efforts of a highly committed development, testing and documentation team, as well as the valuable feedback from our broad customer base, which our support department took care of in an exemplary manner. All this has consolidated Pandora FMS as a professional, reliable solution, ready to centralize operations in the most demanding monitoring environments, with the support of the Command Center.