AUTH-1943 hooked up uploader to logger, added timestamp to session logs, add tests

This commit is contained in:
Dalton
2019-09-03 16:28:06 -05:00
parent dd521aba29
commit ee588eeeaa
13 changed files with 449 additions and 25 deletions

View File

@@ -98,7 +98,7 @@ func getCACert() (ssh.PublicKey, error) {
caCertPath := path.Join(systemConfigPath, "ca.pub")
caCertBytes, err := ioutil.ReadFile(caCertPath)
if err != nil {
return nil, errors.Wrap(err, fmt.Sprintf("Failed to load CA certertificate %s", caCertPath))
return nil, errors.Wrap(err, fmt.Sprintf("Failed to load CA certificate %s", caCertPath))
}
caCert, _, _, _, err := ssh.ParseAuthorizedKey(caCertBytes)
if err != nil {

View File

@@ -146,16 +146,16 @@ func (s *SSHServer) connectionHandler(session ssh.Session) {
defer pr.Close()
defer pw.Close()
logger, err := s.logManager.NewLogger(fmt.Sprintf("%s-session.log", sessionID), s.logger)
sessionLogger, err := s.logManager.NewSessionLogger(fmt.Sprintf("%s-session.log", sessionID), s.logger)
if err != nil {
if _, err := io.WriteString(session, "Failed to create log\n"); err != nil {
s.logger.WithError(err).Error("Failed to create log: Failed to write to SSH session")
}
s.CloseSession(session)
}
defer logger.Close()
defer sessionLogger.Close()
go func() {
io.Copy(logger, pr)
io.Copy(sessionLogger, pr)
}()
// Write outgoing command output to both the command recorder, and remote user