내 sshd 로그는 어디에 있습니까?


57

표준 장소에서 내 sshd 로그를 찾을 수 없습니다.

내가 시도한 것 :

  • 에 없습니다 /var/log/auth.log
  • 에 없습니다 /var/log/secure
  • 시스템이 'auth.log'아무것도 찾지 못했음
  • sshd /etc/ssh/sshd_config를 명시 적으로 사용 SyslogFacility AUTH하고 LogLevel INFO다시 시작 하도록 설정 했지만 여전히 찾을 수 없습니다.

Arch Linux에서 OpenSSH 6.5p1-2를 사용하고 있습니다.

답변:


50

systemctl에서 로그를 보려면이 명령을 시도하십시오.

journalctl -u sshd |tail -100

20
이것은 작동하지 않는 것 같지만 journalctl _COMM=sshd작동합니다.
wingedsubmariner

3
아, 네-systemctl은 평소와 같이 완전히 일관되고 예측 가능합니다.
g33kz0r

3
-f옵션을 사용하여 로그를 따를 수 있습니다 .journalctl -fu sshd
bzeaman

wingedsubmariner-거의 4 년이 지났다는 것을 알고 있지만 ... 당시에 어떤 배포판이 있었는지 기억하십니까? 배포판의 단위 파일이 "sshd"가 아닌 "openssh"또는 "ssh"라고 불렀습니다. 체계화 된 프로젝트의 장점은 배포판을 사용자로 간주하고 배포판은 단위 파일에 원하는 이름을 자유롭게 사용할 수 있다는 것입니다 (예 : apache2RedHat이 호출하는 데비안의 아파치 웹 서버 호출 httpd).
bobpaul

24

로그의 마지막 부분을 보는 더 좋은 방법은 다음과 같습니다.

journalctl -u sshd -n 100

tail출력에서 사용 하는 journalctl것은 매우 느릴 수 있습니다. 위의 명령이 즉시 반환되는 동안 시도한 컴퓨터에서 5 분이 걸렸습니다.


3
그리고 당신은 선 채색을 잃지 않습니다! IMO 최고 솔루션을해야한다
kuzyn


7

다음을 sshd사용하여 메시지를 필터링 할 수 있어야합니다 .

journalctl -u ssh

또는 (배포에 따라)

journalctl -u sshd

로그는 less스타일 형식으로 표시 됩니다 (검색 /, PgUp, PgDown 등을 통해 탐색 할 수 있음 ).

  • -e 로그 끝으로 이동합니다.
  • -u매개 변수 _SYSTEMD_UNIT는 (적어도 데비안에서는) 메타 필드 를 통해 필터링 ssh.service하므로 sshd일치하지 않습니다.
  • -f 실시간 로그 기록
  • -n 100주어진 줄 수를 표시합니다 (와 함께 유용 -f)

또는 메타 필드 필터링을 사용할 수 있습니다.

journalctl _COMM=sshd

JSON으로 내 보내서 모든 메타 필드와 함께 전체 저널 레코드를 표시 할 수 있습니다.

journalctl -u ssh -o json-pretty

그것은 당신에게 다음과 같은 것을 줄 것입니다 :

    ...
    "_PID" : "7373",
    "_COMM" : "sshd",
    "_EXE" : "/usr/sbin/sshd",
    "_SYSTEMD_CGROUP" : "/system.slice/ssh.service",
    "_SYSTEMD_UNIT" : "ssh.service",
    ...

커널 메시지 만 표시하는 방법이 궁금한 경우 :

journalctl -k -f

이 이상한 구문 ( journalctl _COMM=sshd)에 대한 설명이 있습니까?
Ortomala Lokni

@OrtomalaLokni 는 Debian에 설정된 -u메타 데이터 필드 _SYSTEMD_UNIT를 통해 필터링 합니다 ssh.service. 밑줄로 시작하는 모든 매개 변수가 메타 파일에 액세스하고 있습니다. 유사한 방법으로 당신을 통해 필터링 할 수 있습니다 _PID또는 _TRANSPORT.
Tombart

1

syslog 구성을 살펴보십시오. 가장 probalby /etc/syslog.conf또는 예를 들어 내 구성에서 /etc/rsyslog.conf 다음과 같은 줄을 찾아야합니다 auth.

auth,authpriv.* /var/log/auth.log

*.*;auth,authpriv.none -/var/log/syslog


4
해당 파일이 없습니다. 나는 그 파일들이 syslog-ng에 의해 생성되었다고 생각하지만 Arch는 그 파일을 systemd로 대체했습니다
HXCaine

Scientific Linux authpriv. * authpriv.* /var/log/secure에서 파일 내부를 가리 킵니다/etc/rsyslog.conf
Salem F
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.