Skip to content

Instantly share code, notes, and snippets.

@bprashanth
bprashanth / packet_laundering.md
Last active March 9, 2023 11:16
Packet laundering

First create a working service:

apiVersion: v1
kind: Service
metadata:
  name: echoheaders
  labels:
    app: echoheaders
spec:
  # type: NodePort

Generate root/intermediate/end certs

Run https://gist.github.com/bprashanth/d79b9810dea8b07a7bb1ccf467be5b66 (some googling + fiddling of how to generate intermediates with openssl, so don't take this as an authoritative guide). That script will create 3 CSRs, one for the root, one for an intermediate, and the last one for the end user. You probably don't care about most of the fields of the CSR execpt for "Common Name", eg:

If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
#!/bin/bash
mkdir ~/SSLCA/root/
cd ~/SSLCA/root/
openssl genrsa -aes256 -out rootca.key 2048
openssl req -sha256 -new -x509 -days 1826 -key rootca.key -out rootca.crt
touch certindex
echo 1000 > certserial
echo 1000 > crlnumber
echo '
[ ca ]
from cmd import Cmd
class MyPrompt(Cmd):
def do_hello(self, args):
"""Says hello."""
print "Hello, world"
def do_quit(self, args):
"""Quits the program."""
apiVersion: v1
kind: ReplicationController
metadata:
labels:
k8s-app: nginx-ingress-lb
name: nginx-ingress-controller
spec:
replicas: 1
selector:
k8s-app: nginx-ingress-lb
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: foo-tls
namespace: default
spec:
tls:
- hosts:
- foo.bar.com

Petset

apiVersion: extensions/v1beta1
kind: PetSet
metadata:
  name: foo
spec:
  replicas: 3
  template:
    metadata:
apiVersion: v1
kind: Service
metadata:
  labels:
    component: apiserver
    provider: kubernetes2
  name: kubernetes2
  namespace: default
spec:
@bprashanth
bprashanth / zk.md
Last active November 8, 2022 09:51

Zookeeper:

# A headless service to create DNS records
apiVersion: v1
kind: Service
metadata:
  name: zk
  labels:
    app: zookeeper
spec:
apiVersion: v1
kind: Service
metadata:
  name: nginx
  labels:
    app: nginx
spec:
  ports:
  - port: 80