New Network Install For A Client

Another day, another happy ‘small business’ client, hehe!

Had a client move into a small warehouse and needed a brand new network setup. We handled this project at full scale, from sourcing all the parts to physical install and network/server configuration. Nothing too crazy or complicated yet this network setup needed to be reliable and scalable.

After carefully assessing client specific needs and budget,
we ended up going with ->

* NavePoint 12U Wall Mount Network Server 600mm Depth Cabinet Rack Enclosure Glass Door Lock

* Raxxess UNS1 Vented Universal Tray Shelf for 19″ Server, Bottom Slots for Mounting Non Half-Rack Equipment, Black (RAX UNITRAY)

* Cables Direct Online 1000ft CAT6 Solid Cable 550Mhz Ethernet LAN UTP 23AWG RJ45 Network Wire Bulk (White)  (had to do about 10 cable runs)

* Synology 4 bay NAS DiskStation DS920+ (Diskless), 4-bay; 4GB DDR4

* ETS 24 Port CAT6 Pass Through Coupler Patch Panel with Back Bar, Compatible with Cat5, Cat5e, Cat6, Cat6A, Loaded with Unshielded keystones
(these are GREAT! Highly recommend! Who wants to sit around all day punching down wires to the back of a patch panel when you can instead just simply plug Ethernet heads in?)

* Ubiquiti UAP-AC-LR-US Unifi AP-AC Long Range – Wireless Access Point (2-Pack) Bundle

* Cisco SF300-24P 24-port 10/100 PoE Managed Switch with Gigabit Uplinks (SRW224G4P-K9-NA)

* https://shop.netgate.com/products/3100-base-pfsense?variant=32156744286323

It was a little tricky setting up the UniFi Access Points and Synology NAS without an internet connection (customer did not have internet yet). The cables runs weren’t too bad since the ceiling is wide open on the warehouse floor though it was a physically taxing job, especially terminating all those ends. Did get help running the cables though, thank you Jeremiah! Other than that, everything went quite smoothly overall.

There is still quite a bit of network and server tuning left to do but the project as a whole has been completed! Physical install we knocked out in about two days and server/network configuration took about another day and a half. Great experience and thank you to my client for allowing us this opportunity to support their network and server infrastructure

 

 

 

 

 

How To Install Zabbix 6.0 On Ubuntu Server 20.04

Can definitely be a tricky process, especially if Zabbix is new to you. What can I say about Zabbix? Well, a fantastic free monitoring software. Monitor all sorts of parameters on your servers, firewalls (works great with pfsense, hehe), etc and receive email alerts automatically if a problem is detected. Love pulling and tracking data on your system(s) performance? Zabbix will spit out all kinds of graphs and data at you and provide a birds eye view of monitoring system parameters (i.e cpu usage, ram utilization, etc) over time, which can be essential in troubleshooting. I am actually quite new to Zabbix myself and besides the tricky somewhat complex initial setup, loving it so far. We’ll today, I’m here to help you sort through any challenges getting Zabbix 6.0 going on Ubuntu Server 20.04. In fact, I am going to cover how to install both.

First we need to install Ubuntu Server 20.04 LTS

Download the iso from here -> https://ubuntu.com/download/server

In my case, I will be installing this on a VM using Hyper V.

  • configure your virtual machine software to boot from the iso you just downloaded
  • proceed with installing Ubuntu  Server 20.04 LTS. Yes this is a headless (no gui) install in my example which is fine because if the server is literally just running Zabbix, no real need for a GUI

(reference the beginning of video for more details on installing Ubuntu Server)

Installing Zabbix

Now that we have our nifty fresh and clean Ubuntu Server all installed and up and running, it’s time to install Zabbix.

1 ssh to your new Ubuntu Server and prepare to run linux commands the rest of the way to install Zabbix

2 Install Zabbix repositories

sudo wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-1+ubuntu20.04_all.deb
sudo dpkg -i zabbix-release_6.0-1+ubuntu20.04_all.deb
sudo apt update 

NOTE –  as in my case, this may not install correctly for you. This was due to a certificate error. You will need to comment out: mozilla/DST_Root_CA_X3.crt

located in /etc/ca-certifiates.conf. Skip to 9:10 in the video for details.

3 Install Zabbix server, frontend, agent

 sudo apt-get install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent

4 install sql server

sudo apt-get install mysql-server
sudo systemctl start mysql-server

5 Create database for Zabbix

sudo mysql
create database zabbix character set utf8mb4 collate utf8mb4_bin;
create user zabbix@localhost identified by 'password'; 

Note – put your own password in between those quotes

grant all privileges on zabbix.* to zabbix@localhost;
quit;

6 import initial schema and data
You will be prompted to enter your newly created password.

zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uzabbix -p zabbix

When running the above zcat command, you will be asked for the db password you created in step 5

NOTE – importing the schema data make take some time to complete and can be confusing as to if it’s actually working or hung. In one case i’ve even seen this take hours, but I just let it run and went to bed. Got up in the morning and it was successful. Not sure what the unique problem was there in that case but I digress. Usually it shouldn’t take more then 5 min max though.There is no confirmation that it completes but be patient and what you want to look for is for the system to return you to the command prompt. That is a sign it completed successfully. Skip to 12:55 in the video for details on this.

7 Configure the database for Zabbix server

(you need to specify the DB password in zabbix_server.conf file)

Edit file located here: /etc/zabbix/zabbix_server.conf
I use VIM to edit files = # sudo vim /etc/zabbix/zabbix_server.conf

Find and uncomment/edit the following line

DBPassword=password <---change to your db password you set in step 5 
8 Start Zabbix server and agent processes

Start Zabbix server and agent processes and make it start at system boot.

systemctl restart zabbix-server zabbix-agent apache2
systemctl enable zabbix-server zabbix-agent apache2
9 Configure Zabbix frontend

Connect to your newly installed Zabbix frontend: http://server_ip_or_name/zabbix
Straight forward here but skip to 15:50 in the video for details

If you need help or have any questions at all, feel free to contact me. Hey that’s what I’m here for. I do this!

 

How To Terminate Remote User VPN Connections From A pfSense Firewall

*Update* The ‘halt’ functionality is now enabled by default in the latest releases of pfsense (v22.01 and greater). No more need to apply a patch manually.

If however you are stuck on older versions of pfsense and you wish to fully terminate a remote access vpn user connection and or you’re simply seeking a ‘how to’ terminate remote user connections, please read on ->

Often times, a network admin may want to disconnect remote access VPN users from a pfSense firewall for various reasons. Maybe users have stale connections and they simply forgot to log off and they’re sucking up resources/bandwidth unnecessarily. Maybe the person got fired but is still connected to the VPN from somewhere that may be difficult to find such as in a shared ‘field laptops’ environment. Whatever the case, pfSense disappointingly does not natively offer the option to fully terminate connections. If you’re thinking you can get away with it by using the kill command (blue x) ->

Well, you can forget about that because it only temporarily kills the connection on the server side. The client side VPN will then auto-reconnect itself shortly after putting you back to square one. The ‘kill’ command is pretty much useless in other words. What you need is the ‘Halt’ command. This will actually terminate the connection on the client side and force the user to manually sign back in if they want to reconnect. Essentially this is the real solution to punting remote access VPN users OFF your firewall!

But how do I enable the ‘halt’ command in pfSense? We’ll, I’m glad you asked. This is accomplished by installing the ‘Sytstem_Patches’ package from the package manager. ‘System_Patches’ then allows for patches to be applied to your firewall. Then, yep you guessed it, we will apply a patch to the firewall which enables the ‘halt’ command functionality. See the video below for a demonstration.

Once patched successfully, the ‘halt’ command function will become available here, indicated by a new red X (or white x in  a red circle, whatever) ->

*Patch contents + url/commit ID can be downloaded here.

Also recommend updating to pfSense software version 21.05.0 and above (otherwise patch may not apply successfully).