The thing that sets pfSense apart from other competitors is the flexibility that it offers. You have a package manager, and there are so many options to choose from -whether it's security, a plugin, or even networking technologies. pfSense supports VPNs. It supports VLANs. It can be virtualized. It can run on physical hardware. You can be agnostic as to which vendors you're using. It is interoperable. It's a very versatile package and system. It's very easy to add features and configure them.
There's a graphical user interface that can be managed and used for almost every feature configuration item and function. There's also documentation on pfSense and NetGate's websites that outlines every configuration item package and configuration setting in extreme detail. There's also a strong community. The community has a support forum online. It is very easy to use.
I've witnessed the benefits pretty quickly. I started using it in production in 2012. Prior to that, I had used it personally from 2009 to 2011. That gave me time to kick the tires and see how it could be used. In 2012, there were very limited deployments of pfSense in the enterprise industry, and support was available, but not like it is now. So, by being able to use it personally, I saw where the benefit was. Then, when we deployed it in a production or enterprise environment, we were able to realize the benefits immediately. And those benefits were: security, supportability, and sustainability. Regarding security, it's backed with BSD, a well-known, tried and tested operating system, and is up to date on patches. It is much more user-friendly to configure than the competition, be it from Juniper or Cisco, HP or the other competitors that are out there. Sustainability is an extreme benefit. The feature parity, along with the cost and flexibility of being able to provide a variety of different hardware networking methods, pretty much sealed the deal.
The solution prevents data loss. pfSense offers an auto backup system, so your configuration and systems that you're running by default can be synchronized with pfSense and their cloud product, meaning that if you suffer a failure or a configuration issue that makes you need to roll back, you can actually rebuild a device or virtual appliance in a matter of minutes and have it back up and running just as it was. As far as other building features, it runs BSD, So you can use SFTP, which is a secure transfer protocol, as well as any other industry standard backup product. The main function that's built-in is the auto backup and restore functionality, which we use from time to time, and it's very helpful.
I use both the community and Plus versions of pfSense. For enterprise and production systems, I use pfSense Plus. I use that on both physical and virtual hardware. It works great. The pfSense community edition would be more for a testing environment or a personal deployment.
pfSense features that help to minimize downtime. pfSense comes with opportunities to configure for high availability. In the event of a failure, there are ways to bounce from one appliance or virtual appliance to the other. There is full documentation for that. It uses open standards. Also, on the individual appliances, there are wizards and configurations for WAN and multi-WAN failover bonding or anything in between. That includes failover for your Layer 3 routing firewall rules, filters, et cetera.
pfSense provides visibility that enables users to make data-driven decisions. pfSense supports many different monitoring and logging types. Out of the box, it can monitor. It also supports Syslog. It supports SMPP. You can create baseline reports and watch trends, and those trends could help you be prepared for an increase in bandwidth, routing capacity, or even CPU utilization for beefing up your security rules.
The visibility in pfSense helps you to optimize performance. You can get an accurate picture of what bandwidth is being used and determine where the bottleneck is. Performance isn't just bandwidth. It could be routing. It could be applications. It could even be firewall rules. This provides visibility into issues.
I've used pfSense on the Amazon EC two virtual machines in a limited capacity. I don't have any customers currently that are in production on AWS. However, if I did, I would certainly use their supported appliance or their virtual appliance on the marketplace.