Skip to content

Instantly share code, notes, and snippets.

@0x646e78
0x646e78 / Vagrantfile
Created May 14, 2020 14:57
Almost Kube
Vagrant.configure("2") do |config|
config.vm.define "k8smaster" do |k8smaster|
k8smaster.vm.box = "generic/ubuntu1804"
k8smaster.vm.hostname = "k8smaster"
k8smaster.vm.network "private_network", ip: "192.168.10.2"
k8smaster.vm.provider "vmware_fusion" do |v|
v.memory = 6144
v.cpus = 3
end
end
@pgasiorowski
pgasiorowski / run.py
Created November 15, 2016 08:24
Run ansible in AWS Lambda
#!/usr/bin/env python2
# Based on: https://serversforhackers.com/running-ansible-2-programmatically
import os
import sys
from ansible.executor import playbook_executor
from ansible.inventory import Inventory
from ansible.parsing.dataloader import DataLoader
@halberom
halberom / extras.py
Last active November 8, 2023 16:23
ansible - example of merging lists of dicts
# ansible_plugins/filter_plugins/extras.py
def merge_dicts(value, dict1):
# return a merged dict
result = {}
result = value
result.update(dict1)
return result
def merge_lists_of_dicts(list1, list2):
# return a merged list
@mutemule
mutemule / README.md
Last active January 22, 2024 05:11
Minimizing OSSEC System Update Warnings

Introduction

Everyone who runs OSSEC on a Unix system has a common problem: you want to follow and apply security udpates closely, but every time you patch, you get a flood of alerts. And this problem quickly grows: if a given package update would result in five alerts, that's fine if you only have one server. But if you have a hundred servers? Five hundred? Five thousand?

So, I've cobbled some stuff together to abuse the OSSEC's Active Response mechanism to not raise an alert when a package is upgraded properly. I've tried to emulate the workflow of a human administrator as closely as closely as possible, but there are definitely some areas that could be handled better -- see Caveats below.

Objectives

Any time I get an OSSEC alert, I'll do any number of things that generally fall into three categories:

  1. Validation of automated change: make sure the file was supposed to be upgraded: check the auto-upgrade logs, verify the package that installed/upgraded the file, etc.
  2. Validation of expected

Ansible: Nested and Dynamic Variables

This is a quick demo to show you how to use nested variables, then override them to make them useful in your playbooks.

Subscribe To Me On YouTube: https://bit.ly/lon_sub

Create a role

The first thing we do is create a new role to put our ansible code:

mkdir roles
@darahayes
darahayes / ansible_kms_encrypt_decrypt.md
Last active February 18, 2024 18:57
KMS Encrypt and Decrypt filters in Ansible

KMS Encrypt and Decrypt Filters for Ansible

This Gist shows how you can encrypt/decrypt variables with KMS during your Ansible playbook execution. While google searching I couldn't find anything useful on the subject.

Let's say your project has a folder of playbooks called plays.

In that folder, create a folder called filter_plugins and insert kms_filters.py (included in this gist)

@dvdknaap
dvdknaap / kali.md
Last active October 16, 2024 16:54
RootTricks

install all tools

  • apt install kali-linux-all

.git folder downloader

  • git clone https://github.com/internetwache/GitTools.git

Check ports with nmap

  • nmap -sC -sV -oA initial 10.10.10.78
  • nmap -sV -sC -oA nmap-tcp 10.10.10.84
  • nmap -T4 -A -v -p 0-10000 10.10.10.8
@mrlesmithjr
mrlesmithjr / ansible-macos-homebrew-packages.yml
Last active January 21, 2025 16:34
Install MacOS Homebrew Packages With Ansible
---
- name: Install MacOS Packages
hosts: localhost
become: false
vars:
brew_cask_packages:
- atom
- docker
- dropbox
- firefox
@jfarmer
jfarmer / 01-truthy-and-falsey-ruby.md
Last active March 5, 2025 10:26
True and False vs. "Truthy" and "Falsey" (or "Falsy") in Ruby, Python, and JavaScript

true and false vs. "truthy" and "falsey" (or "falsy") in Ruby, Python, and JavaScript

Many programming languages, including Ruby, have native boolean (true and false) data types. In Ruby they're called true and false. In Python, for example, they're written as True and False. But oftentimes we want to use a non-boolean value (integers, strings, arrays, etc.) in a boolean context (if statement, &&, ||, etc.).

This outlines how this works in Ruby, with some basic examples from Python and JavaScript, too. The idea is much more general than any of these specific languages, though. It's really a question of how the people designing a programming language wants booleans and conditionals to work.

If you want to use or share this material, please see the license file, below.

Update

@yuanying
yuanying / vagrant-kvm.md
Last active September 19, 2025 02:17
How to use vagrant-kvm

Install Vagrant

sudo su
apt-get update && apt-get install -y libvirt-dev ruby-all-dev apparmor-utils
curl -O -L https://dl.bintray.com/mitchellh/vagrant/vagrant_1.6.5_x86_64.deb
dpkg -i vagrant_1.6.5_x86_64.deb 
aa-complain /usr/lib/libvirt/virt-aa-helper # workaround
exit

Install vagrant-kvm as user