diff options
Diffstat (limited to 'modules/ssh/ssh.go')
-rw-r--r-- | modules/ssh/ssh.go | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/modules/ssh/ssh.go b/modules/ssh/ssh.go index b35973cc32..056ef084ef 100644 --- a/modules/ssh/ssh.go +++ b/modules/ssh/ssh.go @@ -110,10 +110,10 @@ func handleServerConn(keyID string, chans <-chan ssh.NewChannel) { } } -func listen(config *ssh.ServerConfig, port int) { - listener, err := net.Listen("tcp", "0.0.0.0:"+com.ToStr(port)) +func listen(config *ssh.ServerConfig, host string, port int) { + listener, err := net.Listen("tcp", host+":"+com.ToStr(port)) if err != nil { - panic(err) + log.Fatal(4, "Fail to start SSH server: %v", err) } for { // Once a ServerConfig has been configured, connections can be accepted. @@ -148,7 +148,7 @@ func listen(config *ssh.ServerConfig, port int) { } // Listen starts a SSH server listens on given port. -func Listen(port int) { +func Listen(host string, port int) { config := &ssh.ServerConfig{ PublicKeyCallback: func(conn ssh.ConnMetadata, key ssh.PublicKey) (*ssh.Permissions, error) { pkey, err := models.SearchPublicKeyByContent(strings.TrimSpace(string(ssh.MarshalAuthorizedKey(key)))) @@ -185,5 +185,5 @@ func Listen(port int) { } config.AddHostKey(private) - go listen(config, port) + go listen(config, host, port) } |