{"id":894,"date":"2014-06-18T02:31:48","date_gmt":"2014-06-18T05:31:48","guid":{"rendered":"http:\/\/www.viazap.com.br\/?p=894"},"modified":"2014-06-18T02:31:48","modified_gmt":"2014-06-18T05:31:48","slug":"servidor-de-log-no-debian-com-syslog-ng","status":"publish","type":"post","link":"https:\/\/blog.clusterweb.com.br\/?p=894","title":{"rendered":"Servidor de log no Debian com Syslog-ng"},"content":{"rendered":"<table border=\"0\" width=\"100%\" cellspacing=\"3\" cellpadding=\"3\">\n<tbody>\n<tr>\n<td colspan=\"2\"><b>Instala\u00e7\u00e3o dos requisitos<\/b><\/p>\n<div>\n<p>Requisitos:<\/p>\n<ul>\n<li>Ambiente LAMP (Linux, Apache, MySQL e PHP)<\/li>\n<li>Syslog-ng<\/li>\n<li>PHP-Syslog-ng<\/li>\n<\/ul>\n<p>Eu utilizo o reposit\u00f3rio oficial do Debian no Brasil:<\/p>\n<div class=\"codigo\">deb http:\/\/ftp.br.debian.org\/debian squeeze main contrib non-free<\/div>\n<p>Caso n\u00e3o tenha esse reposit\u00f3rio, aconselho adicionar ao seu\u00a0<em>sources.list<\/em>. Comece instalando o ambiente LAMP:<\/p>\n<p><strong># apt-get install apache2 mysql-server php5 php5-mysql\u00a0<\/strong><\/p>\n<p>Defina sua senha para o banco e aguarde a configura\u00e7\u00e3o dos pacotes baixados.<\/p>\n<p>Agora vamos instalar o syslog-ng:<\/p>\n<p><strong># apt-get install syslog-ng<\/strong><\/p>\n<p>Precisamos baixar o Php-Syslog-ng, fa\u00e7a o download da vers\u00e3o desejada aqui:<\/p>\n<ul>\n<li><a href=\"http:\/\/sourceforge.net\/projects\/php-syslog-ng\/files\/\">http:\/\/sourceforge.net\/projects\/php-syslog-ng\/files\/<\/a><\/li>\n<\/ul>\n<p>Neste artigo utilizaremos a vers\u00e3o 2.8. Ap\u00f3s feito o download, vamos descompactar o mesmo no diret\u00f3rio padr\u00e3o do apache:<\/p>\n<p><strong># tar -zxvf phpsyslogng-2.8.tar.gz -C \/var\/www<\/strong><!--more--><\/p>\n<p>Ent\u00e3o renomeie o diret\u00f3rio descompactado para phpsyslog:<\/p>\n<p><strong># cd \/var\/www<br \/>\n# mv phpsyslogng-2.8 phpsyslog<\/strong><\/p>\n<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td colspan=\"2\"><b>Adaptando e configurando o banco MySQL<\/b><\/p>\n<div>\n<p>Vamos, editar o arquivo\u00a0<em>dbsetup.sql<\/em>\u00a0para ent\u00e3o rodar ele no nosso banco MySQL. Ainda no diret\u00f3rio \/var\/www, acesse phpsyslog\/scripts e abra o arquivo dbsetup.sql:<\/p>\n<p><strong># vim dbsetup.sql<\/strong><\/p>\n<p>Agora procure pelas linhas:<\/p>\n<div class=\"codigo\"><span class=\"comentario\"># create users<\/span><br \/>\nINSERT INTO user (Host, User, Password) VALUES (&#8216;localhost&#8217;,&#8217;sysloguser&#8217;, password(&#8216;PW_HERE&#8217;));<br \/>\nINSERT INTO db (Host, Db, User) VALUES (&#8216;localhost&#8217;,&#8217;syslog&#8217;,&#8217;sysloguser&#8217;);INSERT INTO user (Host, User, Password) VALUES (&#8216;localhost&#8217;,&#8217;syslogfeeder&#8217;, password(&#8216;PW_HERE&#8217;));<br \/>\nINSERT INTO db (Host, Db, User) VALUES (&#8216;localhost&#8217;,&#8217;syslog&#8217;,&#8217;syslogfeeder&#8217;);<\/p>\n<p>INSERT INTO user (Host, User, Password) VALUES (&#8216;localhost&#8217;,&#8217;syslogadmin&#8217;,password(&#8216;PW_HERE&#8217;));<br \/>\nINSERT INTO db (Host, Db, User) VALUES (&#8216;localhost&#8217;,&#8217;syslog&#8217;,&#8217;syslogadmin&#8217;);<br \/>\nCOMMIT;<br \/>\nFLUSH PRIVILEGES;<\/p>\n<\/div>\n<p>Modifique onde tem &#8220;PW_HERE&#8221; para o password que voc\u00ea definiu na instala\u00e7\u00e3o do MySQL. Salve e feche o arquivo, ent\u00e3o digite:<\/p>\n<p><strong># mysql -u root -p &lt; dbsetup.sql<\/strong><\/p>\n<p>Digite seu password de root do MySQL. Vamos editar tamb\u00e9m o arquivo syslog2mysql.sh, que \u00e9 um script que grava os logs (fazendo um redirecionamento) no MySQL (j\u00e1 que o syslog-ng n\u00e3o faz isso diretamente e precisa de uma ajuda desse script):<\/p>\n<p><strong># vim syslog2mysql.sh<\/strong><\/p>\n<p>Edite a linha:<\/p>\n<p>mysql -u syslogfeeder &#8211;password=PW_HERE syslog &lt; \/var\/log\/mysql.pipe &gt;\/dev\/null<\/p>\n<p>Trocando PW_HERE pelo password do usu\u00e1rio root do banco:<\/p>\n<div class=\"codigo\">mysql -u syslogfeeder &#8211;password=SUA_SENHA syslog &lt; \/var\/log\/mysql.pipe &gt;\/dev\/null<\/div>\n<p>Agora salve e feche. Vamos executar o script:<\/p>\n<p><strong># .\/syslog2mysql.sh &amp;\u00a0<\/strong><\/p>\n<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td colspan=\"2\"><b>Configurando o Apache2<\/b><\/p>\n<div>\n<p>Antes de acessar pelo navegador, adicione no final do arquivo de configura\u00e7\u00e3o do seu apache (no caso do Debian\u00a0<em>\/etc\/apache2\/apache2.conf<\/em>) a seguinte linha:<\/p>\n<div class=\"codigo\">AddType application\/x-httpd-php .phtml .php<\/div>\n<p>Ou seja, abra o arquivo e insira no final do arquivo a linha acima:<\/p>\n<p><strong># vim \/etc\/apache2\/apache2.conf<\/strong><\/p>\n<p>Apesar das configura\u00e7\u00f5es feitas, o Php-Syslog-ng ainda n\u00e3o est\u00e1 pronto. Precisamos incluir a senha do usu\u00e1rio root do banco de dados no arquivo de configura\u00e7\u00e3o dele. Observe que se voc\u00ea tentar acessar sem inserir essa senha no arquivo de configura\u00e7\u00e3o, ser\u00e1 exibida uma p\u00e1gina que no topo ter\u00e1 uma mensagem assim:<\/p>\n<blockquote><p>A database connection problem was encountered.<br \/>\nPlease check config\/config.php to make sure everything is correct and make sure the MySQL server is up and running.<\/p><\/blockquote>\n<p>Ent\u00e3o abra o arquivo de configura\u00e7\u00e3o localizado em \/var\/www\/phpsyslog\/config\/config.php.<\/p>\n<p>Onde tiver &#8220;PW_HERE&#8221;, coloque o password do banco, depois salve e feche o arquivo. Agora reinicie o servi\u00e7o do Apache da seguinte maneira:<\/p>\n<p><strong># \/etc\/init.d\/apache2 restart<\/strong><\/p>\n<h1>Finalizando e colocando em execu\u00e7\u00e3o<\/h1>\n<p>Acesse o diret\u00f3rio \/var\/www\/phpsyslogng-2.8\/scripts. Configure o Syslog-ng para gravar os dados no MySQL da seguinte maneira:<\/p>\n<p><strong># cd \/var\/www\/phpsyslogng-2.8\/scripts<br \/>\n# cat syslog.conf &gt;&gt; \/etc\/syslog-ng\/syslog-ng.conf\u00a0<\/strong><\/p>\n<p>Abra o arquivo\u00a0<em>\/etc\/default\/syslog-ng<\/em>\u00a0e descomente essa linha:<\/p>\n<div class=\"codigo\">CONSOLE_LOG_LEVEL=1<\/div>\n<p>V\u00e1 ao arquivo de configura\u00e7\u00e3o do syslog-ng para editarmos algumas linhas. Utilize seu editor de texto preferido:<\/p>\n<p><strong># vim \/etc\/syslog-ng\/syslog-ng.conf\u00a0<\/strong><\/p>\n<p>Agora procure pela linha comentada, onde tem:<\/p>\n<div class=\"codigo\"><span class=\"comentario\">#udp();<\/span><\/div>\n<p>E descomente. Fa\u00e7a o mesmo para use_dns(no), alterando o estado de &#8220;no&#8221; para &#8220;yes&#8221; e vamos adicionar outra linha. Depois de realizar a busca, voc\u00ea deve encontrar a linha assim:<\/p>\n<p><span class=\"comentario\">#use_dns(no);<\/span><\/p>\n<p>Deixe com &#8220;yes&#8221; e adicione a linha &#8220;dns_cache(yes);&#8221;:<\/p>\n<div class=\"codigo\">use_dns(yes);<br \/>\ndns_cache(yes);<\/div>\n<p>Agora sim, acesse do seu navegador a p\u00e1gina com o endere\u00e7o do servidor e o complemento &#8220;phpsyslog&#8221;, exemplo:<\/p>\n<p>http:\/\/192.168.10.5\/phpsyslog<\/p>\n<p>Login: admin<br \/>\nSenha: admin<\/p>\n<p>Ap\u00f3s efetuar o login, se voc\u00ea recebe um erro do tipo:<\/p>\n<p>&#8220;Query failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near &#8221; at line 1&#8243;<\/p>\n<p>Calma, n\u00e3o altere nada em seu banco de dados. Basta editar o arquivo config.php (\/var\/www\/phpsyslog\/config\/config.php), alterando a linha que diz:<\/p>\n<p>define(&#8216;USE_CACHE&#8217;, TRUE);<\/p>\n<p>Para:<\/p>\n<div class=\"codigo\">define(&#8216;USE_CACHE&#8217;, FALSE);<\/div>\n<p>Ou seja, alteramos apenas de &#8220;TRUE&#8221; para &#8220;FALSE&#8221;, reinicie o apache e tente acessar novamente.<\/p>\n<p>Para os clientes, basta instalar o syslog. Para instalar em um cliente Debian:<\/p>\n<p><strong># apt-get install sysklogd<\/strong><\/p>\n<p>V\u00e1 at\u00e9 o arquivo central de configura\u00e7\u00e3o e adicione a linha para que todos os logs sejam redirecionados para o nosso servidor de log central:<\/p>\n<p><strong># vim \/etc\/syslog.conf<\/strong><\/p>\n<p>Adicione a linha:<\/p>\n<div class=\"codigo\">*.*\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0@IPDOSERVIDOR<\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n","protected":false},"excerpt":{"rendered":"<p>Instala\u00e7\u00e3o dos requisitos Requisitos: Ambiente LAMP (Linux, Apache, MySQL e PHP) Syslog-ng PHP-Syslog-ng Eu utilizo o reposit\u00f3rio oficial do Debian no Brasil: deb http:\/\/ftp.br.debian.org\/debian squeeze main contrib non-free Caso n\u00e3o tenha esse reposit\u00f3rio, aconselho adicionar ao seu\u00a0sources.list. Comece instalando o ambiente LAMP: # apt-get install apache2 mysql-server php5 php5-mysql\u00a0 Defina sua senha para o banco [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[455,1,42,51,514,68,548],"tags":[629,628,627],"class_list":["post-894","post","type-post","status-publish","format-standard","hentry","category-apache2","category-viazap","category-leitura-recomendada","category-linux-linuxrs","category-programacao","category-redes-2","category-ubuntu-2","tag-com-syslog-ng","tag-no-debian","tag-servidor-de-log"],"_links":{"self":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/894","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=894"}],"version-history":[{"count":1,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/894\/revisions"}],"predecessor-version":[{"id":895,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/894\/revisions\/895"}],"wp:attachment":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=894"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=894"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=894"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}