{"id":65,"date":"2008-08-26T09:20:21","date_gmt":"2008-08-26T07:20:21","guid":{"rendered":"http:\/\/wp1.fredptitgars.net\/index.php\/2008\/08\/26\/serveur-syslog-ng\/"},"modified":"2008-08-26T09:20:21","modified_gmt":"2008-08-26T07:20:21","slug":"serveur-syslog-ng","status":"publish","type":"post","link":"https:\/\/fredptitgars.ovh\/?p=65","title":{"rendered":"Serveur syslog-ng"},"content":{"rendered":"<p>Pour commencer des liens int\u00e9ressants:<br \/>\n<br \/><a href=\"http:\/\/www.linux-france.org\/prj\/inetdoc\/articles\/devmgmt\/devmgmt.log.html\">http:\/\/www.linux-france.org\/prj\/inetdoc\/articles\/devmgmt\/devmgmt.log.html<\/a><br \/>\n<br \/><a href=\"http:\/\/doc.ubuntu-fr.org\/syslog-ng\">http:\/\/doc.ubuntu-fr.org\/syslog-ng<\/a><\/p>\n<h2>Sur le serveur<\/h2>\n<p>Le choix de syslog-ng am\u00e9liore 2 \u00e9l\u00e9ments par rapport \u00e0 syslog: la s\u00e9curit\u00e9 et la non discrimination des sources. En effet Syslog-ng permet de ranger les log de chaque \u00e9quipement dans des fichiers diff\u00e9rents.<\/p>\n<p>La premi\u00e8re chose \u00e0 faire bine sur est d&rsquo;installer syslog-ng, cette action vas remplacer (donc supprimer) le syslog de base:<\/p>\n<p><code><br \/>\napt-get install syslog-ng<br \/>\n<\/code><\/p>\n<p>La configuration s&rsquo;effectue par l&rsquo;interm\u00e9diaire du fichier:<br \/>\n<br \/><em>\/etc\/syslog-ng\/syslog-ng.conf<\/em><\/p>\n<p>Pour chaque cat\u00e9gorie de journalisation, on doit composer avec une d\u00e9finition de source, de filtre et de destination. Voici un exemple reprenant le cas du commutateur :<\/p>\n<p>D\u00e9finition d&rsquo;une source<br \/>\n<code><br \/>\n    source net <em><br \/>\n    # journalisation via eth2 -> commutateur sw1<br \/>\n        udp(ip(192.168.2.1));<br \/>\n        <\/em>;<br \/>\n<\/code><br \/>\nD\u00e9finition d&rsquo;un filtre<br \/>\n<code><br \/>\n    filter f_sw1 <em><br \/>\n        host(192.168.2.2) and level(info,notice,warn,crit,err);<br \/>\n        <\/em>;<br \/>\n<\/code><br \/>\nD\u00e9finition d&rsquo;une destination<br \/>\n<code><br \/>\n    destination d_net_devices <em><br \/>\n        file(\"\/var\/log\/$HOST.log\" owner(\"root\") group(\"adm\") perm(0640));<br \/>\n        <\/em>;<br \/>\n<\/code><br \/>\nUtilisation des trois d\u00e9finitions<br \/>\n<code><br \/>\n    log <em><br \/>\n        source(net);<br \/>\n        filter(f_sw1);<br \/>\n        destination(d_net_devices);<br \/>\n        <\/em>;<br \/>\n<\/code><br \/>\nL&rsquo;application de cette configuration entra\u00eene la cr\u00e9ation d&rsquo;un fichier \/var\/log\/192.168.2.2.log qui re\u00e7oit tous les messages du commutateur sw1 qui a l&rsquo;adresse IP 192.168.2.2.<\/p>\n<p>Pour notre cas, nous allons ajouter une source udp   qui permet de se mettre \u00e0 l&rsquo;\u00e9coute en udp([?User_Datagram_Protocol]) sur le port 514 par d\u00e9faut<br \/>\n<code><br \/>\nsource s_all <em><br \/>\n        # message generated by Syslog-NG<br \/>\n        internal();<br \/>\n        # standard Linux log source (this is the default place for the syslog()<br \/>\n        # function to send logs to)<br \/>\n        unix-stream(\"\/dev\/log\");<br \/>\n        # messages from the kernel<br \/>\n        file(\"\/proc\/kmsg\" log_prefix(\"kernel: \"));<br \/>\n        # use the following line if you want to receive remote UDP logging messages<br \/>\n        # (this is equivalent to the \"-r\" syslogd flag)<br \/>\n        #udp();<br \/>\n<\/em>;<br \/>\nsource s_net <em><br \/>\n        udp();<br \/>\n<\/em>;<br \/>\n<\/code><\/p>\n<p>Les d\u00e9finitions \u00e0 ajouter:<br \/>\n<code><br \/>\n#ajout cisco<br \/>\ndestination df_cisco <em> file(\"\/var\/log\/cisco.log\"); <\/em>;<\/p>\n<p># ajout cisco<br \/>\nfilter f_cisco <em>host(10.10.10.1); <\/em>;<\/p>\n<p><\/code><\/p>\n<p>Et \u00e0 la fin du fichier on ajoute les lignes suivantes<br \/>\n<code><br \/>\n# cisco                        -\/var\/log\/cisco.log<br \/>\nlog <em><br \/>\n        source(s_net);<br \/>\n        filter(f_cisco);<br \/>\n        destination(df_cisco);<br \/>\n<\/em>;<br \/>\n<\/code><\/p>\n<p>Ce qui permet \u00e0 syslog-ng d&rsquo;envoyer tous les message venant de l&rsquo;adresse 10.10.10.1 vers le fichier \/var\/log\/cisco.log<\/p>\n<p>Il ne reste plus qu&rsquo;a red\u00e9marrer le serveur:<br \/>\n<code><br \/>\n\/etc\/init.d\/syslog-ng restart<br \/>\n<\/code><\/p>\n<h2>sur le routeur<\/h2>\n<p>Voici la config:<br \/>\n<code><br \/>\nlogging buffered 4096 notifications<br \/>\nlogging source-interface Vlan1<br \/>\nlogging 10.10.10.3<br \/>\n<\/code><\/p>\n<p>nous avons d\u00e9finit la taille du buffer \u00e0 4096, le niveau est de log est 5 (notifications).  Sur l&rsquo;interface Vlan1. Et pour finir nous envoyons tous les log sur la machine 10.10.10.3<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pour commencer des liens int\u00e9ressants: http:\/\/www.linux-france.org\/prj\/inetdoc\/articles\/devmgmt\/devmgmt.log.html http:\/\/doc.ubuntu-fr.org\/syslog-ng Sur le serveur Le choix de syslog-ng am\u00e9liore 2 \u00e9l\u00e9ments par rapport \u00e0 syslog: la s\u00e9curit\u00e9 et la non discrimination des sources. En effet Syslog-ng permet de ranger les log de chaque \u00e9quipement dans des fichiers diff\u00e9rents. La premi\u00e8re chose \u00e0 faire bine sur est d&rsquo;installer syslog-ng, cette [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[],"class_list":["post-65","post","type-post","status-publish","format-standard","hentry","category-poweredge-t105"],"blocksy_meta":[],"_links":{"self":[{"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=\/wp\/v2\/posts\/65","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=65"}],"version-history":[{"count":0,"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=\/wp\/v2\/posts\/65\/revisions"}],"wp:attachment":[{"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=65"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=65"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fredptitgars.ovh\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=65"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}