( meta metadata.ConnectionMetadata, handlerNetworkConnection *networkConnectionWrapper, logger log.Logger, )
| 333 | } |
| 334 | |
| 335 | func (s *serverImpl) createConfiguration( |
| 336 | meta metadata.ConnectionMetadata, |
| 337 | handlerNetworkConnection *networkConnectionWrapper, |
| 338 | logger log.Logger, |
| 339 | ) *ssh.ServerConfig { |
| 340 | passwordCallback, pubkeyCallback, keyboardInteractiveCallback, gssConfig := s.createAuthenticators( |
| 341 | meta, |
| 342 | handlerNetworkConnection, |
| 343 | logger, |
| 344 | ) |
| 345 | |
| 346 | serverConfig := &ssh.ServerConfig{ |
| 347 | Config: ssh.Config{ |
| 348 | KeyExchanges: s.cfg.KexAlgorithms.StringList(), |
| 349 | Ciphers: s.cfg.Ciphers.StringList(), |
| 350 | MACs: s.cfg.MACs.StringList(), |
| 351 | }, |
| 352 | NoClientAuth: false, |
| 353 | MaxAuthTries: 6, |
| 354 | PasswordCallback: passwordCallback, |
| 355 | PublicKeyCallback: pubkeyCallback, |
| 356 | KeyboardInteractiveCallback: keyboardInteractiveCallback, |
| 357 | GSSAPIWithMICConfig: gssConfig, |
| 358 | ServerVersion: s.cfg.ServerVersion.String(), |
| 359 | BannerCallback: func(conn ssh.ConnMetadata) string { return s.cfg.Banner }, |
| 360 | } |
| 361 | for _, key := range s.hostKeys { |
| 362 | serverConfig.AddHostKey(key) |
| 363 | } |
| 364 | return serverConfig |
| 365 | } |
| 366 | |
| 367 | func (s *serverImpl) createAuthenticators( |
| 368 | meta metadata.ConnectionMetadata, |
no test coverage detected