fork of ssh for access of stuff
Go to file
Matt Aitchison b47c6daa4b server: first pass at Shutdown and Close (#34)
* server: first pass at Shutdown and Close
* server: remove unused struct field
* server: replace http reference in error

closes: #22
2017-05-22 16:11:06 -05:00
_example agent forwarding support (#31) 2017-04-14 14:47:40 -05:00
agent.go agent forwarding support (#31) 2017-04-14 14:47:40 -05:00
circle.yml update config for CircleCI 2.0 (#39) 2017-04-29 00:11:02 -05:00
context_test.go Support for local port forwarding (#38) 2017-04-28 17:54:12 -05:00
context.go agent forwarding support (#31) 2017-04-14 14:47:40 -05:00
doc.go more docs, license, readme. 2016-11-30 16:06:57 -06:00
example_test.go contexts (#29) 2017-03-14 14:13:03 -05:00
LICENSE more docs, license, readme. 2016-11-30 16:06:57 -06:00
options_test.go Support for local port forwarding (#38) 2017-04-28 17:54:12 -05:00
options.go contexts (#29) 2017-03-14 14:13:03 -05:00
README.md agent forwarding support (#31) 2017-04-14 14:47:40 -05:00
server_test.go server: first pass at Shutdown and Close (#34) 2017-05-22 16:11:06 -05:00
server.go server: first pass at Shutdown and Close (#34) 2017-05-22 16:11:06 -05:00
session_test.go Support for local port forwarding (#38) 2017-04-28 17:54:12 -05:00
session.go agent forwarding support (#31) 2017-04-14 14:47:40 -05:00
ssh_test.go fix test 2016-12-18 18:47:50 +01:00
ssh.go Support for local port forwarding (#38) 2017-04-28 17:54:12 -05:00
tcpip_test.go Support for local port forwarding (#38) 2017-04-28 17:54:12 -05:00
tcpip.go Support for local port forwarding (#38) 2017-04-28 17:54:12 -05:00
util.go fixed/finished basic pty support, added an example, and included tests (#25) 2017-02-15 18:08:25 -06:00
wrap.go contexts (#29) 2017-03-14 14:13:03 -05:00

gliderlabs/ssh

Slack GoDoc Go Report Card OpenCollective OpenCollective

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 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 _example directory.

Usage

See GoDoc reference.

Testing

We could use some help figuring out the best way to test this library. Since there is very little functionality it's adding, it doesn't seem appropriate to duplicate the crypto/ssh tests, however, maybe that's actually the best idea. Perform the same tests using this API.

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.

Backers

Support us with a monthly donation and help us continue our activities. [Become a backer]

Sponsors

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

License

BSD