Skip to content

204iot/ssh

This branch is 36 commits behind gliderlabs/ssh:master.

Folders and files

NameName
Last commit message
Last commit date
Jun 19, 2019
Nov 30, 2016
Dec 6, 2017
Jan 9, 2018
May 7, 2018
Mar 31, 2019
Feb 23, 2019
Apr 28, 2017
Nov 13, 2018
Mar 14, 2017
Nov 1, 2017
Oct 9, 2019
Oct 16, 2019
Oct 16, 2019
Jun 20, 2019
Oct 16, 2019
Oct 9, 2019
Dec 18, 2016
Jun 19, 2019
Sep 24, 2018
Mar 8, 2019
Mar 14, 2017

Repository files navigation

gliderlabs/ssh

GoDoc CircleCI Go Report Card OpenCollective Slack Email Updates

The Glider Labs SSH server package is dope. —@bradfitz, Go team member

This Go package wraps the crypto/ssh package with a higher-level API for building SSH servers. The goal of the API was to make it as simple as using net/http, so the API is very similar:

 package main

 import (
     "github.com/gliderlabs/ssh"
     "io"
     "log"
 )

 func main() {
     ssh.Handle(func(s ssh.Session) {
         io.WriteString(s, "Hello world\n")
     })  

     log.Fatal(ssh.ListenAndServe(":2222", nil))
 }

This package was built by @progrium after working on nearly a dozen projects at Glider Labs using SSH and collaborating with @shazow (known for ssh-chat).

Examples

A bunch of great examples are in the _examples directory.

Usage

See GoDoc reference.

Contributing

Pull requests are welcome! However, since this project is very much about API design, please submit API changes as issues to discuss before submitting PRs.

Also, you can join our Slack to discuss as well.

Roadmap

  • Non-session channel handlers
  • Cleanup callback API
  • 1.0 release
  • High-level client?

Sponsors

Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]

License

BSD

Packages

No packages published

Languages

  • Go 99.9%
  • Dockerfile 0.1%