From ef7b36ba45d93bbbb64d7c06a93f6470b8459994 Mon Sep 17 00:00:00 2001 From: Sam Xie Date: Fri, 15 Nov 2019 18:26:46 +0800 Subject: [PATCH 1/2] Remove useless setting at remoteforward example --- _examples/ssh-remoteforward/portforward.go | 4 ---- 1 file changed, 4 deletions(-) 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") From 0b90efacf612e38935d1691177eb779278868790 Mon Sep 17 00:00:00 2001 From: Sam Xie Date: Fri, 15 Nov 2019 18:27:29 +0800 Subject: [PATCH 2/2] Add localforward example --- _examples/ssh-localforward/localforward.go | 30 ++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 _examples/ssh-localforward/localforward.go 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()) +}