syslog আইপি নির্দিষ্ট ফাইলগুলিতে `rsyslog` ব্যবহার করে`


8

আমার কাছে অনেকগুলি সিসকো / জুনোস রাউটার এবং সুইচ রয়েছে যা আমার ডেবিয়ান সার্ভারে লগ প্রেরণ করে যা ব্যবহার করে rsyslogd

rsyslogdএই রাউটার / স্যুইচ লগগুলিকে তাদের উত্সের আইপি ঠিকানার ভিত্তিতে কোনও নির্দিষ্ট ফাইলে প্রেরণ করার জন্য কীভাবে কনফিগার করব ? আমি এই এন্ট্রিগুলির সাথে সাধারণ সিস্টেম লগগুলিকে দূষিত করতে চাই না।

এই ক্ষেত্রে:

  • শিকাগোতে সমস্ত রাউটার (উত্স আইপি ব্লক: 172.17.25.0/24) শুধুমাত্র লগইন করতে /var/log/net/chicago.log
  • ডালাসের সমস্ত রাউটার (উত্স আইপি ব্লক 172.17.27.0/24) শুধুমাত্র লগইন করতে /var/log/net/dallas.log
  • সমস্ত APF-3-RCV_UNSUPP_MSGবার্তা লগইন না করে মুছুন
  • নামের ফাইলটিতে 172.17.4.4 এর জন্য লগ প্রেরণ করুন /var/log/net/firewall.log
  • ফায়ারওয়াল লগগুলি ইউডিপি পোর্ট 514 ব্যবহার করে 10.14.12.12 এ ফরোয়ার্ড করুন

অবশেষে, এই লগগুলি 30 দিন পর্যন্ত দৈনিক ঘোরানো উচিত এবং সংকুচিত করা উচিত।


দ্রষ্টব্য: আমি আমার নিজের প্রশ্নের উত্তর দিচ্ছি

উত্তর:


13

rsyslogd কনফিগারেশন

ভিতরে /etc/rsyslogd.conf

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

# If logging to an NFS mount, use these settings...
#    "OMFileFlushOnTXEnd off" avoids fsync on every write...
#     mount -o hard,rsize=32768,wsize=32768,noacl,noatime,nodiratime -t nfs
$OMFileIOBufferSize 768k
$OMFileAsyncWriting on
$OMFileFlushOnTXEnd off
$OMFileFlushInterval 10
$MainMsgQueueSize 100000


# kill all INTF-FLAP messages...
if $msg contains 'INTF-FLAP' then /dev/null
&~
## Cisco ACS Accounting...
if ($fromhost-ip=='172.17.16.20') and ($programname == 'CSCOacs_TACACS_Accounting') then /var/log/tacacs_acct.log
&~
## CiscoACS 5.4 TACACS Authentication
if ($fromhost-ip=='172.17.16.20') and ($programname == 'CSCOacs_Passed_Authentications') then /var/log/tacacs_auth.log
&~

# Logging for Chicago issues...
if $fromhost-ip startswith '172.17.25' then /var/log/net/chicago.log
& ~
# Logging for Dallas issues...
if $fromhost-ip startswith '172.17.27' then /var/log/net/dallas.log
& ~
# Logging for firewall...
if $fromhost-ip=='172.17.4.4' then @10.14.12.12
if $fromhost-ip=='172.17.4.4' then /var/log/net/firewall.log
& ~

প্রতিটি &~এন্ট্রি বাকী rsyslog.confকনফিগারেশনের পতনকে বাধা দেয় ; এইভাবে আমি রাউটার সিলেগ এন্ট্রিগুলিতে দেখতে পাব না /var/log/messages

সমস্ত সিসলগ ফাইল স্পর্শ করুন:

  • touch /var/log/net/chicago.log
  • touch /var/log/net/dallas.log
  • touch /var/log/net/firewall.log

পুনর্সূচনা rsyslogdসঙ্গে/etc/init.d/rsyslogd restart

লগ ঘূর্ণন

ভিতরে /etc/logrotate.d/rsyslog

/var/log/net/*.log
{
        copytruncate
        rotate 30
        daily
        missingok
        dateext
        notifempty
        delaycompress
        create root 664 root root
        compress
        maxage 31
        sharedscripts
        lastaction
                # RHEL: Use "/sbin/service rsyslog restart"
                # Debian / Ubuntu: Use "invoke-rc.d rsyslog reload > /dev/null"
                invoke-rc.d rsyslog reload > /dev/null
        endscript
}

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.