When I set out to find a budget 1u rack mounted Firewall to install RouterOS on, I discovered the WatchGuard Firebox. I have zero experience using Watchguard products, but I discovered there is quite a following for this hardware platform and discussion on pfSense related websites, blogs and forums discussing various methods of modifying these Firebox units, including manipulating the bios, adding vga outputs, keyboard inputs, and hard disks, I figured this looks like fun, so what the heck. I ordered a Watchguard Firebox x1250e off ebay for around $100. The good news is that you wont need to haggle with any of that nonsense the pfSense crowd has to deal with, in order to get this working.
I googled around a bit to find out as much as I could about the procedures and if anybody else had any success at doing what I was about to attempt. I could find very little related to Mikrotik RouterOS being installed on WatchGuard Firebox units. Besides a few posts from a decade ago on Mikrotiks forums about a few guys who got it to work back in the day, there was nothing. Which is precisely why I am writing this article, so that the next person whos googling, will find this article and know, that the answer is YES, you can do it, and YES its very easy.
The unit arrived with a bad power supply, which I had to order a replacement for, but once I had the replacement power supply installed, I quickly got the unit up and began testing it. I wasnt able to login to the web interface due to some custom configuration the previous owner had done, not even after performing a factory reset of it, following the procedures on Watchguards website for factory reset, the damn thing still had somebodies configuration loading, presumably from a configuration somewhere on the cf card.
So, I simply loaded up Mikrotik’s Netinstall software from within Windows and installed RouterOS directly to the stock 512mb CF Card that shipped with the Firebox x1250e.
I placed the CF card which now had RouterOS on it, back into the Firebox x1250, turning it on, and I waited a bit, the unit seemed to not be doing anything, I began to become concerned, but then I observed the hard disk LED indicator light on the front of the Firebox x1250e unit was pegged solid, but it would flicker occasionally, indicating to me that the magic was happening.
I decided to remain patient, and leave it alone, and Im glad that I did. After waiting about 10 minutes in total, and hearing a system beep at the end of each boot up, I concluded that it took about 2-4 reboots for RouterOS to configure itself before it was finished installing and setting up. ( It boots REALLY fast after completing the install as a matter of fact.)
RouterOS x86 finally installed on my unmodified Watchguard Firebox x1250e. I then proceeded to install the optional LCD software package which can be downloaded from RouterOS.com And after tinkering around a bit, I discovered there is a selection of different LCD types from within the LCD Package menu, the vitek-vc2025-2 was the option that worked for the x1250e unit that I had. It just worked, like a charm. Good job Mikrotik!
Next, I purchased an x86 Level 4 RouterOS license from Roc-Noc and I am extremely happy with the outcome. And just a heads up to new customers, you will need to wait a while for RocNoc to email you your license, but dont worry, they will, and if you are impatient like me, just email them, a rep will send you your license relatively quickly.
Next, I proceeded to setup firewall rules and schedule the automatic DNS Ads and Malicious blacklist updates from Squidblacklist.org. I have also decided to order a replacedment LCD to upgrade the ugly yellow display.
DNS filtering with Firebox x1250e & Mikrotik RouterOS:
As you can see in the image above, I have easily imported three DNS blacklists from Squidblacklist.org so that I can filter some unwanted content. I selected three categories, Ads, Malicious, and “CP”. Over 107,643 domain names are now blacklisted in our DNS server and will not resolve.
The impact of this many entries is that we now have consumed approx 600mb of system memory, and minimal hd or cpu usage. DNS Response times are as fast as they can be, and the system performance is rock solid. I have scheduled daily updates for these blacklists as well, using system scheduler.
Booting the Router is considerably longer, due primarily to the poor io bandwidth of the CF card while the OS loads up the DNS server with thousands of static entries. Once it is up and running however, its done. After the RouterOS boots completely, there is a 5 minute additional waiting period of heavy cpu usage befoe the DNS server will begin responding to DNS Queries. I recommend installing a mini PCI-e SSD, the same type found in laptops. This would most certainly alleviate the issue with the CF card read/write IO.
April 3 2017: Upgrades arrive.
Ok so the above mentioned parts are here. I was eager to update the blog post, however, I still have to wait until after midnight after everybody goes to sleep before I interrupt service to pull the unit out of the rack and get the Firebox x1250e upgraded. Otherwise I will never hear the endless complaints about the outtage.
Installing the memory should be a snap, I suspect the unit may support larger modules, I will test a single 2gb module I happen to have here in the lab during the procedure, if it works, I will order a second matching stick and get the unit maxed at 4GB. But the documentation says the unit only supports a maximum of 1gb per slot, which I doubt is accurate. Theres only one way to find out. (Ill edit this section of the article after I find out.)
Update: Maximum Memory Determined.
I have tested two 2GB sticks of DDR2 PC-6400 in the Firebox x1250e, and I have concluded that the maximum installable memory in the Firebox model x1250e to be 2GB. Which is a bit annoying because the unit does post up with a single 2GB stick in either slot, but when I tried to place both sticks in at the same time, the unit simply wouldnt post at all. So I decided to reinstall both 1GB sticks and Im actually satisfied with that, for my own use as a gateway, Im not even consuming half of that yet.
It seemed like it took forever to get the cpu from Shenzhen China. But its here, a Pentium M 780 2.26ghz/2M/533. No speed demon by todays standards, but its certainly twice as much cpu power as the 1.3ghz Celeron that shipped with the unit and will effectively max the cpu out. There is no faster cpu made for this hardware architecture without getting into some insane overclocking voodoo.
Upgrading the Firebox x1250e CPU:
There are some jumpers on the motherboard which must be switched. It is clearly indicated on the motherboard which dip switches must be flipped for a Dothan or a Banias core cpu. Now the Celeron that shipped with the unit is a Banias core, and the Pentium M 780 is a Dothan core. So, I set the switches appropriately as indicted on the diagram and booted up, eagerly anticipating 2.2ghz.
Problems with the Pentium M 780
RouterOS reports that the Pentium M 780 cpu is running at 1700mhz, when it should be at running at its rated speed of 2.26ghz. So I scratched my head, and I thought for a moment and got to work. I shut down the unit and began playing around with the dip switches to see if I could get it to post up at the right speeds with some sort of magical, undocumented combination of dip switch settins, like we old timers used to do back in the socket 7 era with Pentium and K6 chips.
After exhausting every possible combination of dip switch settings, I determined that I could not, and after a dozen frustrating reboots, exhausting every possible combination of different dip settings, and waiting each time. I finally just set it as directed on the motherboard diagram for a Dothan core, put it back in the rack and fired it up. This Firebox x1250e was apparently going to run at 1700mhz whether I liked it or not.
I can only assume one of two possibilities. This motherboard may not support the 533fsb of the Pentium M 780 and the guy who discussed using a 533fsb cpu upgrade in this unit on the pfsense forum was full of crap. It is entirely possible that the BIOS needs to be updated because it simply doesnt have the microcodes for this cpu, and it just doesnt know what to do with it. The Pentium M 780 has a 17x multiplier, and that would explain why its running at 1700mhz(Quad Rate DDR 4x 100mhz x 17 Multiplier = 1700mhz).
Upgrading the BIOS on this mainboard isnt going to be as simple as it would be it it were a desktop motherboard. So I am going to abandon the Pentium M 780 and insteadm, Im going to order another cpu, one with a 400mhz fsb. The new cpu should be cheap and easy to find. The fastest 400mhz bus Pentium M made, according to this chart on wikipedia, is a Pentium M 765 (SL7UZ or SL7V3) 2.1GHz/2MB/400. And I just purchased the Pentium M 760, which was a mistake because it too is a 533mhz part. I have ordered a third cpu, a Pentium M 755 which is indeed, a 2.0ghz/2mb/400mhz part, which should arrive next week some time, Ill update the blog as soon as I have it installed.
CF Card IO Performance
The IO bandwidth of the CF card that ships with the Firebox x1250e is rather limiting, which isnt much of an issue if you are just using it as a router, until you begin working with large blacklists or other large data files, so one might imagine that the Firebox x1250e could perform quite a bit smoother using an SSD rather than a CF Card.
Fortunately, there appears to be a normal looking 4x pci-e slot near the CF Card slot, within which, we should be able to have an SSD installed.I have no doubt that the system would be more snappy, reliable, faster to boot, and especially our specific deployment, the x1250e would load blacklists considerably faster with an SSD installed.
In 2017 I imagine it should be relatively easy to locate, obtain, and install a ribbon extension for the Pci-e slot, and add a small SSD for next to nothing, with relative ease and a little creative placement of the hardware, I look forward to performing this modification in the future and will update this blog post as soon as I have some related content.
This is a bit trivial, but noteworthy none the less, an amusing script that produces a ‘Star Wars Imperial March’ jingle from the system speaker doesnt sound like it should on an actual Mikrotik Routerboard. It does play. But it doesnt sound quite right at all.
LCD has Arrived:
Ok so the replacement ‘5V 20×2 Character LCD Module’ has arrived.
Just got done soldering in the replacement LCD and I wasnt sure what to expect, but after a few seconds, as you can see it went well.
And a dark shot showing the glorious end product safely running in production under lock and key.
To be continued….
Want to filter unwanted websites with a WatchGuard Firebox or a RouterOS Device?
Subscribe and download all of our blacklists.
Flat rate subscription. For full access to all of our works, select a membership option & subscribe today.
- You will be issued a username and password.
- You will be granted access to our member area.
- 5 Year Membership Option now available.
- For lifetime membership options click here.
- Contact us if you would like a pre order invoice.
Disclaimer: All sales are final, we do not issue refunds. Cancel your subscription anytime.