Skip to content

Commit 090f9ae

Browse files
committed
fix: docs site - line breaks in terminals, scroll spy, fw-presets as Red Team section, Red Team heading
1 parent 74ac759 commit 090f9ae

1 file changed

Lines changed: 51 additions & 35 deletions

File tree

docs/index.html

Lines changed: 51 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,7 @@
334334
font-family: var(--mono);
335335
font-size: .8rem;
336336
line-height: 1.8;
337+
white-space: pre;
337338
-webkit-overflow-scrolling: touch;
338339
}
339340

@@ -449,6 +450,10 @@
449450
padding-left: .75rem;
450451
margin-bottom: 1.5rem;
451452
}
453+
h2.section-group-heading {
454+
border-left-color: var(--red);
455+
margin-top: 2.5rem;
456+
}
452457

453458
h3 {
454459
font-size: 1rem;
@@ -863,8 +868,8 @@ <h1 class="hero-title">
863868
<span class="terminal-title">do-manager</span>
864869
</div>
865870
<div class="terminal-body" id="hero-term" style="min-height:220px">
866-
<span class="p">$ </span><span id="type-line" class="c"></span><span class="cursor" id="cursor"></span>
867-
</div>
871+
<span class="p">$ </span><span id="type-line" class="c"></span><span class="cursor" id="cursor"></span>
872+
</div>
868873
</div>
869874
</div>
870875
</div>
@@ -1669,35 +1674,6 @@ <h2>Firewalls</h2>
16691674
</div>
16701675
</div>
16711676

1672-
<h3 id="fw-presets">Firewall Presets</h3>
1673-
<p>Apply a named opinionated ruleset for common Red Team roles. Use <code>--operator-ip</code> to restrict SSH to your IP only.</p>
1674-
1675-
<div class="table-scroll">
1676-
<table class="compare-table">
1677-
<thead><tr><th>Profile</th><th>Inbound</th><th>Outbound</th><th>Use case</th></tr></thead>
1678-
<tbody>
1679-
<tr><td><code>c2</code></td><td>443, 80, 53, SSH(op-ip)</td><td>all</td><td>Command &amp; Control server</td></tr>
1680-
<tr><td><code>phishing</code></td><td>443, 80, 8080, SSH(op-ip)</td><td>all</td><td>GoPhish / evilginx2</td></tr>
1681-
<tr><td><code>redirector</code></td><td>443, 80, SSH(op-ip)</td><td>443, 80</td><td>Traffic redirector (socat/nginx)</td></tr>
1682-
<tr><td><code>bastion</code></td><td>SSH(op-ip) only</td><td>all</td><td>Jump host</td></tr>
1683-
<tr><td><code>lockdown</code></td><td>SSH(op-ip) only</td><td>none</td><td>Fully locked node</td></tr>
1684-
</tbody>
1685-
</table>
1686-
</div>
1687-
1688-
<div class="terminal">
1689-
<div class="terminal-bar"><span class="tl tl-r"></span><span class="tl tl-y"></span><span class="tl tl-g"></span><span class="terminal-title">terminal</span><button class="copy-btn" onclick="copyTerminal(this)"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"/><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"/></svg>copy</button></div>
1690-
<div class="terminal-body">
1691-
<span class="dm"># Apply the c2 preset - SSH restricted to your IP only</span>
1692-
<span class="p">$ </span><span class="c">do-manager firewall preset c2 \</span>
1693-
<span class="o"> --name c2-fw \</span>
1694-
<span class="o"> --droplets 12345678 \</span>
1695-
<span class="o"> --operator-ip 203.0.113.1</span>
1696-
<span class="ok">✓ Firewall preset c2 applied</span>
1697-
<span class="o"> ID: abc-123</span>
1698-
<span class="o"> Rules: 5 inbound 3 outbound</span>
1699-
</div>
1700-
</div>
17011677
</section>
17021678

17031679
<hr />
@@ -1843,6 +1819,8 @@ <h3>Commands</h3>
18431819

18441820
<hr />
18451821

1822+
<h2 class="section-group-heading">Red Team</h2>
1823+
18461824
<!-- CAMPAIGN -->
18471825
<section id="campaign" class="reveal">
18481826
<h2>Campaign</h2>
@@ -1990,6 +1968,41 @@ <h3>Rebuild a burned node</h3>
19901968

19911969
<hr />
19921970

1971+
<!-- FIREWALL PRESETS -->
1972+
<section id="fw-presets" class="reveal">
1973+
<h2>Firewall Presets</h2>
1974+
<p>Apply a named opinionated ruleset for common Red Team roles. Use <code>--operator-ip</code> to restrict SSH to your IP only.</p>
1975+
1976+
<div class="table-scroll">
1977+
<table class="compare-table">
1978+
<thead><tr><th>Profile</th><th>Inbound</th><th>Outbound</th><th>Use case</th></tr></thead>
1979+
<tbody>
1980+
<tr><td><code>c2</code></td><td>443, 80, 53, SSH(op-ip)</td><td>all</td><td>Command &amp; Control server</td></tr>
1981+
<tr><td><code>phishing</code></td><td>443, 80, 8080, SSH(op-ip)</td><td>all</td><td>GoPhish / evilginx2</td></tr>
1982+
<tr><td><code>redirector</code></td><td>443, 80, SSH(op-ip)</td><td>443, 80</td><td>Traffic redirector (socat/nginx)</td></tr>
1983+
<tr><td><code>bastion</code></td><td>SSH(op-ip) only</td><td>all</td><td>Jump host</td></tr>
1984+
<tr><td><code>lockdown</code></td><td>SSH(op-ip) only</td><td>none</td><td>Fully locked node</td></tr>
1985+
</tbody>
1986+
</table>
1987+
</div>
1988+
1989+
<div class="terminal">
1990+
<div class="terminal-bar"><span class="tl tl-r"></span><span class="tl tl-y"></span><span class="tl tl-g"></span><span class="terminal-title">terminal</span><button class="copy-btn" onclick="copyTerminal(this)"><svg width="12" height="12" viewBox="0 0 16 16" fill="currentColor"><path d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"/><path d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"/></svg>copy</button></div>
1991+
<div class="terminal-body">
1992+
<span class="dm"># Apply the c2 preset - SSH restricted to your IP only</span>
1993+
<span class="p">$ </span><span class="c">do-manager firewall preset c2 \</span>
1994+
<span class="o"> --name c2-fw \</span>
1995+
<span class="o"> --droplets 12345678 \</span>
1996+
<span class="o"> --operator-ip 203.0.113.1</span>
1997+
<span class="ok">✓ Firewall preset c2 applied</span>
1998+
<span class="o"> ID: abc-123</span>
1999+
<span class="o"> Rules: 5 inbound 3 outbound</span>
2000+
</div>
2001+
</div>
2002+
</section>
2003+
2004+
<hr />
2005+
19932006
<!-- TEMPLATES -->
19942007
<section id="templates" class="reveal">
19952008
<h2>Templates</h2>
@@ -2294,14 +2307,17 @@ <h2>Library Usage</h2>
22942307
document.querySelectorAll('.reveal').forEach(el => revealObs.observe(el));
22952308

22962309
/* ---- Sidebar scroll spy ---- */
2297-
const sections = document.querySelectorAll('section[id]');
2298-
const slinks = document.querySelectorAll('.sidebar .slink');
2310+
const slinks = document.querySelectorAll('.sidebar .slink');
2311+
const targets = [...slinks]
2312+
.map(l => document.getElementById(l.getAttribute('href').slice(1)))
2313+
.filter(Boolean)
2314+
.sort((a, b) => a.offsetTop - b.offsetTop);
22992315

23002316
function updateSpy() {
23012317
const offset = 80;
23022318
let current = null;
2303-
sections.forEach(s => {
2304-
if (s.getBoundingClientRect().top <= offset) current = s.id;
2319+
targets.forEach(el => {
2320+
if (el.getBoundingClientRect().top <= offset) current = el.id;
23052321
});
23062322
slinks.forEach(l => l.classList.remove('active'));
23072323
if (current) {

0 commit comments

Comments
 (0)