diff --git a/_examples/ssh-localforward/localforward.go b/_examples/ssh-localforward/localforward.go new file mode 100644 index 0000000..b72a8ba --- /dev/null +++ b/_examples/ssh-localforward/localforward.go @@ -0,0 +1,30 @@ +package main + +import ( + "io" + "log" + + "github.com/gliderlabs/ssh" +) + +func main() { + log.Println("starting ssh server on port 2222...") + + server := ssh.Server{ + LocalPortForwardingCallback: ssh.LocalPortForwardingCallback(func(ctx ssh.Context, dhost string, dport uint32) bool { + log.Println("Accepted forward", dhost, dport) + return true + }), + Addr: ":2222", + Handler: ssh.Handler(func(s ssh.Session) { + io.WriteString(s, "Local forwarding available...\n") + select {} + }), + ChannelHandlers: map[string]ssh.ChannelHandler{ + "session": ssh.DefaultSessionHandler, + "direct-tcpip": ssh.DirectTCPIPHandler, + }, + } + + log.Fatal(server.ListenAndServe()) +} diff --git a/_examples/ssh-remoteforward/portforward.go b/_examples/ssh-remoteforward/portforward.go index 2ce866f..40ec103 100644 --- a/_examples/ssh-remoteforward/portforward.go +++ b/_examples/ssh-remoteforward/portforward.go @@ -14,10 +14,6 @@ func main() { forwardHandler := &ssh.ForwardedTCPHandler{} server := ssh.Server{ - LocalPortForwardingCallback: ssh.LocalPortForwardingCallback(func(ctx ssh.Context, dhost string, dport uint32) bool { - log.Println("Accepted forward", dhost, dport) - return true - }), Addr: ":2222", Handler: ssh.Handler(func(s ssh.Session) { io.WriteString(s, "Remote forwarding available...\n")