Goal

Create a concrete project plan, understand how to integrate tools from different weeks, and test your system against realistic threat scenarios.

Prerequisites: Week 12a (Choose Your Path)

This is Part 2 of 3 - Covers planning, integration, and testing.


1. Project Planning Template

Phase 1: Threat Modeling (Week 1 skills)

Define your scenario:

  • What are you protecting? (assets)
  • Who are you protecting against? (adversaries)
  • What attacks are realistic? (threats)
  • What’s your risk tolerance? (trade-offs)

Example (Journalist path):

Assets:
- Source identities (CRITICAL - could mean life/death)
- Leaked documents (HIGH - losing sources trust)
- Communication metadata (HIGH - reveals source network)

Adversaries:
- State intelligence agencies
- Law enforcement with legal compulsion
- Corporate adversaries (if covering business)

Realistic Attacks:
- Device seizure at border
- Network traffic analysis
- Forensic analysis of devices
- Coercion/legal threats

Risk Tolerance:
- Security > convenience (will sacrifice usability)
- Budget: $500-1000 for hardware (airgap device, YubiKeys)
- Time: Can spend 10-15 hours setting up properly

Phase 2: Architecture Design

Draw your system:

[Internet]
    ↓ (Tor)
[Journalist Laptop - Hardened]
    ├─ GPG: Email encryption
    ├─ Firejail: PDF sandbox
    ├─ OnionShare: Anonymous drops
    └─ XMPP+OTR: Secure chat

[Airgap Device - Never Online]
    ├─ Source contact list (encrypted)
    ├─ Master GPG key
    └─ Recovery seeds

[Encrypted Backup Server]
    └─ Weekly encrypted snapshots

Document data flows:

  • Where does sensitive data enter the system?
  • Where is it stored?
  • Where could it leak?

Phase 3: Implementation Checklist

Create a specific, ordered checklist:

Example (Privacy-Focused Personal path):

  • Week 11: Run Lynis audit, fix critical issues
  • Week 4: Set up gocryptfs encrypted home directory
  • Week 3: Generate GPG keypair, upload to keyserver
  • Week 3: Configure Thunderbird with GPG support
  • Week 6: Install and configure Signal Desktop
  • Week 6: Set up Matrix account (Element client)
  • Week 7: Install Tor Browser, bookmark .onion services
  • Week 11: Create AppArmor profile for Firefox
  • Week 11: Apply kernel hardening (sysctl)
  • Week 5: Set up automated encrypted backups
  • Test entire system end-to-end
  • Document setup and recovery procedures

Phase 4: Documentation Requirements

You must document:

  1. Architecture diagram (hand-drawn or digital)
  2. Threat model (assets, adversaries, mitigations)
  3. Setup procedures (step-by-step to rebuild)
  4. Recovery procedures (what if device lost/seized?)
  5. Security trade-offs (what you sacrificed and why)
  6. Maintenance schedule (updates, backups, re-auditing)

Format: Markdown document, stored encrypted in your system


2. Integration Examples

Example 1: Combining Week 9 + Week 11

Scenario: Airgap signing device that’s also hardened

Week 9 skills:

  • Remove Wi-Fi/Bluetooth hardware
  • QR code data transfer

Week 11 skills:

  • Lynis audit and harden
  • Firejail sandbox for wallet software
  • AppArmor profile for Bitcoin Core

Result: Airgap device that’s both isolated AND hardened against local exploits

Example 2: Combining Week 3 + Week 4 + Week 6

Scenario: Encrypted email with compartmentalized storage

Week 3 skills:

  • GPG keypair generation
  • Email encryption

Week 4 skills:

  • Tomb container for email archive
  • Separate tomb for each correspondent

Week 6 skills:

  • Email alias per correspondent (SimpleLogin)

Result: Each contact has own alias + encrypted tomb, no cross-contamination

Example 3: Combining Week 5 + Week 7 + Week 11

Scenario: Hardened remote server accessible only via Tor

Week 5 skills:

  • SSH hardening (key-only, port knocking)
  • UFW firewall rules

Week 7 skills:

  • Tor hidden service for SSH

Week 11 skills:

  • AppArmor profiles for all services
  • Kernel hardening

Result: Server accessible only via .onion address, even if VPS provider compromised


3. Testing and Validation

Test Your Threat Model

For each threat you identified, test mitigation:

Example tests (Journalist path):

Test 1: Device seizure simulation

  • Shut down laptop suddenly (simulate seizure)
  • Can encrypted storage be accessed? (Should be NO)
  • Are there unencrypted artifacts? (Check temp files)
  • Result: Document any data leakage found

Test 2: Network surveillance simulation

  • Run Wireshark while using system
  • Are communications encrypted? (Should see only Tor/TLS)
  • Any DNS leaks? (Should all go through Tor)
  • Result: Fix any cleartext leakage

Test 3: Malicious document handling

  • Open suspicious PDF in sandbox
  • Can it access home directory? (Should be NO)
  • Can it access network? (Should be NO)
  • Result: Verify Firejail restrictions working

Test 4: Recovery procedure

  • Simulate loss of airgap device
  • Can you recover master GPG key from backup?
  • Can you reconstruct source contact list?
  • Result: Document recovery time and gaps

Security Audit Checklist

Run through this for your final system:

Encryption:

  • All sensitive data encrypted at rest
  • Master keys stored offline or on hardware token
  • Backups encrypted and tested for recovery

Network Security:

  • Firewall configured (UFW with default DENY)
  • No unnecessary services listening
  • Tor used for sensitive communications

Access Control:

  • No password authentication (SSH keys only)
  • GPG/SSH keys protected with strong passphrases
  • AppArmor profiles enforced for risky apps

System Hardening:

  • Lynis score 75+ (or document why not)
  • Kernel hardening applied (sysctl)
  • Unnecessary packages removed

Operational Security:

  • Documented threat model
  • Recovery procedures tested
  • Maintenance schedule defined
  • Incident response plan drafted

4. Common Integration Challenges

Challenge 1: Tool Conflicts

Problem: AppArmor blocks Firejail, or Firejail interferes with GPG agent

Solution:

  • Test integrations incrementally (add one tool at a time)
  • Check AppArmor/Firejail logs for denials
  • May need to adjust profiles or choose one tool over another
  • Document the conflict and your resolution

Challenge 2: Usability vs Security

Problem: System is so locked down it’s unusable

Solution:

  • Revisit threat model - is paranoia justified?
  • Identify minimum viable security for your use case
  • Use “hardening levels” from Week 11 (Minimal, Moderate, Paranoid)
  • Document trade-offs you consciously made

Challenge 3: Maintenance Burden

Problem: System requires constant tweaking and monitoring

Solution:

  • Automate where possible (cron jobs for updates, backups)
  • Choose “set and forget” configs over complex ones
  • Document maintenance schedule realistically
  • If it’s too hard to maintain, simplify

Up Next

Week 12c covers deliverables, a complete example capstone walkthrough, and the final checklist.


Key Takeaways

  • Plan before implementing - Architecture diagram + checklist saves time
  • Integration is incremental - Add one tool at a time, test, then add next
  • Test against your threat model - Simulate the attacks you identified
  • Document everything - Future you will thank present you
  • Trade-offs are expected - Security vs usability vs complexity