Skip to content

Lab 4: trace, outside-in debug, and TLS handshake decode#1082

Open
rikire wants to merge 3 commits into
inno-devops-labs:mainfrom
rikire:feature/lab4
Open

Lab 4: trace, outside-in debug, and TLS handshake decode#1082
rikire wants to merge 3 commits into
inno-devops-labs:mainfrom
rikire:feature/lab4

Conversation

@rikire

@rikire rikire commented Jun 16, 2026

Copy link
Copy Markdown

Goal

Trace one POST /notes end-to-end, debug a broken deploy outside-in, and decode a TLS handshake in front of QuickNotes.

Changes

  • Task 1: annotated lo packet capture (3-way handshake β†’ POST /notes + JSON β†’ 201 Created β†’ FIN close), five debug commands (ss/ip route/mtr/dig/journalctl), and a 502-debugging reflection.
  • Task 2: reproduced bind: address already in use (two instances on :8080), full outside-in chain (process β†’ listening β†’ reachable β†’ firewall β†’ DNS) with a decision at each step, root cause, and a blameless mini-postmortem (≀200 words).
  • Bonus: Go TLS-terminating reverse proxy (:8443 β†’ :8080) + self-signed cert; TLS 1.3 handshake decoded via tshark/openssl (ClientHello/ServerHello/cipher), certificate chain, and why supported_versions kills TLS 1.0/1.1 in 2026.
  • Artifacts: lab4-trace.txt, lab4-curl.txt, lab4-commands.txt, lab4-task2.txt, lab4-tls-*.txt, helper scripts.

Testing

  • Capture verified to contain handshake, HTTP request/response, and close.
  • Broken instance reproduced and repaired (/health returns {"status":"ok"}); chain re-verified.
  • TLS endpoint negotiated TLSv1.3 / TLS_AES_128_GCM_SHA256; cert chain confirmed via openssl s_client.

Checklist

  • Title is a clear sentence (≀ 70 chars)
  • Commits are signed (git log --show-signature)
  • submissions/lab4.md updated

rikire added 3 commits June 9, 2026 20:39
Signed-off-by: rikire <rizireY@yandex.ru>
Signed-off-by: rikire <rizireY@yandex.ru>
Task 1: annotated lo capture of one POST /notes (handshake, HTTP req/resp,
FIN), five debug commands, 502 reflection.
Task 2: reproduce EADDRINUSE port conflict, outside-in chain, blameless
postmortem.
Bonus: Go TLS reverse proxy + self-signed cert; TLS 1.3 handshake decoded
with tshark/openssl, cert chain, 1.0/1.1 deprecation reasoning.

Signed-off-by: rikire <rizireY@yandex.ru>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant