logstash收集TCP端口日志

logstash收集TCP端口日志
官方地址:https://www.elastic.co/guide/en/logstash-versioned-plugins/current/index.html

编写logstash文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
[root@elk-node1 conf.d]# cat tcp.conf
input{
    tcp{
    host => "192.168.247.135"
    port => "8888"
    }   
}
output{
    stdout{
    codec => "rubydebug"
        }
}
#运行
[root@elk-node1 conf.d]# /opt/logstash/bin/logstash -f /etc/logstash/conf.d/tcp.conf
#另开一个窗口用nc的发请求
[root@elk-node1 ~]# yum install -y nc
[root@elk-node1 ~]# nc 192.168.247.135 8888 < /etc/passwd
[root@elk-node1 ~]# echo "hehehe" > /dev/tcp/192.168.247.135/8888
#在看第一个窗口就有数据了
[root@elk-node1 conf.d]# /opt/logstash/bin/logstash -f /etc/logstash/conf.d/tcp.conf
Settings: Default filter workers: 1
Logstash startup completed
{
       "message" => "root:x:0:0:root:/root:/bin/bash",
      "@version" => "1",
    "@timestamp" => "2018-07-15T10:54:41.404Z",
          "host" => "192.168.247.135",
          "port" => 54202
}
{
       "message" => "bin:x:1:1:bin:/bin:/sbin/nologin",
      "@version" => "1",
    "@timestamp" => "2018-07-15T10:54:41.407Z",
          "host" => "192.168.247.135",
          "port" => 54202
}
{
       "message" => "daemon:x:2:2:daemon:/sbin:/sbin/nologin",
      "@version" => "1",
    "@timestamp" => "2018-07-15T10:54:41.407Z",
          "host" => "192.168.247.135",
          "port" => 54202
}
{
       "message" => "adm:x:3:4:adm:/var/adm:/sbin/nologin",
      "@version" => "1",
    "@timestamp" => "2018-07-15T10:54:41.407Z",
          "host" => "192.168.247.135",
          "port" => 54202
}
{
       "message" => "hehehe",
      "@version" => "1",
    "@timestamp" => "2018-07-15T10:59:41.301Z",
          "host" => "192.168.247.135",
          "port" => 55156
}
#修改下写入es里
[root@elk-node1 conf.d]# cat tcp.conf
input{
    tcp{
    host => "192.168.247.135"
    port => "8888"
    type => "tcp"
    }   
}
output{
    if [type] == "tcp"{
        elasticsearch {
           hosts => ["192.168.247.135:9200"]
           index => "tcp-log-%{+YYYY.MM.dd}"
        }
    }
 
}
[root@elk-node1 conf.d]# /opt/logstash/bin/logstash -f /etc/logstash/conf.d/tcp.conf --configtest
Configuration OK
#放入后台运行
[root@elk-node1 conf.d]# /opt/logstash/bin/logstash -f /etc/logstash/conf.d/tcp.conf &
#转点数据过去
[root@elk-node1 ~]# nc 192.168.247.135 8888 < /etc/passwd

 Kibana配置

es的hand插件已经有了tcp-log的索引

数据浏览

kibana添加tcp-log索引

 

 







posted @   西门运维  阅读(6210)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
点击右上角即可分享
微信分享提示