Skip to content

Instantly share code, notes, and snippets.

View danehans's full-sized avatar

Daneyon Hansen danehans

View GitHub Profile
@danehans
danehans / CT1614_WBS.MD
Last active September 4, 2018 16:15
CT1614 Work Breakdown Structure

Introduction

Istio 1.0 is non-compliant with CT1614 because it does not support certificate revocation (e.g. CRL). Issue 3886 has been created to track this feature request.

Estimated Work Breakdown

Task # of Hours
Learn Existing Codebase 40
Understand PKI, CRL, etc. Details 36
@danehans
danehans / CT1162.md
Last active August 30, 2018 15:55
CT1162: SEC-OUT-CRED-2: No fixed or forced null outbound credentials

Introduction

Istio consists of several services that intercommunicate to form the service mesh control-plane. The Istio data-plane consists of a proxy mesh, where a proxy is deployed as a sidecar with each end-user application service. Mutual TLS (mTLS) can be used to secure end-user services running within or outside of the mesh and for securing Istio control-plane communication.

Problem Statement

Not allowing customers to define outbound credentials destroys the usefulness of authentication functionality on peers.

@danehans
danehans / create_fed_sa_notes.md
Last active August 29, 2018 17:58
k8s-fedv2-review

Following: https://github.com/kubernetes-sigs/federation-v2/blob/master/docs/development.md

$ kubebuilder create resource --group core --version v1alpha1 --kind FederatedServiceAccount
Creating API files for you to edit...
Edit your API schema...
	pkg/apis/core/v1alpha1/federatedserviceaccount_types.go
	pkg/apis/core/v1alpha1/federatedserviceaccount_types_test.go
Creating controller ...
Edit your controller function...
@danehans
danehans / envoy_config_dump.json
Created August 8, 2018 21:28
istio_jaeger_explained
$ kubectl exec -it productpage-v1-7bbdd59459-brq62 -c istio-proxy /bin/bash
$ curl http://127.0.0.1:15000/config_dump
{
"configs": {
"routes": {
"@type": "type.googleapis.com/envoy.admin.v2alpha.RoutesConfigDump",
"static_route_configs": [
{
"route_config": {
"name": "inbound|9080||productpage.default.svc.cluster.local",
@danehans
danehans / design.md
Created August 8, 2018 21:27
Jaeger Agent Refactor Design

Introduction

This document represents the plan for refactoring the Jaeger Agent to support different Reporters. The use case is identified by Issue 927.

Jaeger Workflow:

Instrumented App > Jaeger Client Library >---(SPANs)---> Agent > Collector > Storage (ES, Cassandra)
@danehans
danehans / CT1631.md
Last active August 9, 2018 18:09
CT1631: SEC-509-VALIDATE-2: Validate X.509 certificates

Introduction

Istio consists of several services that intercommunicate to form the service mesh control-plane. The Istio data-plane consists of a proxy mesh, where a proxy is deployed as a sidecar with each end-user application service. Mutual TLS (mTLS) can be used to secure end-user services running within the mesh and for securing Istio control-plane communication.

This document provides instructions for testing x.509 certificate validation performed by Istio proxies. The httpbin and sleep applications are used to perform

@danehans
danehans / CT640.md
Last active August 1, 2018 19:01
CT640: SEC-HTP-SSL3-3: Support TLS for HTTP

Introduction

Istio supports Mutual TLS (mTLS), which is documented here. This document provides instructions for testing Istio mTLS. The document will use the bookinfo application and ssldump to verify mTLS is being used for network communication between application services. The bookinfo application consists of multiple services, please review this diagram to better understand the service<>service communication used for Istio mTLS validation.

Prerequisites

@danehans
danehans / CT1611.md
Last active August 1, 2018 19:03
CT1611: SEC-509-LIFETIME-2: Restrict X.509 certificate validity periods

Introduction

Istio consists of several services that intercommunicate to form the service mesh control-plane. The Istio data-plane consists of a proxy mesh, where a proxy is deployed as a sidecar with each end-user application service. Mutual TLS (mTLS) can be used to secure end-user services running within the mesh and for securing Istio control-plane communication. This document provides detailed instructions for verifying Istio mTLS certificates.

Prerequisites

@danehans
danehans / todo.md
Last active July 20, 2018 16:01
woodcrest_todo_list

248 Woocrest Repair List

The following is a list of remaining work items required to restore the house to a state previous to the re-pipe:

  • Address water pressure. The water pressure in the master shower is roughly 50% of what it was prior to the re-pipe.
  • Repair holes in the outside of the house.
  • Hang ceiling fan in living room. Place the ceiling fan remote back on the wall.
  • The light switch in the living room does not work due to paint that dried on it and is now stuck in the off position.
  • Electric outlet/switch covers are missing and need to be installed.
  • Hang blinds.
@danehans
danehans / jaeger_ingress.md
Last active July 10, 2018 22:57
Jaeger Ingress

Introduction

Since Jaeger does not run in the Istio mesh, a different ingress controller is required to expoer Jaeger outside the k8s cluster. I used the nginx ingress controller in a baremetal setup (CCP). Follow the nginx deploy guide and use the baremetal provider.

Jaeger Deployment

Update the Jaeger service to use a different port other than 80:

apiVersion: v1
kind: Service