Fix: KeyboardInteractive Login
+ Include KeyboardInteractive in decision if NoClientAuth should be performed + Add option for KeyboardInteractive
This commit is contained in:
parent
fb34512070
commit
1593226ea9
@ -42,6 +42,13 @@ func HostKeyFile(filepath string) Option {
|
||||
}
|
||||
}
|
||||
|
||||
func KeyboardInteractiveAuth(fn KeyboardInteractiveHandler) Option {
|
||||
return func(srv *Server) error {
|
||||
srv.KeyboardInteractiveHandler = fn
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
// HostKeyPEM returns a functional option that adds HostSigners to the server
|
||||
// from a PEM file as bytes.
|
||||
func HostKeyPEM(bytes []byte) Option {
|
||||
|
@ -124,7 +124,7 @@ func (srv *Server) config(ctx Context) *gossh.ServerConfig {
|
||||
for _, signer := range srv.HostSigners {
|
||||
config.AddHostKey(signer)
|
||||
}
|
||||
if srv.PasswordHandler == nil && srv.PublicKeyHandler == nil {
|
||||
if srv.PasswordHandler == nil && srv.PublicKeyHandler == nil && srv.KeyboardInteractiveHandler == nil {
|
||||
config.NoClientAuth = true
|
||||
}
|
||||
if srv.Version != "" {
|
||||
|
Loading…
Reference in New Issue
Block a user