DevOps: VMs lifecycle management with Vagrant

My ultimate goal as a DevOps engineer is providing solutions focusing on aligning IT systems to company’s culture and business processes.  Limiting the time spent on creating bespoke tools and scripts that not all sysops are able to understand or maintain properly.  Any custom tool is hard to maintain without a basic software engineering background and  it needs a proper design, documentation, QA and all diligence and discipline required along the way.

From imperative to declarative

To achieve this result I need to shift from a developer mindset where is imperative (creating flows) writing programs or automation scripts to declarative,  specifying just the desired state of a system in a YAML or JSON files that are a “lingua franca” between devs and sysops providing an up-to-date documentation that can be safely managed on a SCM (like GIT).

Continue reading “DevOps: VMs lifecycle management with Vagrant”

How To Create a Local Admin Account with Powershell

If not well designed or managed, User and Administrator privilege separation for users/system administrators on a Windows OS can be painful for both sides. Indeed, Windows OS doesn’t have a simple and neat management like a SUDO on Linux OS, but settings need to be tailored with GPO or at least with different users.

Regular user accounts (e.g. Domain Users) should not be a member of the local administrators group for a security point of view.

Using separate users: a standard one and an admin member of the local administrators group is at least a good way to mitigate the risk of potential/malicious/accidental damage to the system. It doesn’t matter if most of the today’s threats can deal with the regular user context.

Nothing new if you’re familiar with the least privilege access, if is something you’ve never think about it… Well, I can use a simple effective analogy for allowing user with local admin rights on their workstation.. it’s like to let them run with the scissors all the time… is it worthy or simply asking for trouble?

Continue reading “How To Create a Local Admin Account with Powershell”

Automation/CM with Package Managers: Chocolatey and Homebrew

Every mobile device has a store app that installs, removes and updates software according to the user demand. Windows and MacOS have their store too for almost a decade. The idea of using a package manager is derived from Linux OS, dpkg almost 25 years ago, but the first one that I’ve used was apt in back in 2000. Apt was not just a installing the package request from the repository but more importantly took care of the dependencies, in short made my life extremely easier in when Open Source was spreading and becoming popular.

Continue reading “Automation/CM with Package Managers: Chocolatey and Homebrew”