godcrm/deploy/printer/moonraker-tunnel.service
GOD CRM Release 065f2edd23
Some checks are pending
CI / Lint / Typecheck / Test / Build (push) Waiting to run
CI / PostgreSQL Integration Tests (push) Waiting to run
GOD CRM — public scrubbed snapshot (2026-08-30)
Refresh of the open-core distribution from the private tree.

Included since the previous snapshot:
- Mail module (ADR-158/159/160/169): composer, labels, scheduling,
  attachments, reply-tokens, IMAP/SMTP bridge + migrations 079-083
- Crawler-readable SSR for /blog and public spaces (ADR-190):
  blogSeo, publicDocsSeo, per-space SEO prefs, blog index/post pages
- Registration policy + referral/promo settings (ADR-183/188)
- Message translation + language detection (ADR-185)
- Reddit connector for the agent-tool surface

Excised from the public distribution (unchanged policy): infrastructure
topology and host config, internal ops scripts, DB cleanup snapshots,
business documents, throwaway debug scripts, and two private product
lines (SC-SIM simulator, personal one-off tools). Real host addresses
are replaced with placeholders; credential-shaped literals are redacted.

Frontend build verified green on this tree.
2026-08-30 15:13:28 +03:00

31 lines
1.1 KiB
Desktop File

# Reverse SSH tunnel: MKS Pi (Klipper/Moonraker) -> godcrm server
# Exposes the printer's local Moonraker (127.0.0.1:7125) on the server's
# localhost:7125, where backend/services/agent-tools/printer-tools.js reads it.
#
# Install ON THE MKS Pi (NOT on the CRM server):
# sudo cp deploy/printer/moonraker-tunnel.service /etc/systemd/system/
# sudo cp mkspi_tunnel /home/<user>/.ssh/mkspi_tunnel && chmod 600 ...
# sudo systemctl daemon-reload && sudo systemctl enable --now moonraker-tunnel
#
# Server target = <PROD_HOST> / <PROD_IP> (single box, June 2026).
# If the CRM box migrates again, change ONLY the IP in ExecStart below.
[Unit]
Description=Reverse SSH tunnel to godcrm (Moonraker 7125)
After=network-online.target
Wants=network-online.target
[Service]
User=pi
Environment=AUTOSSH_GATETIME=0
ExecStart=/usr/bin/autossh -M 0 -N \
-o "ServerAliveInterval 30" -o "ServerAliveCountMax 3" \
-o "ExitOnForwardFailure yes" -o "StrictHostKeyChecking accept-new" \
-i /home/pi/.ssh/mkspi_tunnel \
-R 7125:localhost:7125 \
printer@<PROD_IP>
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target