Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
ssh-chatter — ssh-chat in modern c | Kitploit
Tools/GitHubGitHub/gosuda/ssh-chatter
Encryption/Decryption ToolsScripting & AutomationNetwork SecurityCTFPrivacyUtilities & FrameworksAuthenticationLearning & EducationAI Security
GitHubgosuda/ssh-chatter

ssh-chatter

ssh-chat in modern c

332174h 22m agoReviewed by Kitploit

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share
View Repository

SSH-Chatter: TUI Bulletin Board System in C

Logo

ssh [email protected]

General BBS Software

SSH-Chatter has started from a C reimplementation of the Go ssh-chat server. It mirrors/extends the original behaviour while using modern C patterns and a small, testable core. The server listens for SSH/TELNET connections and places every authenticated user into a shared chat room that exposes the same command surface as the Go reference implementation.

Do you know why it takes so long to understand C? Because it is an instinct.

Recent enhancements

  • Terminal-friendly RSS reader accessible with /rss list, /rss read <tag>, plus /rss add <url> <tag> and /rss del <tag> (operators only) so the room can browse headlines together.
  • Background BBS watchdog thread that uses the Gemini/Ollama moderation backends to remove posts that advertise crimes or harmful material, plus /delete-msg for targeted chat history cleanup.
  • /bbs command unlocking an immersive retro bulletin board system with tags, comments, bumping, and a multi-line composer.
    • Dynamic Sorting (Reddit/Discord Style): View posts sorted by bumped (recent activity), hot (trending by score & comments), top (highest net upvotes score), or new (creation date) using list [hot|top|new|bumped|all].
    • Search (Google Search Sense): Instantly search post titles, bodies, authors, or tags case-insensitively with search <query>.
    • Upvote/Comment Badges (Reddit/Discord Style): Displays net upvote score and comment counts in colorized status badges (▲ 12 💬 5) directly in listings.
    • Seamless Navigation: Instantly return to the dashboard list by hitting Enter while reading a post, or refresh the list by hitting Enter from the listing screen. Auto-routes commands without needing a /bbs prefix inside BBS mode.
  • /asciiart live composer with a 640-line limit, a ten-minute per-IP cooldown, multi-line output, and keyboard shortcuts for cancelling with Ctrl+A and submitting with Ctrl+S or the locale-aware >/__ARTWORK_END> default.
  • /birthday to register birthdays, /grant <ip> so LAN operators can delegate privileges by address, and /revoke <ip> so top LAN admins can reclaim them.
  • Chat UI refresh with a clean divider between history and input, instant input clearing after send, and a friendly "Wait for a moment..." banner
  • Friendly multilingual captcha featuring easy comparisons and language-based name counts.
  • Expanded nickname support for non-Latin characters plus /ban upgrades that accept raw IP addresses alongside usernames.
  • /weather <city> for quick global forecasts.
  • Simplified experience with polls, status messages, and the Eliza moderator removed.

Preview

Preview

Preview

Repository layout

The codebase is intentionally compact so new contributors can navigate it quickly:

PathDescription
src/main.cCommand-line parsing and process bootstrap (bind address, port, MOTD, host key directory).
src/host_aggregate.c, include/ssh_chatter/host.hChat host implementation – session lifecycle, MOTD handling, and hooks for future message broadcast logic.
src/hostModular host subsystems that compile into a single translation unit through src/host_aggregate.c.
include/ssh_chatterShared headers for the daemon, stress tools, and the translation backend.
include/ssh_chatter/contextsDefinitions for session_ctx_t and related structures that encapsulate per-connection state.
data/banner/bannerSample welcome banner that can be pointed to with CHATTER_WELCOME_BANNER.
scripts/install_chatter_service.shConvenience installer that builds the binary, installs it under /usr/local/bin, and wires up a systemd unit (chatter.service).
scripts/install_dependencies.shMinimal package installer for build prerequisites on Debian/Ubuntu systems.

Architecture

Architecture

Staying current with main

The work branch regularly diverges from upstream development so larger features can incubate without interrupting production traffic. When it is time to synchronize with main, pull the latest tree and merge it locally before opening a pull request:

git fetch origin main
git checkout work
git merge --no-ff origin/main

Resolve any conflicts in place (the src/host_aggregate.c helper routines already mirror the layout used on main, so merges are typically straightforward) and run make to confirm the build still succeeds before pushing the result.

Automation hooks

  • host_snapshot_last_captcha exposes the most recently generated captcha prompt and answer along with a timestamp so external clients can pass challenges on behalf of unattended automation.

Security hardening

  • scripts/safe_permission.sh tightens the ownership and mode on runtime data files (BBS state, vote state, cooldown snapshots, and general chatter state). Run it after deployment to confine the data directory to ssh-chatter and to ensure each file is set to 0600. Override the targets by passing explicit paths or by exporting STATE_ROOT or the corresponding CHATTER_*_FILE environment variables before execution.
  • A background BBS watchdog periodically feeds posts and comments through the AI moderation pipeline (Gemini primary with Ollama fallback). Flagged posts are removed automatically and a notice is broadcast to the room.
  • Chat messages, ASCII art, and BBS posts/comments flow through an AI moderation pipeline. Enable it with CHATTER_SECURITY_AI=on (set GEMINI_API_KEY for Gemini; the daemon automatically falls back to the local Ollama endpoint at http://127.0.0.1:11434). Disable everything with CHATTER_SECURITY_FILTER=off. If every provider fails, the filter automatically disables itself to keep conversations flowing instead of silently dropping content.
  • SSH transport is pinned to modern key exchanges, ciphers, and MACs, and every bridge payload is wrapped in a triple AES-256-GCM onion so relays only see ciphertext.
  • Suspicious submissions that trip the layered filter are now tracked per-IP; repeated hits trigger an automatic kick and ban when enabled, while the rapid reconnect detector allows longer recovery windows so unstable network sessions can rejoin without being penalized. Automatic ban entries are off by default; set CHATTER_AUTO_BAN=on (or true/1) to enable them, or leave the variable unset to keep warnings and throttling without writing automatic ban entries.
  • Operators can mark trusted ingress points (VPN exits, reverse proxies, localhost) with CHATTER_PROTECTED_IPS (comma-separated, defaults to 127.0.0.1,::1,192.168.0.1) so emergency bans never lock the daemon out of its own control plane.

File storage and transfers

Download Tool