
모든 연결을 기록하는 로그인 Centos 서버가 있습니까?
중앙 집중식 연결 로그와 같은 것
답변1
모든 TCP 연결에 대한 단일 중앙 집중식 로그를 얻는 유일한 확실한 방법은 SYN 및 ACK 비트가 설정된 모든 패킷, 즉 TCP 연결의 두 번째 패킷을 기록하는 LOG
규칙을 소프트웨어 방화벽 구성에 추가하는 것입니다. 이는 기본적으로 iptables
커널 로그 메시지로 나타납니다 ./var/log/messages
참조하세요이 질문은 Server Fault.SE에 있습니다.
기본적으로 다음과 같은 iptables 규칙을 추가하고 싶을 것입니다:
iptables -A OUTPUT -p tcp --tcp-flags SYN,ACK SYN,ACK -j LOG --log-prefix "Inbound connection established: "
iptables -A INPUT -p tcp --tcp-flags SYN,ACK SYN,ACK -j LOG --log-prefix "Outbound connection established: "
(호스트 내의 애플리케이션 프로세스 간 각 로컬 연결에 대해 두 개의 항목이 생성될 수 있으므로 루프백 인터페이스에 적용되지 않도록 기존 규칙 세트에 이러한 규칙을 배치할 수 있습니다.)
그리고 그렇습니다. OUTPUT 체인의 규칙은 인바운드 연결을 기록하고 그 반대의 경우도 마찬가지입니다. 이는 실제로 응답 중인 연결만 기록하기 때문입니다. SYN 패킷만 기록하면 거부될 연결 시도도 기록됩니다. 인터넷의 맬웨어에 휩싸인 시스템에 의해 실행되는 포트 스캔으로 인해 쓸모없는 로그 항목이 많이 생성되는 경우가 많습니다. 서비스가 전혀 실행 중이거나 다른 iptables
규칙이나 문제의 서비스에 의해 연결이 거부되었습니다.
UDP 프로토콜의 경우 UDP는 연결이 없고 기본적으로 애플리케이션별 프로토콜을 구축할 수 있는 플랫폼일 뿐이므로 더 까다롭습니다. 따라서 "연결의 첫 번째 패킷"이나 이와 유사한 것을 감지하는 쉬운 방법은 없습니다. 모든 것이 전적으로 애플리케이션마다 다르기 때문입니다.
답변2
나는 이것이 그렇게 해야 한다고 생각한다:
journalctl -fu sshd
또는
journalctl -u sshd -n 100
즉, systemd를 실행하는 경우 이것이 기본값이라고 생각합니다. 전자는 감시를 유지할 것입니다. 후자는 꼬리를 통한 배관과 동일합니다.
(읽어보면 로그가 실제로 /var/log/secure에 있어야 함을 나타내는 것 같습니다)