SSH 로그에서 "정상 종료, [preauth]를 플레이해 주셔서 감사합니다"는 무엇을 의미합니까?

SSH 로그에서 "정상 종료, [preauth]를 플레이해 주셔서 감사합니다"는 무엇을 의미합니까?

최근 Logwatch의 Ubuntu 12.04 서버에 대한 SSH 로그 요약에 "11: 정상 종료, [preauth]를 플레이해 주셔서 감사합니다" 항목과 함께 "11: Bye Bye [preauth]" 및 "11: 연결 끊김" 항목이 표시되기 시작했습니다. 사용자' 메시지가 이전에 표시되었습니다.

지난 몇 주 전에는 내 로그에서 이 메시지를 본 적이 없으며 Ubuntu 10.04에 멈춰 있는 이전 서버에서도 이 메시지를 본 적이 없습니다. 나는 이 메시지를 구글링했는데 거기에서도 명확한 설명을 찾을 수 없습니다.

로그인을 시도하고 이 메시지를 받는 IP는 무작위 해킹 시도이며, 사전 승인으로 판단하면 성공하지 못할 것이라고 가정합니다(희망). 하지만 이 메시지가 정확히 무엇을 의미하는지, 다른 메시지와 어떻게 다른지 확실히 알고 싶습니다.

추가 정보 편집: 내 서버에 비밀번호 인증과 루트 인증이 모두 비활성화되어 있습니다.

답변1

SSH 클라이언트가 "정상적인" 연결 종료를 수행하면 메시지가 포함된 패킷을 보냅니다. SSH 데몬이 예상하지 못한 패킷을 받으면(이 경우에는 사용자가 인증을 받기 전에) 메시지를 기록합니다. (이전 버전의 OpenSSH는 이 작업을 수행하지 않았습니다.) 따라서 귀하의 추측은 정확합니다. 이는 무차별 SSH 비밀번호 추측 공격의 부작용입니다. iptables에서 이를 차단하려면 fall2ban 또는 sshguard와 같은 프로그램을 실행해야 할 것입니다. 비밀번호를 허용하지 않도록 모든 것이 올바르게 구성되어 있다고 생각하더라도 두 번째 방어 계층을 마련하는 것이 좋습니다.

답변2

허용된 답변은 정확하지만 관리자가 이전에 로그 파일에서 이러한 메시지를 볼 수 없었던 이유를 설명하는 변경 이유를 보완하기 위해 이 답변을 게시할 것이라고 생각했습니다.

이 문제는 2014년 1월 OpenSSH 개발자 목록에서 논의되었습니다.OpenSSH 개발자 Damien Miller,

메시지는 기본적으로 영원히 존재했습니다.

1.41(markus 2001년 1월 2일): log("%s에서 연결 끊김을 받았습니다: %d: %.400s", ...

최근에 변경된 유일한 사항은 5.9 릴리스의 privsep 모드에서 사전 인증 메시지 로깅을 개선하여 더 이상 /dev/logprivsep chroot 내부가 필요하지 않다는 것입니다. 이전 OpenSSH 버전이 <5.9이고 /var/emptychroot에 a가 없으면 /dev/log이러한 메시지가 누락되었을 수 있습니다.

답변3

나 역시 최근 내 서버에서 open-ssh 패키지를 업그레이드한 이후 내 로그 파일에서 이러한 메시지를 발견했습니다.

하지만 메시지가 반드시 해킹 시도를 암시한다고는 생각하지 않습니다. 일부 문구는 합법적인 SSH 클라이언트에 하드코딩되어 있는데, 아마도 원래 개발 코드의 남은 부분일 것입니다. 예를 들어 내 iOS ssh-client(iSSH)는 내 서버에서 연결을 끊을 때 이 문구를 내보냅니다.

관련 정보