Why I started contributing to Docker

Why I became a Docker contributor Experience Just like any spoken language, you must constantly immerse yourself in the language and culture to speak any programming language fluently. By dedicating a portion of my time to a single project, I force myself to come back to difficult tasks. Instead of abandoning a project for a new idea, I have a set amount of time each day I work through the problems I was facing yesterday. ... Read More

Docker to Kubes

If I told you that the transition from Docker to Kubernetes takes an afternoon of seamlessly migrating containers, I would be lying. Kubernetes forced me to abandon my love for docker-compose. I had to rethink my container orchestration. I would be ditching my well-tweaked Nginx SSL proxy and adopting the “serverless approach”. Serverless In the past, I never really understood the benefit of serverless architecture. Serverless? Really? That’s for lazy people, I thought. ... Read More

Choosing the right tool: How to pick the right programming language

Jack of all trades, master of none. Often better, than a master of one. Adam Savage Master of one When I first started programming, I had figured I would learn python. It was easy enough for a young me to learn. It was powerful and could do a whole lot. I told myself the more time I spent in this language the better I would be. I spent about two years learning python. ... Read More

How to DOS Yourself With Argon2

Recently while penetration testing a clients server I found a DOS attack via a simple post request. On a page which took text input, as well as a hashing method, and returned the hash string, I was able to DOS the entire server. Starve the CPU The exploit was a simple bash script that made a POST request with the text as testing and the hash function, Argon2. Now one interesting thing to note is exactly how much CPU usage each hash function takes. ... Read More

Modern Wordpress Malware

As an interpreted language, PHP has the unique problem of disclosing all of its source code. This does not benefit malware developers trying to hide their code. Obfuscation helps, but only to a certain extent. This is to the benefit of security researchers. After finding a nasty infestation on a clients site, I was intrigued by the different ways these malware devs were using the web to defeat modern anti-virus techniques. ... Read More

Desktop is Dead: Why Google Approves

I didn’t say it, Google did. With Google’s AMP conference right around the corner, we can expect to see more of the tooling that will kill the desktop browser paradigm. This is just one of the ways Google intends on further replacing desktop browser usage, with the mobile screen. Mobile vs Desktop Modern Websites typically have a responsive design, and tailor the experience to your screen size/browser. We live in a time where a perfect desktop only site is doomed to failure, while a mobile-only site looks a little out of place on the desktop. ... Read More

Building a Web Based Hosting Control Panel with Go

Author Geroge Shaw github Project Beginnings During the development of my interest with Golang, interest within my office, Ennovar, also peaked. We were discussing it in one of our routine staff meetings one day and wanted to try and start some internal projects written in Go, in the interest of being proficient enough as an office to start using Go within our stack. I, like everyone else in the room, was thinking of ideas to start as an internal project when I thought of the idea that has since turned into a real piece of software: gPanel. ... Read More

Fast websites with Hugo

Many web designers are moving to static sites to manage content. Not only do static sites generally have faster page speed, the overhead on the parent server is much smaller. Hugo Hugo is a static site generator written in Go. Websites are generated instantly with a config file, with all content being managed from markdown files. The project directory config.toml This is your site config file. It tells Hugo every piece of information needed to generate your website. ... Read More

Hugo As a Highly Customizable CMS

Hugo You can read our intro to Hugo blog post here. Hugo is a great static website generator that NextWave Solutions is using as a content management system. Templating One of the main advantages of Hugo is the highly customizable themes. Easily configured, the template engine acts almost as a PHP library. It feels like you are developing on Wordpress, with similar functions. Theme directory Found in your project directory then themes/name-of-theme ... Read More

Private Networking with Docker and Nginx: Keeping Private Traffic Private

Keeping private traffic private No one needs to be able to see your backend services and databases. Those are strictly for the public web-servers to access.Too many database containers are exposed and are left vulnerable to attack due to sub-par security measures. By keeping database containers only available to traffic from your web servers, you reduce your attack service and increase security for all of your users. A single Nginx Container Centralizing keys In the land before time – er, excuse me - the time before Docker containers, all SSL/TLS certifications would be stored in a centralized server on the bare metal machine. ... Read More