데비안에서 Graylog2와 로그 파일을 모니터링 하는 방법 9

데비안에서 Graylog2와 로그 파일을 모니터링 하는 방법 9

그것은 팀워크의, 하지만 간단 하 게, 더 쾌적 하 고 더 많은 생산성.

Graylog는 자바 기반의 무료 및 오픈 소스 로그 관리 도구, 수집하는 데 사용할 수 있습니다 Elasticsearch 및 MongoDB를, 인덱스와 중앙 위치에서 모든 서버 로그를 분석. 당신은 쉽게 디버깅 애플리케이션을위한 SSH 로그인 및 비정상적인 활동을 모니터링하고 Graylog를 사용하여 로그. Graylog는 강력한 쿼리 언어를 제공, 능력을 경고, 데이터 변환 등을위한 프로세싱 파이프 라인. 당신은 REST API를 통해 Graylog의 기능을 확장하고 기능을 추가 할 수 있습니다.

Graylog은 세 가지 구성 요소로 구성되어 있습니다 :

  1. Elasticsearch : 그것은 모든 수신 메시지를 저장하고 검색 기능을 제공.
  2. MongoDB를 : 그것은 데이터베이스에 사용됩니다, 구성 및 메타 정보를 저장.
  3. Graylog 서버 : 이는 다양한 수신 입력에서 메시지를 처리하고 분석하고 모니터링하기위한 웹 인터페이스를 제공한다.

이 자습서에서는, 우리는 데비안에 Graylog2를 설치하는 방법을 설명합니다 9 서버.

전제 조건

  • 데비안 실행 하는 서버 9.
  • 최소 4 GB RAM.
  • 고정 IP 주소 192.168.0.187 서버에 설치.

1 필요한 패키지 설치

시작 하기 전에, 당신은 자바를 설치해야합니다 8 다른 시스템에 패키지를 필요. 필요한 모든 패키지는 데비안에서 사용할 수있는 것은 아닙니다 9 표준 저장소, 그래서 당신은 패키지 소스 목록에 데비안 백 포트를 추가해야합니다. 첫 번째, 루트 사용자로 로그인하고 backport.list 파일을 만듭니다

나노 /etc/apt/sources.list.d/backport.list

다음 줄을 추가합니다 :

뎁 http://ftp.debian.org/debian 제시 - 백 포트 메인

완료 되 면 파일을 저장, 다음 명령을 사용하여 시스템을 업데이트 :

-y 업데이트 apt-get을
-업그레이드-y

시스템되면 최신 상태, 다음 명령을 사용하여 모든 패키지를 설치합니다 :

pwgen을 -y 쉽다 - 전송 - HTTPS 오픈 JDK-8-JRE-헤드리스 (headless) UUID-런타임을 설치 apt-get을

일단 모든 필요한 패키지 설치, 당신은 MongoDB를 설치를 진행 할 수 있습니다.

2 MongoDB를 설치

MongoDB의 구성 및 메타 정보를 저장하는 데 필요한. MongoDB를 데비안에서 사용할 수 있습니다 9 기본 저장소, 그래서 당신은 단지 다음 명령을 실행하여 MongoDB를 설치할 수 있습니다 :

MongoDB의 서버 -y를 설치 apt-get을

MongoDB를 설치하면, 당신은 Elasticsearch 설치를 진행 할 수 있습니다.

3 Elasticsearch 설치

Elasticsearch는 Graylog 서버에서 전송 된 모든 로그를 저장하는 검색 서버의 역할을하고 당신이 요청 될 때마다 메시지를 표시합니다. Elasticsearch는 데비안에서 사용할 수 없습니다 9 기본 저장소. 당신은 데비안 패키지 소스에 Elasticsearch 저장소를 추가해야합니다.

첫 번째, 다운로드하고 다음 명령을 사용하여 Elasticsearch GPG 키를 추가 :

wget qO – https://packages.elastic.co/GPG-KEY-elasticsearch | APT 키 추가 –

다음, 다음 명령으로 Elasticsearch의 REPO 파일을 만듭니다 :

나노 /etc/apt/sources.list.d/elasticsearch.list

다음 줄을 추가합니다 :

뎁은 안정적인 주를 https://packages.elastic.co/elasticsearch/2.x/debian

당신이 마무리되면 파일을 저장, 다음 명령을 실행하여 저장소를 갱신 :

-y 업데이트 apt-get을

다음, 다음 명령을 실행하여 Elasticsearch를 설치 :

elasticsearch -y를 설치 apt-get을

Elasticsearch가 설치되면, 당신은 Elasticsearch 주 설정 파일을 수정해야합니다 :

나노 /etc/elasticsearch/elasticsearch.yml

다음과 같이 변경:

cluster.name: graylog
network.host: 192.168.0.187
discovery.zen.ping.timeout: 10s
discovery.zen.ping.multicast.enabled: false
discovery.zen.ping.unicast.hosts: ["192.168.0.187:9300"]

저장 하 고 완료 되 면 파일을 닫습니다, 다음 Elasticsearch 서비스를 시작하고 부팅 시작을 활성화 :

elasticsearch 시작 systemctl
elasticsearch 수 있도록 systemctl

몇 초 후, Elasticsearch가 제대로 실행되고 있는지 테스트하려면 다음을 실행합니다 :

컬 -XGET 'http://192.168.0.187:9200/_cluster/health?pretty=true’

확인 출력은 클러스터 상태로 표시 “그린”:

{
  "cluster_name" : "graylog",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 1,
  "active_shards" : 1,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 1,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 50.0
}

Elasticsearch를 설치하고 제대로 작동하면, 다음 단계를 진행할 수 있습니다..

4 Graylog 설치

Graylog는 데비안에서 사용할 수 없습니다 9 기본 저장소, 그래서 당신은 Graylog를 다운로드하고 설치해야합니다 2 첫 번째 저장소. 다음 명령을 실행 하 여이 수행할 수 있습니다.

wget을 https://packages.graylog2.org/repo/packages/graylog-2.2-repository_latest.deb
-i graylog -2,2- repository_latest.deb을 때 dpkg

저장소가 설치되면, 저장소를 업데이트하고 다음 명령을 Graylog 서버를 설치 :

-y 업데이트 apt-get을
graylog 서버 -y를 설치 apt-get을

Graylog를 설치 한 후, 당신은 사용자 암호를 보호하는 비밀을 설정하고 또한 루트 사용자의 해시 (SHA256) 암호를 설정해야합니다.

첫 번째, 다음 명령을 password_secret 생성 :

pwgen-N 1 -s 96

다음과 같은 출력이 표시 됩니다.

TRXbNPoW4gGC8BN8Gzl4wH3jtfLoi06WCJqia18UtYyPaNLx4r8U7jUPRlIJHoGGxrCjZVqAvW2DcueI6N1zHoy2bKEWLyyC

다음, 다음 명령을 루트 사용자에 대한 해시 암호를 생성합니다 :

-n youradminpassword 에코 | sha256sum

다음과 같은 출력이 표시 됩니다.

e3c5925aa22abdfa18cf197a7b218fcad31acb6409d2e2dbebae807d3a9750ee

참고 : 두 암호 키를 기억, 두 키는 server.conf에서 구성해야하므로.

다음, 당신은 / etc / graylog / 서버 / 디렉토리에있는 Graylog 서버 주 설정 파일을 수정해야합니다 :

나노 /etc/graylog/server/server.conf

다음과 같이 변경:

is_master = true
node_id_file = /etc/graylog/server/node-id
########past-your-password-secret-here#########
password_secret = TRXbNPoW4gGC8BN8Gzl4wH3jtfLoi06WCJqia18UtYyPaNLx4r8U7jUPRlIJHoGGxrCjZVqAvW2DcueI6N1zHoy2bKEWLyyC
root_username = admin
#######past-your-root-hash-password-here##########
root_password_sha2 = e3c5925aa22abdfa18cf197a7b218fcad31acb6409d2e2dbebae807d3a9750ee
root_timezone = UTC
plugin_dir = /usr/share/graylog-server/plugin
rest_listen_uri = http://0.0.0.0:9000/api/
rest_enable_cors = true
web_listen_uri = http://0.0.0.0:9000/
rotation_strategy = count
elasticsearch_max_docs_per_index = 20000000
elasticsearch_max_number_of_indices = 7
retention_strategy = delete
elasticsearch_shards = 4
elasticsearch_replicas = 1
elasticsearch_index_prefix = graylog
allow_leading_wildcard_searches = true
allow_highlighting = false
elasticsearch_cluster_name = graylog
elasticsearch_discovery_zen_ping_unicast_hosts = 192.168.0.187:9300
elasticsearch_http_enabled = false
elasticsearch_network_host = 0.0.00
elasticsearch_discovery_initial_state_timeout = 3s
elasticsearch_analyzer = standard
output_batch_size = 500
output_flush_interval = 1
output_fault_count_threshold = 5
output_fault_penalty_seconds = 30
processbuffer_processors = 5
outputbuffer_processors = 3
processor_wait_strategy = blocking
ring_size = 65536
inputbuffer_ring_size = 65536
inputbuffer_processors = 2
inputbuffer_wait_strategy = blocking
message_journal_enabled = true
message_journal_dir = /var/lib/graylog-server/journal
async_eventbus_processors = 2
lb_recognition_period_seconds = 3
alert_check_interval = 60
mongodb_uri = mongodb://localhost/graylog
mongodb_max_connections = 1000
mongodb_threads_allowed_to_block_multiplier = 5
content_packs_dir = /usr/share/graylog-server/contentpacks
content_packs_auto_load = grok-patterns.json
proxied_requests_thread_pool_size = 32

저장 하 고 완료 되 면 파일을 닫습니다, 다음 Graylog 서비스를 시작하고 부팅 시작을 활성화 :

graylog-서버를 시작 systemctl
graylog-서버를 활성화 systemctl

당신이 완료 되 면, 다음 단계를 진행할 수 있습니다.

5 방화벽 구성

기본적으로, Graylog 웹 인터페이스 포트에서 수신 대기 9000, 그래서 당신은 포트를 허용해야합니다 9000 UFW 방화벽을 통해. UFW 방화벽은 데비안에 설치되어 있지 9. 그래서 당신은 먼저 설치해야합니다. 다음 명령을 실행하여 설치할 수 있습니다 :

UFW -y를 설치 apt-get을

UFW가 설치되면, 다음 명령을 실행하여 활성화;

ufw 활성화

다음, 포트 수 9000 UFW를 통해 다음 명령을 실행하여 방화벽 :

UFW 허용 9000

다음 명령을 실행하여 UFW 방화벽의 상태를 언제든지 확인할 수 있습니다.

ufw 상태

방화벽이 구성되면, 다음 단계를 진행할 수 있습니다..

6 액세스 Graylog 웹 인터페이스

Graylog 웹 인터페이스 포트에서 수신 대기 9000. 지금, 웹 브라우저를 열고 URL을 입력 http://192.168.0.187:9000, 다음과 같은 화면이 표시 됩니다.

Graylog 인터페이스

사용자 이름으로 로그인 “관리자” 암호는 당신은 server.conf에 root_password_sha2에서 구성. 다음과 같은 화면을 볼 수 :

Graylog 시작하기

다음, 당신은 UDP를 사용하여 로그 메시지를 수신하기 위해 입력을 추가해야합니다. 입력을 추가하려면, 시스템을 클릭합니다 -> 입력을 선택합니다 -> 시스템 로그 UDP -> 시작 새로운 입력 버튼을 클릭합니다, 다음과 같은 화면이 표시 됩니다.

Graylog에 입력 소스 추가

같은 제목으로 모든 세부 사항을 채워, 포트, 바인드 주소와 마지막으로 저장 버튼을 클릭합니다, 다음과 같은 화면이 표시 됩니다.

로그 소스 세부 사항

이제 Graylog 서버 포트를 사용하여 시스템 로그를 받게됩니다 8514 클라이언트 또는 서버에서.

클라이언트 시스템에서, 그것은 Graylog 서버에 시스템 로그 메시지를 보낼 수 있도록 당신은 위해 rsyslog를 구성해야합니다. 당신은 파일 rsyslog.conf 편집하여이 작업을 수행 할 수 있습니다 :

나노 /etc/rsyslog.conf

다음 줄을 추가:

# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 8514
$템플릿 GRAYLOGRFC5424,"%protocol-version% %timestamp:::date-rfc3339% %HOSTNAME% %app-name% %procid% %msg%n"
*.* @ 192.168.0.187 : 8514; GRAYLOGRFC5424

파일을 저장하고 이러한 변경 사항을 적용하기 위해 rsyslog 서비스를 다시 시작합니다 :

systemctl 재시작 위해 rsyslog

다음, 에 Graylog 서버 클릭에 “Graylog 소스” 다음 화면에서 로그인 시도 실패로 SSH 로그를 볼 수 있습니다.

Graylog으로 로그인 시도를 모니터링

결론

치하! 당신은 성공적으로 설치하고 데비안에 Graylog 서버를 구성한 9. 이제 쉽게 중앙 위치에서 시스템 로그의 로그 분석을 볼 수 있습니다. 또한 Graylog을 사용자 정의하고 필요에 따라 로그의 다른 유형을 보낼 수 있습니다. 당신은 Graylog 문서 페이지에서 더 많은 정보를 얻을 수 있습니다 http://docs.graylog.org/en/2.2/pages/getting_started.html. 당신은 질문이있는 경우에는 저에게 의견을 자유롭게.

소스