Skip to content

docs: stratum authentication against a Pithead stack (set the pool pass)#97

Merged
VijitSingh97 merged 1 commit into
mainfrom
docs/stratum-password
Jun 11, 2026
Merged

docs: stratum authentication against a Pithead stack (set the pool pass)#97
VijitSingh97 merged 1 commit into
mainfrom
docs/stratum-password

Conversation

@VijitSingh97

Copy link
Copy Markdown
Contributor

Companion to pithead#207, which adds an optional stratum password
(p2pool.stratum_password) to the stack. When the operator turns it on, the stack's
:3333 proxy rejects any rig whose stratum pass doesn't match — XMRig logs
Permission denied and the rig won't mine.

RigForge already carries the secret: pools[].pass is XMRig's native field (default
"x"). So this is documentation + a contract test, not a code change.

What's here

  • docs/pithead-integration.md — new Stratum authentication (optional) subsection
    under the mining connection: set the rig's pools[].pass to the stack's
    p2pool.stratum_password, where to find the value (printed by pithead apply/setup,
    stored in the stack .env, shown by pithead status), and the cleartext-over-LAN
    caveat. Plus a troubleshooting row for the Permission denied symptom. Cross-links the
    stack's docs/workers.md#authentication.
  • docs/configuration.md — the pools[].pass reference now explains the
    stratum-password use case instead of just showing the default.
  • tests — assert a Pithead-style password (auto-generated hex, and a literal with the
    . _ : @ - punctuation Pithead's validator allows) flows through verbatim as the pool
    pass. This pins the cross-repo contract: a stack-side secret is always a valid XMRig
    pass (RigForge validates pass as any printable non-space, a superset of Pithead's
    charset). Suite stays green (545), lint clean.

Test plan

  • make lint test-suite — 545 pass, shellcheck + shfmt clean
  • New tests confirm hex + symbol passwords survive parse → POOLS_JSON
  • Doc anchors resolve (#stratum-authentication-optional, #pools-full-control)

Refs pithead#152, pithead#207, pithead#208 (the default-on / auto-fetch follow-up).

Pithead added an optional stratum password (p2pool.stratum_password,
pithead#152/#207): when the operator turns it on, the stack's :3333 proxy rejects
any rig whose stratum 'pass' doesn't match (XMRig logs "Permission denied"). RigForge
already carries the secret — pools[].pass is XMRig's native field (default "x") — so
this is documentation, not a code change.

- docs/pithead-integration.md: new "Stratum authentication (optional)" subsection under
  the mining connection — set pools[].pass to the stack's p2pool.stratum_password, where
  to find the value (printed by pithead apply/setup, in .env, shown by pithead status),
  and the cleartext-over-LAN caveat. Cross-links pithead docs/workers.md#authentication.
  Plus a troubleshooting row for the "Permission denied" symptom.
- docs/configuration.md: the pools[].pass reference now explains the stratum-password
  use case instead of just showing the default.
- tests: assert a Pithead-style password (auto-generated hex, and a literal with the
  . _ : @ - punctuation Pithead allows) flows through verbatim as the pool pass — the
  cross-repo contract that a stack-side secret is always a valid XMRig pass.

Refs pithead#152, pithead#207, pithead#208.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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