I only care about remote logs. I only need these to go to elastic search. I 
don't care about the local ones except it would be nice to have them go to 
files somewhere.

I started with the plain rsyslog.conf that came with the Xubuntu iso. I pasted 
it at the end of this message.

I modified the security onion syslog-ng.conf file to copy everything it 
collects to tcp port 10514. These are the key lines I added at the end of its 
original conf.

destination d_net { tcp("192.168.48.145" port(10514)); };
log { source(s_syslog); destination(d_net); }

SO events come from various SO sensors that I don't yet fully understand 
(snort, bro, elsa, others) with many more sensor types expected over time. 
Right now I'm just trying to collect them all in ES. I expect to untangle the 
mess once I know what I need.

Here's my backup of rsyslog.conf

#  /etc/rsyslog.conf    Configuration file for rsyslog.
#
#                       For more information see
#                       /usr/share/doc/rsyslog-doc/html/rsyslog_conf.html
#
#  Default logging rules can be found in /etc/rsyslog.d/50-default.conf


#################
#### MODULES ####
#################

$ModLoad imuxsock # provides support for local system logging
$ModLoad imklog   # provides kernel logging support
#$ModLoad immark  # provides --MARK-- message capability

# provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514

# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 10514

# Enable non-kernel facility klog messages
$KLogPermitNonKernelFacility on

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

#
# Use traditional timestamp format.
# To enable high precision timestamps, comment out the following line.
#
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

# Filter duplicated messages
$RepeatedMsgReduction on

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

#
# Where to place spool and state files
#
$WorkDirectory /var/spool/rsyslog

#
# Include all config files in /etc/rsyslog.d/
#
$IncludeConfig /etc/rsyslog.d/*.conf


Dr. Brad J. Cox    Cell: 703-594-1883 Skype: dr.brad.cox




> On Jan 29, 2016, at 7:33 PM, David Lang <[email protected]> wrote:
> 
> Ok, changing the default ruleset to remote is probably not what you want to 
> do, because then your local messages won't go to all the files defined in the 
> local ruleset.
> 
> Let's back up a bit here. Before you started with Elasticsearch, what did 
> your config look like? Let's go back to that first.
> 
> Then let's talk about what do you want to have go to elasticsearch. Do you 
> want everything there?, only some things there?, all in one index?, some logs 
> in one, some in another?, etc.
> 
> Then we can add an action to deliver the logs to elasticsearch to the right 
> place in your config file.
> 
> We will probably also want to add impstats so that you can see how many logs 
> are being processed and what are being queued. We may need to turn on 
> debugging if we see everything being queued to elasticsearch, but that's 
> further down the line.
> 
> For now, let's just get back to a state that you understand and is handling 
> your logs the way you want them handled (except for ES)
> 
> David Lang
> 
> On Fri, 29 Jan 2016, Brad Cox wrote:
> 
>> Strange. I copied that directly from  
>> https://linux-help.org/wiki/logging/rsyslog/advanced-rsyslog.
>> 
>> I've moved that action block into the remote section as shown below and 
>> restarted rsyslogd. Also changed the DefaultRuleSet to remote.
>> 
>> ruleset(name="remote") {
>>   $IncludeConfig /etc/rsyslog.d/*.remote
>>   action(type="omfile" DynaFile="RemoteHost")
>>   *.* action(type="omelasticsearch"
>>              server="localhost"
>>              serverport="9200"
>>              template="logstash"
>>              searchIndex="logstash-index"
>>              dynSearchIndex="on"
>>              searchType="syslog"
>>              bulkmode="on"
>>              queue.type="linkedlist"
>>              queue.size="5000"
>>              queue.dequeuebatchsize="300"
>>              action.resumeretrycount="-1")
>> }
>> $DefaultRuleset remote
>> 
>> But still no sign of security onion messages in elastic search. I'm doing 
>> all this with very little understanding at this point. Any insight into how 
>> to diagnose such problems would be most helpful.
>> 
>> Dr. Brad J. Cox    Cell: 703-594-1883 Skype: dr.brad.cox
>> 
>> 
>> 
>> 
>>> On Jan 29, 2016, at 6:53 PM, David Lang <[email protected]> wrote:
>>> 
>>> from a quick glance, the elasticsearch call is part of the local ruleset 
>>> while anything that arrives remotely only has the remote ruleset applied to 
>>> it.
>>> 
>>> Am I missing something?
>>> 
>>> David Lang
>>> 
>>> 
>>> On Fri, 29 Jan 2016, Brad Cox wrote:
>>> 
>>>> Date: Fri, 29 Jan 2016 13:55:56 -0500
>>>> From: Brad Cox <[email protected]>
>>>> Reply-To: rsyslog-users <[email protected]>
>>>> To: rsyslog-users <[email protected]>
>>>> Subject: Re: [rsyslog] Logs from remote server not making it to Elastic    
>>>> Search
>>>> OK. Do you need the rsyslog.d/* files too?
>>>> 
>>>> # https://linux-help.org/wiki/logging/rsyslog/advanced-rsyslog
>>>> # rsyslog v7 configuration file
>>>> 
>>>> # For more information see /usr/share/doc/rsyslog-*/rsyslog_conf.html
>>>> # If you experience problems, see 
>>>> http://www.rsyslog.com/doc/troubleshoot.html
>>>> # $DebugFile /var/log/rsyslog.debug.log
>>>> # $DebugLevel 1
>>>> 
>>>> #### MODULES ####
>>>> 
>>>> module(load="imuxsock") # local system logging (e.g. via logger command)
>>>> module(load="imklog")   # provides kernel logging (previously done by 
>>>> rklogd)
>>>> #module(load"immark")  # --MARK-- message capability
>>>> module(load="mmnormalize")
>>>> module(load="omelasticsearch")
>>>> 
>>>> # Provides UDP syslog reception
>>>> # for parameters see http://www.rsyslog.com/doc/imudp.html
>>>> #module(load="imudp") # needs to be done just once
>>>> #input(type="imudp" port="514")
>>>> module(load="imudp")
>>>> 
>>>> # Provides TCP syslog reception
>>>> # for parameters see http://www.rsyslog.com/doc/imtcp.html
>>>> # module(load="imtcp") # needs to be done just once
>>>> # input(type="imtcp" port="10514")
>>>> # module(load="imtcp" MaxSessions="500")
>>>> # module(load="imrelp" RuleSet="remote")
>>>> module(load="imtcp" MaxSessions="500")
>>>> #input(type="imtcp" port="10514")
>>>> input(type="imudp" port="10514" ruleset="remote")
>>>> input(type="imtcp" port="10514" ruleset="remote")
>>>> 
>>>> $AllowedSender TCP, 127.0.0.1, 192.168.48.137
>>>> 
>>>> #### GLOBAL DIRECTIVES ####
>>>> # Templates
>>>> template(name="RemoteHost" type="string" 
>>>> string="/srv/log/%HOSTNAME%/%$YEAR%/%$MONTH%/syslog-%$DAY%.log")
>>>> $IncludeConfig /etc/rsyslog.d/*.template
>>>> 
>>>> # Use default timestamp format
>>>> $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
>>>> 
>>>> # Include all config files in /etc/rsyslog.d/
>>>> $IncludeConfig /etc/rsyslog.d/*.conf
>>>> 
>>>> 
>>>> #### RULES ####
>>>> ruleset(name="local") {
>>>>  # Log all kernel messages to the console.
>>>>  # Logging much else clutters up the screen.
>>>>  kern.*                                                  /var/log/kern.log
>>>> 
>>>>  # Log anything (except mail) of level info or higher.
>>>>  # Don't log private authentication messages!
>>>>  *.info;mail.none;authpriv.none;cron.none                /var/log/messages
>>>> 
>>>>  # The authpriv file has restricted access.
>>>>  authpriv.*                                              /var/log/secure
>>>> 
>>>>  # Log all the mail messages in one place.
>>>>  mail.*                                                  -/var/log/maillog
>>>> 
>>>> 
>>>>  # Log cron stuff
>>>>  cron.*                                                  /var/log/cron
>>>> 
>>>>  # Everybody gets emergency messages
>>>>  *.emerg                                                 :omusrmsg:*
>>>> 
>>>>  # Save news errors of level crit and higher in a special file.
>>>>  uucp,news.crit                                          /var/log/spooler
>>>> 
>>>>  # Save boot messages also to boot.log
>>>>  local7.*                                                /var/log/boot.log
>>>> 
>>>>  *.* action(type="omelasticsearch"
>>>>             server="localhost"
>>>>             serverport="9200"
>>>>             template="logstash"
>>>>             searchIndex="logstash-index"
>>>>             dynSearchIndex="on"
>>>>             searchType="syslog"
>>>>             bulkmode="on"
>>>>             queue.type="linkedlist"
>>>>             queue.size="5000"
>>>>             queue.dequeuebatchsize="300"
>>>>             action.resumeretrycount="-1")
>>>> }
>>>> $DefaultRuleset local
>>>> 
>>>> ruleset(name="remote") {
>>>>  $IncludeConfig /etc/rsyslog.d/*.remote
>>>>  action(type="omfile" DynaFile="RemoteHost")
>>>> }
>>>> #input(type="imudp" port="10514" ruleset="remote")
>>>> #input(type="imtcp" port="10514" ruleset="remote")
>>>> 
>>>> # $InputRELPServerBindRuleset remote
>>>> # input(type="imrelp" port="20514")
>>>> 
>>>> Dr. Brad J. Cox    Cell: 703-594-1883 Skype: dr.brad.cox
>>>> 
>>>> 
>>>> 
>>>> 
>>>>> On Jan 29, 2016, at 1:20 PM, David Lang <[email protected]> wrote:
>>>>> 
>>>>> please post your config (rsyslog.conf)
>>>>> 
>>>>> David Lang
>>>>> 
>>>>> On Fri, 29 Jan 2016, Brad Cox wrote:
>>>>> 
>>>>>> Date: Fri, 29 Jan 2016 12:58:34 -0500
>>>>>> From: Brad Cox <[email protected]>
>>>>>> Reply-To: rsyslog-users <[email protected]>
>>>>>> To: [email protected]
>>>>>> Subject: [rsyslog] Logs from remote server not making it to Elastic 
>>>>>> Search
>>>>>> I'm trying to centralize logs that originate from syslog-ng on a Security
>>>>>> Onion server (Ubuntu 14.04.3-11) at an central server running rsyslog
>>>>>> latest. I've configured SO to copy all logs to the central server on TCP
>>>>>> port 10514 and confirmed that Tcpdump shows log traffic (on TCP port 
>>>>>> 10514)
>>>>>> is leaving SO and arriving at the central server.
>>>>>> 
>>>>>> My goal is to ingest the remote logs into Elastic Search so I've been
>>>>>> following the instructions at
>>>>>> https://linux-help.org/wiki/logging/rsyslog/advanced-rsyslog. I had to
>>>>>> tweak some settings to get past parsing errors from rsyslog but that 
>>>>>> seems
>>>>>> OK now (according to rsyslogd -f rsyslog.conf -N1 with and without
>>>>>> $DebugLevel=1). At least rsyslogd now launches and runs correctly.
>>>>>> 
>>>>>> Problem is, only local logs are appearing in the Elastic Search index
>>>>>> (according to kibana). There's no sign of remote logs from Security Onion
>>>>>> in the ES indices. The only trace of remote logs is in
>>>>>> /srv/log/SecurityOnionVM/...) which seems to contain the right contents,
>>>>>> although I can find no signs of how they wound up there in the debug 
>>>>>> logs.
>>>>>> 
>>>>>> I'm new at rsyslog and have ridden the documentation about as far as it
>>>>>> will take me. Can someone help me get this bus on its wheels?
>>>>>> 
>>>>>> Dr. Brad J. Cox    Cell: 703-594-1883 Blog: http://bradjcox.blogspot.com
>>>>>> _______________________________________________
>>>>>> rsyslog mailing list
>>>>>> http://lists.adiscon.net/mailman/listinfo/rsyslog
>>>>>> http://www.rsyslog.com/professional-services/
>>>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards
>>>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad 
>>>>>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you 
>>>>>> DON'T LIKE THAT.
>>>>>> 
>>>>> _______________________________________________
>>>>> rsyslog mailing list
>>>>> http://lists.adiscon.net/mailman/listinfo/rsyslog
>>>>> http://www.rsyslog.com/professional-services/
>>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards
>>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad 
>>>>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you 
>>>>> DON'T LIKE THAT.
>>>> 
>>>> _______________________________________________
>>>> rsyslog mailing list
>>>> http://lists.adiscon.net/mailman/listinfo/rsyslog
>>>> http://www.rsyslog.com/professional-services/
>>>> What's up with rsyslog? Follow https://twitter.com/rgerhards
>>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad 
>>>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you 
>>>> DON'T LIKE THAT.
>>>> 
>>> _______________________________________________
>>> rsyslog mailing list
>>> http://lists.adiscon.net/mailman/listinfo/rsyslog
>>> http://www.rsyslog.com/professional-services/
>>> What's up with rsyslog? Follow https://twitter.com/rgerhards
>>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of 
>>> sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T 
>>> LIKE THAT.
>> 
>> _______________________________________________
>> rsyslog mailing list
>> http://lists.adiscon.net/mailman/listinfo/rsyslog
>> http://www.rsyslog.com/professional-services/
>> What's up with rsyslog? Follow https://twitter.com/rgerhards
>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of 
>> sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T 
>> LIKE THAT.
>> 
> _______________________________________________
> rsyslog mailing list
> http://lists.adiscon.net/mailman/listinfo/rsyslog
> http://www.rsyslog.com/professional-services/
> What's up with rsyslog? Follow https://twitter.com/rgerhards
> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of 
> sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T 
> LIKE THAT.

_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of 
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE 
THAT.

Reply via email to