web-dev-qa-db-fra.com

Rsyslog n'enregistre pas TCP après la mise à niveau de 10.4 à 12.4

J'utilisais Ubuntu 10.4 jusqu'à la semaine dernière pour stocker les informations de journal d'un périphérique externe avec rsyslog.

Après la mise à niveau vers Ubuntu 12.4, la journalisation de TCP ne fonctionne plus. (Il n'y a tout simplement aucun paquet visible - pas même avec tcpdump - une machine ubuntu toujours vue est toujours visible.) UDP fonctionne avec la même configuration sur la machine ubuntu et un "use UDP" sur le périphérique externe.

Y a-t-il des changements dans rsyslog qui pourraient expliquer cela?

Mon fichier rsyslog.conf ressemble à ceci (avec plus de commentaires):

$ModLoad imuxsock # provides support for local system logging
$ModLoad imklog   # provides kernel logging support (previously done by rklogd)
#$ModLoad immark  # provides --MARK-- message capability

$KLogPath /proc/kmsg

# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

###########################
#### GLOBAL DIRECTIVES ####
###########################

$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

# Set the default permissions for all log files.
#
$FileOwner syslog
$FileGroup adm
$FileCreateMode 0640
$DirCreateMode 0755
$Umask 0022
$PrivDropToUser syslog
$PrivDropToGroup syslog

if $fromhost-ip startswith '192.168.0.10' then /var/log/caliDevice.log
& ~
# local/regular rules, like
'.' /var/log/syslog.log

$IncludeConfig /etc/rsyslog.d/*.conf
4
Oxymoron

Trouvé le problème avec certains solutions de contournement :

Les options sont:

  1. Exécutez rsyslog en tant que root en supprimant les options $ PrivDropToUser et $ PrivDropToGroup, ou éventuellement en les substituant dans les fichiers /etc/resolv.conf.d/ (je ne sais pas si cela est possible ou non).
  2. Utilisez le travail 'Sleep' suggéré autour du thread (git commit 1 ).
  3. Écouter sur un port> 1024
  4. Payer en amont pour 2 semaines de travail pour obtenir le correctif correctement.
3
Oxymoron