Load balancing and redundant Internet connection using TP-Link ER6020

Overview I started my homelab journey in 2017 setting up small server to host my files and test my web applications. Today, I am giving my small network a bit of an upgrade by having a redundant Internet connection using a TP-Link ER6020. I appreciate that TP-Link made it affordable for us to buy business […]

Continue Reading…

Draw text on image using Python

Today, I will show you how you can generate image and add text using Python. I was working on a project requires to generate an image for facebook og:image (featured image) and since this project is source code sharing tool adding a source code snippet into the featured image make sense. I used this library […]

Continue Reading…

Using MySQL TIMESTAMPDIFF to delete unverified user records

Building a public website with user registration and email verification is typical. It will require users to validate their email by clicking a unique generated URL link. Sometimes, user registration with pending verification will grow exponentially and needs an automated cleanup of records. In this example I created a simple MySQL stored procedure to delete […]

Continue Reading…

How to connect to a Cisco VPN in Ubuntu 18.04 LTS

Here’s the simple steps for you to connect to a Cisco VPN in Ubuntu 18.04 LTS. Cisco, an American company is the leading provider and manufacturer of enterprise network devices, telecommunication hardware, networking security and networking software. According to computer profile as of April 2018, Cisco holds a 73.9% market which makes it the undisputed […]

Continue Reading…

Bash string manipulation in program arguments

In this code snippet, I would like to run an application with a URL payload based on date and time. This code will be executed in a specific schedule everyday and I would like to dynamically inject the date and time in the program argument when the program executes. ./json2csv rules.json “ncp” “http://localhost:8080/api/zget?eid=get-ncp-mv-by-starttime-endtime&starttime=$(date –date=’yesterday’ +\%Y-\%m-\%d)+00:00:00&endtime=$(date […]

Continue Reading…

A simple firewall-cmd cheatsheet

Get Default Zone Get Active Zones List Zone Services Add a permanent port into a zone Remove a permanent port from a zone Firewall-cmd reload I tested this using CentOS 7 with firewalld service running. Get Default Zone To know the default zone, use this command firewall-cmd –get-default-zone Get Active Zones firewall-cmd –get-active-zones List Zone […]

Continue Reading…

How to use Cloudflare as Dynamic DNS

In this post I will share how I use Cloudflare as Dynamic DNS. I was previously using dynamic DNS service from No-IP for three years until a colleague of mine mentioned about Cloudflare’s really fast global DNS. Initially, I thought that Cloudflare was just a CDN and an Internet company that protects websites from Distributed […]

Continue Reading…