웹사이트 검색

Graylog 서버에 Ubuntu 로그를 보내는 방법


이 페이지에서

  1. 전제 조건
  2. Graylog 입력 설정
  3. 로그를 보내도록 Ubuntu 클라이언트 구성
  4. Graylog 서버에서 로그 확인\n
  5. 결론

Graylog는 플랫폼 중앙 집중식 로그 관리 시스템입니다. 다중 플랫폼을 지원하는 DevOps 세계에서 가장 인기 있는 로그 관리 시스템 중 하나이며 Docker 및 Kubernetes와 같은 컨테이너 환경에 설치할 수 있습니다.

로그 관리 시스템으로서 Graylog는 다양한 유형의 애플리케이션 및 시스템에 대한 다중 입력을 지원합니다. 사용자 지정 응용 프로그램에 GELF(Graylog Extended Log Format)를 사용하여 Unix 계열 운영 체제용 Syslog 입력, Windows 시스템용 Windows EventLog를 사용할 수 있습니다.

이 튜토리얼에서는 Ubuntu 시스템에서 Graylog 서버로 로그 전송을 설정하는 방법을 배웁니다. 이 데모는 최신 Ubuntu 22.04 시스템을 클라이언트로 사용하고 Graylog 서버 v4.3을 사용합니다. Debian 11에서 Graylog 서버를 설정하는 방법을 알고 싶다면 여기를 살펴보십시오.

전제 조건

  • A Graylog 서버 설치 - 이 데모는 Debian 서버에 설치된 Graylog v4.3을 사용합니다.\n
  • Ubuntu 클라이언트 시스템 - 이 돔은 Ubuntu 22.04 서버를 사용합니다.\n
  • Sudo 관리자 권한이 있는 루트가 아닌 사용자.\n

그레이로그 입력 설정

Ubuntu 클라이언트 시스템 구성을 시작하기 전에 Graylog 서버에서 입력을 설정해야 합니다.

Graylog는 로깅 시스템에 대해 다양한 유형의 입력을 지원하며 여기에는 Syslog, Journald, Windows 이벤트 로그, Raw/Plaintext, 파일 등이 포함됩니다.

Linux 시스템의 경우 Syslog 입력을 사용하여 쉽게 Graylog 서버에 로그를 보낼 수 있습니다. Syslog 유형으로 Graylog 서버에 입력을 생성하기만 하면 특정 포트 및 IP 주소에서 자동으로 실행됩니다.

웹 브라우저를 열고 Graylog 서버 설치(예: http://graylog.hwdomain.io/)를 방문합니다. 기본 사용자 관리자와 강력한 암호를 사용하여 Graylog 서버에 로그인합니다.

이제 시스템 메뉴를 클릭하고 입력을 클릭하면 새 페이지가 나타납니다.

드롭다운 입력 페이지에서 "Syslog UDP" 입력 유형을 선택하고 "Launch new input" 버튼을 클릭합니다.

이제 Graylog 서버에서 Syslog 입력을 설정해야 합니다.

  • 여기의 노드는 자동으로 선택되므로 기본값으로 두십시오.
  • "Syslog Linux UDP"와 같이 새 입력의 제목을 입력합니다.\n
  • 바인드 주소는 입력에 대한 IP 주소를 지정할 수 있습니다. 이것은 서버의 로컬 IP 주소이거나 0.0.0.0을 사용하여 서버의 모든 IP 주소에서 입력을 실행할 수 있습니다.\n
  • 여기에 있는 포트는 입력에 다른 포트를 사용할 수 있습니다. 해당 포트에서 다른 서비스가 실행되고 있지 않은지 확인하고 포트가 1-1024 범위에 있지 않은지 확인하십시오. 이 데모에서는 UDP 포트 5148을 사용하고 있습니다.\n

이제 저장 버튼을 클릭하여 입력 생성을 확인합니다.

이제 입력 페이지에서 Graylog 서버에서 실행되는 모든 사용 가능한 입력을 볼 수 있습니다. 아래 스크린샷에서 "Syslog Linux UDP" 입력이 바인딩 주소 0.0.0.0으로 UDP 포트 5148에서 실행되고 있음을 볼 수 있습니다. 이는 서버의 모든 IP 주소에서 실행됨을 의미합니다.

로그를 보내도록 Ubuntu 클라이언트 구성

이제 Graylog 서버에 로그를 보내기 위해 Ubuntu 클라이언트 시스템을 구성할 시간입니다. 그리고 이것은 Rsyslog 서비스를 사용하여 수행할 수 있습니다.

먼저 아래의 ssh 명령을 사용하여 Ubuntu 머신에 연결합니다.

ssh 

Ubuntu 시스템에서 Rsyslog 패키지를 확인하고 설치되었는지 확인하십시오.

sudo dpkg -l | grep rsyslog
sudo apt info rsyslog

아래 스크린샷에서 rsyslog 패키지가 기본적으로 설치되어 있는 것을 볼 수 있습니다. 필드의 "ii"는 설치됨을 의미합니다.

이제 아래 명령을 사용하여 Rsyslog 서비스를 확인하십시오.

sudo systemctl is-enabled rsyslog
sudo systemctl status rsyslog

rsyslog 서비스가 활성화된 것을 볼 수 있습니다. 즉, 시스템 시작 시 자동으로 실행됩니다. 그리고 rsyslog 서비스의 현재 상태가 실행 중입니다.

rsyslog를 사용하여 Ubuntu 클라이언트 시스템에서 Graylog 서버로 로그를 보내려면 새로운 추가 rsyslog 구성을 생성해야 합니다. rsyslog의 기본 구성은 "/etc/rsyslog.conf" 파일이며 추가 rsyslog 구성은 "/etc/rsyslog.d" 에 저장할 수 있습니다. 디렉토리.

nano 편집기를 사용하여 새 추가 rsyslog 구성 "/etc/rsyslog.d/60-graylog.conf"을 만듭니다.

sudo nano /etc/rsyslog.d/60-graylog.conf

파일에 다음 구성을 추가합니다.

*.*@192.168.5.10:5148;RSYSLOG_SyslogProtocol23Format

완료되면 파일을 저장하고 닫습니다.

IP 주소는 192.168.5.10이며 UDP 포트 5148에서 입력을 실행하는 Graylog 서버의 IP 주소입니다.

이제 rsyslog 서비스를 다시 시작하여 아래 명령을 사용하여 새 변경 사항과 새 구성을 적용합니다.

sudo systemctl restart rsyslog

그리고 Graylog 서버에 로그를 보내기 위한 기본 rsyslog 구성을 완료했습니다.

Graylog 서버에서 로그 확인

이제 웹 브라우저와 Graylog 대시보드로 돌아갑니다. 상단의 검색 메뉴를 클릭하면 아래와 같이 Ubuntu 클라이언트 시스템의 모든 로그가 표시됩니다.

Graylog 검색 대시보드에서 서버 또는 애플리케이션의 로그 메시지를 필터링하고, 실시간으로 로그 메시지를 확인하고, 특정 시간 프레임의 로그 메시지를 확인하는 등의 작업을 수행할 수 있습니다.

결론

축하합니다! 이제 Graylog 서버에 로그를 전송하기 위해 Rsyslog 서비스를 사용하여 Ubuntu 클라이언트 시스템을 성공적으로 구성했습니다. 또한 Graylog 서버에서 새로운 입력 유형 Syslog UDP를 생성하여 Graylog 입력의 기본 구성을 배웠습니다. 로그를 보내는 또 다른 방법은 Syslog TCP, 파일, JSON 및 Elastic의 비트를 사용하는 것입니다.