Skip to content

Instantly share code, notes, and snippets.

@samklr
samklr / golang-tls.md
Created October 11, 2019 19:30 — forked from denji/golang-tls.md
Simple Golang HTTPS/TLS Examples

Moved to git repository: https://github.com/denji/golang-tls

Generate private key (.key)
# Key considerations for algorithm "RSA" ≥ 2048-bit
openssl genrsa -out server.key 2048

# Key considerations for algorithm "ECDSA" ≥ secp384r1
# List ECDSA the supported curves (openssl ecparam -list_curves)

I've been working with Kafka for over 7 years. I inevitably find myself doing the same set of activities while I'm developing or working with someone else's system. Here's a set of Kafka productivity hacks for doing a few things way faster than you're probably doing them now. 🔥

Get the tools

@samklr
samklr / HealthStatus.scala
Created May 23, 2019 15:12 — forked from m-wrona/HealthStatus.scala
[Akka] Service health-check
import akka.actor.{ ActorSystem, Props }
import akka.io.IO
import com.typesafe.config.Config
import com.typesafe.scalalogging.LazyLogging
import spray.can.Http
sealed class HealthStatusService(actorNames: List[String], webConfig: Config)(implicit system: ActorSystem) extends LazyLogging {
private[status] val healthCheckPath: String = webConfig.getString("status-path")
private[status] val timeoutDuration: Int = webConfig.getInt("timeout")
@samklr
samklr / REAME.md
Created May 20, 2019 07:50 — forked from davideicardi/REAME.md
Scala AES-CTR encryption, MAC, HMAC, ... with Bouncy Castle example

Scala AES-CTR encryption Bouncy Castle example

Add the following library:

libraryDependencies += "org.bouncycastle" % "bcprov-jdk16" % "1.46"

AESCTR.scala

@samklr
samklr / output
Created May 16, 2019 10:40
Install transmission on WD My Cloud
FMCloud:~# wget https://gist.githubusercontent.com/MorganGeek/43ecb0ef1ac65322cd9237c16e77a5bb/raw/c8be05b2305c5b03b0e6ea1f2f27628625145371/wdmycloud-install-transmission.sh
--2017-06-17 07:54:43-- https://gist.githubusercontent.com/MorganGeek/43ecb0ef1ac65322cd9237c16e77a5bb/raw/c8be05b2305c5b03b0e6ea1f2f27628625145371/wdmycloud-install-transmission.sh
Resolving gist.githubusercontent.com (gist.githubusercontent.com)... 151.101.36.133
Connecting to gist.githubusercontent.com (gist.githubusercontent.com)|151.101.36.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1136 (1.1K) [text/plain]
Saving to: `wdmycloud-install-transmission.sh'
100%[===================================================================================================================>] 1,136 --.-K/s in 0.001s

Cryptographic Best Practices

Putting cryptographic primitives together is a lot like putting a jigsaw puzzle together, where all the pieces are cut exactly the same way, but there is only one correct solution. Thankfully, there are some projects out there that are working hard to make sure developers are getting it right.

The following advice comes from years of research from leading security researchers, developers, and cryptographers. This Gist was [forked from Thomas Ptacek's Gist][1] to be more readable. Additions have been added from

@samklr
samklr / filebeat-kafka-template.json
Last active March 14, 2019 15:38
Kafka Logs + Filebeat + ES
"mappings": {
"_default_": {
"_all": {
"norms": false
},
"_meta": {
"version": "5.1.1"
},
"dynamic_templates": [
@samklr
samklr / filebeat-conf.yml
Created March 7, 2019 16:32
filebeat-ansibl
filebeat.prospectors:
# BEGIN -- HAProxy logging configured by Ansible
- input_type: log
paths:
- /var/log/haproxy.log
document_type: haproxy
# END -- HAProxy logging configured by Ansible
# BEGIN -- Nginx logging configured by Ansible
- input_type: log