How samyak05/tls-handshake-linux-namespaces works
This repository is an educational Linux networking lab, not an application: the user generates certificates, creates routed namespaces, runs TLS or mutual-TLS endpoints while capturing traffic, then inspects the packet capture. The README documents the topology and command-level workflow; source excerpts were unavailable, so relationships below reflect documented actions rather than inspected script internals. Certificate and capture files are shown as lab artifacts.
Main entry points: generate_certs.sh Generate certificates · README.md TLS server · setup.sh Configure namespaces · tls_capture.pcap TLS capture
Components 18
Lab Provisioning
- Generate certificates
generate_certs.sh - CA certificates
ca/ca.crt - Server credentials
blue_namespace/server.crt - Client credentials
red_namespace/client.crt - Configure namespaces
setup.sh - Routed namespace topology
setup.sh - Remove namespaces
cleanup.sh
Secure Communication
- OpenSSL endpoints
- TLS server
README.md - TLS client
README.md - TLS 1.2 session
README.md - Mutual TLS session
README.md
Packet Analysis
- Packet capture
- TLS capture
tls_capture.pcap - mTLS capture
mtls_capture.pcap - Wireshark analysis
- Lab report
report/report.pdf
Other components
- Lab user
Connections 21
- Lab user → Generate certificates: runs
- Generate certificates → CA certificates: generates
- Generate certificates → Server credentials: generates
- Generate certificates → Client credentials: generates
- Lab user → Configure namespaces: runs
- Configure namespaces → Routed namespace topology: creates
- Lab user → Remove namespaces: runs
- Lab user → OpenSSL endpoints: starts
- OpenSSL endpoints → TLS server: runs
- OpenSSL endpoints → TLS client: runs
- TLS client → TLS server: connects
- TLS server → TLS 1.2 session: negotiates
- TLS server → Mutual TLS session: negotiates
- Packet capture → Routed namespace topology: captures traffic
- Lab user → Packet capture: starts
- Packet capture → TLS capture: writes
- Packet capture → mTLS capture: writes
- Lab user → Wireshark analysis: opens capture
- Wireshark analysis → TLS capture: analyzes
- Wireshark analysis → mTLS capture: analyzes
- Lab user → Lab report: consults