Author name: Tim van Kooten Niekerk

About me / Hey I’m Tim. I work as a systems integration specialist for a large educational institution in the Netherlands. A part of my free time I spend making and creating music.

GNU/Linux Tripwire Quickref

# Add essential proc subs: /proc/sys, /proc/cpuinfo, /proc/modules

twadmin -m P /etc/tripwire/twpol.txt
tripwire --init

tripwire --check [--email-report]

tripwire --update --twrfile /var/lib/tripwire/report/servername-YYYYMMDD-HHMMSS.twr

Update script with last report:

lastfilename=(`ls -Art  /var/lib/tripwire/report/ | tail -n 1`)
sudo tripwire --update --twrfile /var/lib/tripwire/report/${lastfilename}

GNU/Linux Move Data Using Rsync

I was doing some maintenance on my local NAS. I used the command below to effectively move data from one location to another without losing file attributes.

rsync -avzhP --remove-source-files /mnt/das-2T-1/source/ /mnt/das-2T-1/destination/ [--dry-run]

You can also temporarily cancel the move and when you start the command again it continues where it stopped.

I also did some internal replication using replication tasks on my TrueNAS device. This creates a snapshot of the data set to replicate to an empty dataset. The destination dataset is overwritten so this option cannot be used to merge datasets. If you want to merge datasets is best to use the rsync option mentioned above.

NE7/TECH Repository

TECH.NE7.NL hosts a searchable repository of scripts and patterns I’ve created over the course of time. Mostly for my own usage but feel free to share or adapt any code or article from this site.

GNU/Linux Nano Most Frequently Used Shortcuts

Al shortlist of my most frequently used nano (editor) shortcuts besides CRTL-X (EXIT) and CTRL-W (SEARCH) obviously.

LINE NUMBERS     TOGGLE     ALT-N
LINE WRAPPING    TOGGLE     ALT-S
LINE COMMENT     TOGGLE     ALT-3

CUT LINE                    CTRL-K
PASTE LINE                  CTRL-U

Check this overview page for a full list of shortcuts.

GNU/Linux Openshift Frequently Used Command

Delete evicted pods from current OpenShift project.

oc get pods | grep Evicted | awk '{print $1}' | xargs oc delete pod

Create an OpenShift secret from the command line.

oc create secret generic gateway1 --from-file=server.p12

GNU/Linux Maven Frequently Used (Quickref)

Mavin compile (Java) code and create local package.

mvn clean package -DskipTests

Run a specific unit test from the command line.

mvn test -Dtest=JavaClassTest#specificTest

GNU/Linux OpenShift Where is My Secret Used?

A simple bash-script for OpenShift to determine which deployment configs make use of a specific secret (within the active project).

#!/bin/bash

oc get dc -o custom-columns="Name:metadata.name,readyReplicas:status.availableReplicas,Volumes:spec.template.spec.volumes,env:spec.template.spec.containers[].env,envFrom:spec.template.spec.containers[].envFrom,Volumes:spec.template.spec.volumes" | grep -E "($1)" | grep -oE "^[a-z0-9-]{3,99}"

$ os-sec-usage.sh secretname

PowerShell Function To Add Filesystem Permissions

Recently wrote a simple function to add permission to filesystem resources. It defaults to modify permissions, but can also be another basic permission for instance: Read, Write or FullControl.

function fnAddFilesystemPermissions()
{
  param (
    [string]$sPath,
	[string]$sUserName,
	[string]$sPermission = "Modify"
  )

  # Add write permissions to a file using powershell...
  $accessRule = New-Object System.Security.AccessControl.FileSystemAccessRule($sUserName,$sPermission,"Allow")
  $acl = Get-ACL -Path $sPath
  $acl.SetAccessRule($accessRule)
  $acl | Set-Acl -Path $sPath

  # Return permissions...
  return (Get-ACL -Path $sPath).Access | Format-Table 
}

PS> fnAddFilesystemPermissions -sPath “C:\Path\To\Resource” -sUserName “User-Principle-Name” [-sPermission “FullControl“]