syslog-ng (v 3.15.1) не может прослушивать стандартный TCP или UDP (но может прослушивать через TLS) - PullRequest
0 голосов
/ 24 июня 2018

Я ломаю голову над тем, чего мне здесь не хватает ... Я обновился до версии 3.15.1 и не могу слушать по TCP или UDP. Как ни странно, я могу слушать по TCP и общаться по TLS. Я прочитал и перечитал руководство -sources-network.html ). Работает на CentOS 7.

Вот соответствующие части моей конфигурации:

...
# never listens and have tried using udp() and tcp() sources as 
# well as breaking each out to their individual source defs 
source s_net {
       network(ip(0.0.0.0) port(6514) transport("tcp"));
       network(ip(0.0.0.0) port(514) transport("udp"));
};

# works perfectly
source s_net_tls {
    network(
        ip(0.0.0.0)
        port(22514)
        transport("tls")
        tls(
            key-file('/path/to/foo.key')
            cert-file('/path/to/foo.pem')
            peer-verify(optional-untrusted)
            ssl-options(no-sslv2, no-sslv3, no-tlsv1)
        )
    );
};
...

Вывод netstat:

$ netstat -tulna | grep -e 514 -e 6514 -e 22514
tcp        0      0 0.0.0.0:22514           0.0.0.0:*               LISTEN
$

Вот стандартный вывод:

$ sudo syslog-ng -Fedv; syslog-ng-ctl verbose --set=on && syslog-ng-ctl trace --set=on && syslog-ng-ctl debug --set=on
... [ OMITTING UNNECESSARY LINES ] ...
[2018-06-23T20:46:47.406200] Reading shared object for a candidate module; path='/usr/local/lib/syslog-ng', fname='libafsocket.so', module='afsocket'
[2018-06-23T20:46:47.406363] Registering candidate plugin; module='afsocket', context='source', name='unix-stream'
[2018-06-23T20:46:47.406371] Registering candidate plugin; module='afsocket', context='destination', name='unix-stream'
[2018-06-23T20:46:47.406375] Registering candidate plugin; module='afsocket', context='source', name='unix-dgram'
[2018-06-23T20:46:47.406421] Registering candidate plugin; module='afsocket', context='destination', name='unix-dgram'
[2018-06-23T20:46:47.406427] Registering candidate plugin; module='afsocket', context='source', name='tcp'
[2018-06-23T20:46:47.406432] Registering candidate plugin; module='afsocket', context='destination', name='tcp'
[2018-06-23T20:46:47.406440] Registering candidate plugin; module='afsocket', context='source', name='tcp6'
[2018-06-23T20:46:47.406444] Registering candidate plugin; module='afsocket', context='destination', name='tcp6'
[2018-06-23T20:46:47.406448] Registering candidate plugin; module='afsocket', context='source', name='udp'
[2018-06-23T20:46:47.406452] Registering candidate plugin; module='afsocket', context='destination', name='udp'
[2018-06-23T20:46:47.406456] Registering candidate plugin; module='afsocket', context='source', name='udp6'
[2018-06-23T20:46:47.406460] Registering candidate plugin; module='afsocket', context='destination', name='udp6'
[2018-06-23T20:46:47.406464] Registering candidate plugin; module='afsocket', context='source', name='syslog'
[2018-06-23T20:46:47.406468] Registering candidate plugin; module='afsocket', context='destination', name='syslog'
[2018-06-23T20:46:47.406474] Registering candidate plugin; module='afsocket', context='source', name='network'
[2018-06-23T20:46:47.406478] Registering candidate plugin; module='afsocket', context='destination', name='network'
[2018-06-23T20:46:47.406482] Registering candidate plugin; module='afsocket', context='source', name='systemd-syslog'
... [ OMITTING UNNECESSARY LINES ] ...
[2018-06-23T20:46:47.409282] Registering candidate plugin; module='basicfuncs', context='template-func', name='ipv4-to-int'
... [ OMITTING UNNECESSARY LINES ] ...
**[2018-06-23T20:46:47.438730] Accepting connections; addr='AF_INET(0.0.0.0:22514)'**
[2018-06-23T20:46:47.439056] Module loaded and initialized successfully; module='linux-kmsg-format'
[2018-06-23T20:46:47.439307] Running application hooks; hook='1'
[2018-06-23T20:46:47.439315] Running application hooks; hook='3'
[2018-06-23T20:46:47.439328] syslog-ng starting up; version='3.15.1'

Я не новичок в syslog-ng и надеюсь, что это что-то простое, что я упустил из виду - надеясь, что еще несколько глаз найдут то, что мне не хватает.

1 Ответ

0 голосов
/ 24 июня 2018

Проблема заключалась в том, что, хотя я определил исходный драйвер, я упустил из виду, что на него нельзя ссылаться в указанном пути журнала.Я прыгал туда-сюда через слишком много конфигов и почему-то пропустил создание ссылки на источник ввода.Теперь он работает.

...
log {
    source(s_net);
    ...
}

Вывод netstat:

$ netstat -tulna | grep -e 514 -e 6514 -e 22514
tcp        0      0 0.0.0.0:22514           0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:6514            0.0.0.0:*               LISTEN     
udp        0      0 0.0.0.0:514             0.0.0.0:*       
$               
...