BSDRP 1.0 (BSD Projeto Router)







Olivier Cochard-Labbé disponibilizou a versão 1.0 do Projeto Router BSD (BSDRP).  

Olivier foi o líder fundador e projeto de FreeNAS antes dele ser assumido pelo iXsystems

BSD Router (BSDRP) é uma distribuição roteador open source baseado em FreeBSD, suportando todos os majores protocolos de roteamento (RIP, OSPF, BGP, PIM, etc.).


http://bsdrp.net/bsdrp
http://www.freebsdnews.net/2011/10/17/bsdrp-1-0-bsd-router-project/

FreeBSD - O poder dos servidores em suas mãos


Descrição do livro

Este livro inclui todo o conhecimento necessário para conhecer o FreeBSD e deixá-lo totalmente operacional e configurado para suas necessidades. Com ele você entenderá como as grandes empresas projetam suas soluções de alta disponibilidade unindo em um só ambiente segurança, tuning, troubleshooting e até pentests. Independentemente do tamanho de seu projeto, FreeBSD – O Poder dos Servidores em suas Mãos o auxiliará a instalar servidores seguindo os conceitos contidos no modelo ITIL e fornecerá os conhecimentos para a sua demanda.


O sumário do livro.

Detalhes do Livro

Autor: Denis Augusto A. de Souza
ISBN: 978-85-7522-162-4
Páginas: 544
Ano: 2009 

Blog do Livro: http://freebsdbook.blogspot.com

http://novatec.com.br/livros/freebsd/

Learning FreeNAS



Descrição do livro
FreeNAS é um software gratuito que transforma um PC em um servidor de Network Attached Storage (NAS). Ele suporta conexões de cliente do Microsoft Windows, Apple OS X, Linux e FreeBSD. Ele tem uma interface web para administração e inclui suporte para RAID (0, 1, 5), iSCSI de criptografia de disco, e UPnP. Baseado em FreeBSD, tem requisitos de sistema modesto, mas é escalável para a empresa.

Este livro vai lhe mostrar como trabalhar com o FreeNAS e configurá-lo para suas necessidades. Você vai aprender como configurar e administrar um servidor FreeNAS em uma variedade de cenários de rede. Você também vai aprender a planejar e implementar RAID no servidor, bem como a forma de utilizar as tecnologias de rede de armazenamento como iSCSI. A documentação FreeNAS norma orienta a configuração básica, mas este livro vai lhe dizer exatamente o que você deve fazer o plano de trabalho, e implantar FreeNAS. Este livro tem uma seção de solução abrangente que irá apontar na direção certa, sempre que precisar de ajuda.

Este livro é um guia completo para criar e usar resiliente soluções de armazenamento de rede para o seu negócio usando FreeNAS. Escrito num estilo acessível e repleto de fatos que você precisa saber, este livro vai lhe mostrar como fazer as coisas da maneira certa.

O que você vai aprender com este livro:

Compreender os conceitos de Network Attached Storage (NAS) e onde FreeNAS servidor se encaixa em seu negócio.
Instalar, configurar e atualizar o servidor FreeNAS.
práticas Implantar o seu melhor para seguir NAS plano de capacidade, hardware, backup, redundância e infra-estrutura de rede.
Implantar FreeNAS como um backup de compartilhamento de arquivos, servidor de streaming, usando diferentes protocolos, como CIFS, NFS, FTP, rsync, Unison, AFP e UPnP.
Use FreeNAS como uma ponte para Storage Area Networks usando SCSI.
Conecte-se ao servidor FreeNAS do Windows, OS X, Linux ou dispositivos UPnP.
Realizar tarefas administrativas comuns: add e autenticar usuários, reiniciando e desligando, gerenciamento de rede, e configurar o FreeNAS para usar DNS.
Melhorar a tolerância a falhas e desempenho da unidade através da criação de conjuntos RAID.
€ optionsâ Explore backup "criar cópias de dados em um servidor remoto ou outro disco rígido no servidor FreeNAS.
Realizar uma configuração avançada do sistema: criptografar discos, adicionar o espaço swap, a SMART e acesso SSH.
Solucionar problemas do servidor FreeNAS quando confrontados com problemas de rede ou falhas RAID.
Realizar tarefas básicas de administração do FreeBSD.

Abordagem
Este livro foi escrito a partir da perspectiva do administrador do sistema, abordando os tópicos que serão mais importantes para ajudar você a entender FreeNAS, e obtê-lo criado como forma segura e rápida possível. Você só vai ver como fazer o trabalho.

Que este livro é escrito para
Este livro é para administradores de sistemas que querem um baixo custo, forma simples de fornecer grandes quantidades de armazenamento anexado à rede. Ele não pressupõe conhecimento do BSD, e vai trabalhar para as pessoas que utilizam FreeNAS em qualquer ambiente de rede.

Detalhes do Livro

Paperback: 244 páginas
Editora: Packt Publishing (Agosto 2008)
Idioma: Inglês
ISBN-10: 9781847194688
ISBN-13: 978-1847194688


http://www.packtpub.com/learning-freenas/book?utm_source=hp&utm_campaign=freenas-abr&utm_medium=0808

FreeBSD: PHPMyAdmin 3.4.1


        PHPMYADMIN: O phpMyAdmin é um programa de computador desenvolvido em PHP para administração do MySQL pela Internet. A partir deste sistema é possível criar e remover bases de dados, criar, remover e alterar tabelas, inserir, remover e editar campos, executar códigos SQL e manipular campos chaves. O phpMyAdmin é muito utilizado por programadores web que muitas vezes necessitam manipular bases de dados.
www.phpmyadmin.net/

Pré requisitos: MYSQL + APACHE + PHP (FAMP):
http://howtobsd.blogspot.com/2010/09/famp-freebsd-apache-mysql-php.html

Instalando o PHPMyAdmin

Para instalar o PHPMyAdmin acesse o diretório:

# cd /usr/ports/databases/phpmyadmin/

Configure as opções de compilação do PHPMyAdmin com o comando:

# make config

Marque as opções apropriadas para sua necessidade no phpMyAdmin 3.4.1:
[ ] SUPHP                suPHP support                                
[X] BZ2                  bzip2 library support                   
[X] GD                   GD library support
[X] MYSQLI               Improved MySQL support                          
[X] OPENSSL              OpenSSL support                       
[X] PDF                  PDFlib support (implies GD)             
[X] ZLIB                 ZLIB support                     
[X] MCRYPT               MCrypt library support                
[X] ZIP                  Zip compression support     
[X] APC                  APC (animated progress bar) support

Execute o comando de compilação e instalação do PHPMyAdmin:

# make install clean

Depois de instalado vamos criar o arquivo de configuração utilizando um dos samples existentes executando o comando:

# cp /usr/local/www/phpMyAdmin/libraries/config.default.php /usr/local/www/phpMyAdmin/config.inc.php

Agora vamos realizar as alterações necessárias no arquivo “/usr/local/www/phpMyAdmin/config.inc.php” :

# ee /usr/local/www/phpMyAdmin/config.inc.php
$cfg['Servers'][$i]['auth_type'] = ‘http‘;

Depois adicione no arquivo “http.conf” do Apache:

# ee /usr/local/etc/apache22/httpd.conf

Alias /phpmyadmin "/usr/local/www/phpMyAdmin/"

<Directory "/usr/local/www/phpMyAdmin/">
        Options none
        AllowOverride Limit
        Order Deny,Allow
</Directory>

Feito isso vamos reiniciar o Apache com o seguinte comando:

# /usr/local/etc/rc.d/apache22 restart
# rehash

Vamos agora testar o PHPMyAdmin. Use um browser para conectar a:

# http://"ip_do_servidor"/phpmyadmin/

Se tudo estiver certo será solicitado autenticação para acessar. Use o login root e a mesma senha que você configurou para o MySQL.

MYSQL: Alterar e Resetar a Senha de Root

Caso você precise apenas alterar a sua senha do root, acesse o MySQL com a antiga senha e configure uma nova senha (Importante digitar a nova senha entre as aspas simples):

# mysql -uroot -p
password: ...

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('NovaSenha');
mysql> quit

Mas se por algum motivo você perder a senha do root e precisa reseta-lá, execute os passos abaixos:

a) Pare o MySQL:

## /usr/local/etc/rc.d/mysql-server stop

b) Inicie o MySQL em modo seguro (safe mode):

## mysqld_safe --skip-grant-tables &

c) Conecte ao MYSQL:

# mysql

d) Entre com a nova senha (Importante digitar a nova senha entre as aspas simples)

mysql> UPDATE mysql.user SET Password = PASSWORD ('NovaSenha') WHERE User = 'root';
mysql> FLUSH privilégios;
mysql> quit

e) Pare o MySQL e Inicie Novamente

# /usr/local/etc/rc.d/mysql-server stopt
# /usr/local/etc/rc.d/mysql-server start


Refência
http://dev.mysql.com/doc/refman/5.1/en/resetting-permissions.html
http://www.ducea.com/2008/01/31/mysql-tips-howto-change-the-mysql-root-password/

Centreon: Resetar a Senha de Admin

A senha de admin do Centreon é armazenada na Base de Dados do Centreon (MySQL) no formato MD5.

Para resetar a senha você precisa primeiro converter a nova senha para MD5 (MD5 Password). Para isso pode ser utilizado o seguinte site:

http://www.trilug.org/~jeremy/md5.php

Depois acesse a Base de Dados do Centreon:

# mysql -u centreon -p
password: ...

$ use centreon;
$ show tables
$ select * from contact where contact_alias = 'admin';
$ UPDATE contact SET contact_passwd = 'MD5 Password' where contact_alias = 'admin';
$ select * from contact where contact_alias = 'admin';
$ exit

Refência
http://forum.centreon.com/showthread.php/8812-Reset-admin-password

FreeBSD + Diablo JDK + MySQL + Openfire

Servidor de CHAT

        Nesta documentação apresentaremos de forma simples e clara como disponibilizar um servidor de conferencia com Openfire.

        Para esse projeto foi instalado o sistema operacional FreeBSD 8.2 e configurados o Diablo JDK, MYSQL e Openfire.

        FREEBSD

        O FreeBSD é um sistema operacional livre do tipo Unix descendente do BSD desenvolvido pela Universidade de Berkeley. Está disponível para as plataformas Intel x86, DEC Alpha, Sparc, PowerPC e PC98 assim como para as arquiteturas baseadas em processadores de 64bits IA-64 e AMD64. Considerado como robusto e estável, geralmente é utilizado em servidores, mas também pode ser utilizado como estação de trabalho.
www.freebsd.org/
   
        MySQL

        O MySQL é um sistema de gerenciamento de banco de dados (SGBD), que utiliza a linguagem SQL (Linguagem de Consulta Estruturada, do inglês Structured Query Language) como interface. O MySQL foi criado na Suécia por dois suecos e um finlandês: David Axmark, Allan Larsson e Michael "Monty" Widenius.
www.mysql.com/

        DIABLO JDK

        A Fundação FreeBSD tem uma licença com a Sun Microsystems para distribuir binários FreeBSD para o Java Runtime Environment (JRE) e o Java Development Kit (JDK). Essas implementações foram viabilizados através do trabalho duro da equipe Java FreeBSD, bem como através de doações para a Fundação FreeBSD que apoiaram hardware, custos de desenvolvimento, e honorários legais.
O JRE oficiais e os binários do JDK baseada em fontes mais recentes da Sun parceiro fornecer aos usuários finais e desenvolvedores com a confiança de que eles podem usar e criar aplicações Java no FreeBSD com o mesmo grau de portabilidade, robustez e estabilidade que têm vindo a esperar do outro suporte sistemas operacionais. Estes binários foram totalmente testadas em teste de compatibilidade da Sun suite.
        Por favor, considere uma doação para a Fundação FreeBSD para apoiar a continuação do desenvolvimento Java. Suas doações ajudarão a atualizações de manutenção do fundo, as futuras versões do Java, e atualizações para novas versões do FreeBSD.
www.freebsdfoundation.org/downloads/java.shtml

        OPENFIRE

        Openfire é um servidor que utiliza o protocolo Jabber para oferecer serviços de mensagens instantâneas aos usuários. O software é gratuito e, além da simples troca de mensagens de texto, permite conversas por voz, conferências, envio de arquivos e até a troca de screenshots (imagens da área de trabalho) — tirados em tempo real — entre os participantes das sessões.
www.igniterealtime.org/projects/openfire/index.jsp


1- Instalando o Diablo JDK

Para instalar o Diablo JDK é necessário baixar determinados arquivos manualmente, devido a restrições de licenciamento. Realize o download dos arquivos a seguir:

http://www.java.net/download/jdk6/6u3/promoted/b05/jdk-6u3-fcs-src-b05-jrl-24_sep_2007.jar
http://www.java.net/download/jdk6/6u3/promoted/b05/jdk-6u3-fcs-bin-b05-jrl-24_sep_2007.jar
http://www.java.net/download/jdk6/6u3/promoted/b05/jdk-6u3-fcs-mozilla_headers-b05-unix-24_sep_2007.jar
http://www.FreeBSDFoundation.org/cgi-bin/download?download=diablo-caffe-freebsd7-amd64-1.6.0_07-b02.tar.bz2

Depois acesse o site “http://java.sun.com/javase/downloads/index.jsp” e baixe:

JDK DST Timezone Update Tool - 1.3.35

Depois acesse o site “http://www.eyesbeyond.com/freebsddom/java/jdk16.html” e baixe:

bsd-jdk16-patches-4.tar.bz2

Salve todos os arquivos baixados no “/usr/ports/distfiles

Agora acesse o diretório:

# cd /usr/ports/java/jdk16

Configure as opções de compilação do Diablo JDK 1.6 com o comando:

# make config

Marque as opções apropriadas para sua necessidade no jdk 1.6.0.3p4_22:
[ ] DEBUG                  Enable debugging support
[ ] IPV6                   Enable IPv6 support
[X] WEB                    Enable the browser plugin and Java Web Start
[ ] POLICY                 Install the Unlimited Strength Policy Files
[X] TZUPDATE               Update the time zone data  
[ ] JAIL                   Port is being built within a jail

Execute o comando de compilação e instalação do Diablo JDK:
# make install clean

Marque as opções apropriadas para sua necessidade no libiconv 1.13.1_1:
[X] EXTRA_ENCODINGS        Include extra character sets
[ ] EXTRA_PATCHES          Apply patches to fix CP932, add EUCJP-MS

Marque as opções apropriadas para sua necessidade no libxslt 1.1.26_2:
[ ] MEM_DEBUG              Enable memory debugging  
[X] CRYPTO                 Enable crypto support for exslt

Marque as opções apropriadas para sua necessidade no python27 2.7.1_1:
[X] THREADS                Enable thread support
[ ] HUGE_STACK_SIZE        Use a larger thread stack
[ ] SEM                    Use POSIX semaphores (experimental) 
[ ] PTH                    Use GNU Pth for threading/multiprocessing
[X] UCS4                   Use UCS4 for unicode support         
[X] PYMALLOC               Use python's internal malloc
[ ] IPV6                   Enable IPv6 support
[ ] FPECTL                 Enable floating point exception handling

Marque as opções apropriadas para sua necessidade no perl 5.10.1_3:
[ ] DEBUGGING              Build with debugging support
[ ] GDBM                   Build GDBM_File extension
[X] PERL_MALLOC            Use Perl malloc
[X] PERL_64BITINT          Use 64 bit integers (on i386)
[ ] THREADS                Build threaded perl
[ ] MULTIPLICITY           Use multiplicity
[ ] SUIDPERL               Build set-user-id suidperl binary
[ ] SITECUSTOMIZE          Run-time customization of @INC
[X] USE_PERL               Rewrite links in /usr/bin

Marque as opções apropriadas para sua necessidade no m4 1.4.16,1:
[ ] LIBSIGSEGV             Use libsigsegv for better diagnostics

Marque as opções apropriadas para sua necessidade no cups-client 1.4.6:
[X] GNUTLS                 Build with GNUTLS library

Marque as opções apropriadas para sua necessidade no diablo-jdk 1.6.0.07.02_13:
[ ] POLICY                 Install the Unlimited Strength Policy Files
[X] TZUPDATE               Update the time zone data

Marque as opções apropriadas para sua necessidade no glib 2.26.1_1:
[ ] COLLATION_FIX          fix string collation

Marque as opções apropriadas para sua necessidade no gamin 0.1.10_4:
[ ] GAM_POLLER             Use gamin's poller instead of kqueue's

2- Instalando o MySQL

Para instalar o MySQL acesse o diretório:

# cd /usr/ports/databases/mysql55-server/

Configure as opções de compilação do MySQL 5.5 com o comando:

# make config

Marque as opções apropriadas para sua necessidade no mysql-server 5.5.11:                     
[X] OPENSSL                Enable SSL support
[ ] FASTMTX                Replace mutexes with spinlocks

Execute o comando de compilação e instalação do MySQL 5.5:
# make install clean

Marque as opções apropriadas para sua necessidade no mysql-client 5.5.11:
[X] OPENSSL                Enable SSL support
[ ] FASTMTX                Replace mutexes with spinlocks

Depois de instado o MySQL, vamos habilitar para o que ele inicialize quando o FreeBSD for reiniciado. Editar o arquivo “rc.conf”:

# ee /etc/rc.conf

Adicionando ao final do arquivo as linhas abaixo, depois salve o arquivo e saia:

#MySQL
        mysql_enable="YES"

Agora vamos iniciar o MySQL com o seguinte comando:

# /usr/local/etc/rc.d/mysql-server start
# rehash

Agora vamos realizar as alterações necessárias no MySQL. Primeiro alterar senha de root:

# mysqladmin -uroot password “senha” (sem aspas)

Agora reiniciar o MySQL:

# /usr/local/etc/rc.d/mysql-server restart

3- Instalando o Openfire

Para instalar o Openfire acesse o diretório:

# cd /usr/ports/net-im/openfire

Execute o comando de compilação e instalação do Openfire:

# make install clean

Depois de realizado a instalação, vamos habilitar para o Openfire inicializar quando o FreeBSD for reiniciado. Editar o arquivo “rc.conf”.

# ee /etc/rc.conf

Adicionando ao final do arquivo as linhas abaixo, depois salve o arquivo e saia.

# Openfire
        openfire_enable="YES"

Antes de iniciar o Openfire vamos aumentar a memória Java alocada para o mesmo. Acesse o arquivo /usr/local/etc/rc.d/openfire:

# ee /usr/local/etc/rc.d/openfire

Localize a seguinte linha:

: ${openfire_javargs:='-Xmx256M'}

Altere para:

: ${openfire_javargs:='-Xms256M -Xmx1024M'}

Explicando:

-Xms256M: Mínimo de memória alocada;
-Xmx1024M: Máximo de memória alocada.

Agora vamos iniciar o Openfire com o seguinte comando:

# /usr/local/etc/rc.d/openfire start
# rehash

Vamos agora testar o Openfire. Use um browser para conectar a:

# http://"ip_do_servidor":9090

Se tudo estiver certo será exibido à página “Welcome to Setup”.

4- Configurando o MySQL

Agora iremos acessar o MySQL e criar a base de dados para o Openfire:

# mysql -u root -p

mysql> CREATE DATABASE openfire;
mysql> GRANT ALL PRIVILEGES ON openfire.* TO openfire@localhost IDENTIFIED BY “senha”; (Digite a Senha entre as aspas”)
mysql> QUIT

Explicando: (1)

Na primeira linha estamos criando um banco de dados com o nome "openfire", que será utilizado pelo servidor Openfire.
Na segunda linha estamos dando para o usuário "openfire" todos os privilégios neste banco de dados e estamos definindo para ele uma senha denominada "senha".
Na terceira linha estamos saindo do banco de dados.

Importe o arquivo do esquema a partir do diretório /resources/database/ na pasta que o Openfire está intalado:

# cat /usr/local/share/java/openfire/resources/database/openfire_mysql.sql | mysql -u root -p openfire

A base de dados já está criada e configurada para utiliza-la na configuração do Openfire.



5- Configurando o Openfire

Agora iremos acessar, via browser, a console de Administração do Openfire para configurar nosso servidor

# http://"ip_do_servidor":9090


1)    Selecione o idioma de sua escolha:


2)    Configure o domínio. Se você optar por um endereço IP, digite o IP do seu servidor. Se você optar por criar um alias de DNS, digite o domínio do servidor DNS: (2)

3)    Você tem duas escolhas sobre qual banco de dados a ser usado para Openfire para armazenar seus dados: um banco de dados externos, como MySQL, MSSQL, PostgreSQL, etc, ou usar o pacote do banco de dados incorporado (Embedded Database). Se você optou por configurar um banco de dados MySQL, como fizemos neste guia, selecione a opção Standard Database Connection. Se não, a única opção é usar o banco de dados incorporado. (2)


4)    Para configurar sua conexão com banco de dados, selecionar o driver apropriado da lista de Database Presets Driver (em nosso caso selecione MySQL). A página será atualizada e você precisa preencher as informações necessárias (o host do banco de dados, nome, nome de usuário e senha). Você deve ter essa informação de quando você configurar o seu banco de dados MySQL. Por este guia, o MySQL é no mesmo servidor como a minha instalação Openfire (localhost) e criei um banco de dados chamado “openfire” com um nome de usuário “openfire” e defini uma senha. (2)



5)    A etapa perfil tem a ver com os usuários e grupos de bate-papo membros e onde Openfire irá armazenar as informações (novos usuários, grupos de usuários, etc). Nós não vamos optar por LDAP para armazenar essas informações. É muito mais conveniente para salvá-lo em nosso em nosso banco de dados. Selecione a opção “Default” para o Profile:     (2)



6)    Digite o endereço de e-mail do administrador e defina uma senha para seu servidor Openfire.
 
7)    A configuração esta completa! Clique em “Login to admin console”:



8)    Agora iremos acessar, via browser, a console de Administração do Openfire




6- Referências

(1) http://www.vivaolinux.com.br/artigo/Servidor-Jabber-com-Openfire-+-MySQL-+-Debian-Lenny?pagina=2
(2) http://www.tonybhimani.com/2007/12/31/openfire-jabberxmpp-server-on-centos-mini-howto/
www.fug.com.br
www.bsdux.com.br
http://www.remontti.com.br/blog/archives/648
http://dev.mysql.com/doc/refman/5.5/en/freebsd.html
http://www.fug.com.br/content/view/360/77/
http://openfirebrasil.blogspot.com/
http://community.igniterealtime.org/thread/28484
http://www.igniterealtime.org/builds/openfire/docs/latest/documentation/database.html
http://mistura.wordpress.com/2008/06/25/instalando-o-openfire-no-debian-etch/
http://www.sistemabasico.com.br/2010/12/28/tutorial-integrando-o-servidor-de-mensagens-instantaneas-openfire-com-mysql-no-windows-7/
http://www.rafaelmatias.com.br/2011/03/20/instalando-openfire-jabber-com-mysql-no-ubuntu-e-autenticando-no-ad/
http://ubuntuforums.org/showthread.php?t=525670
http://community.igniterealtime.org/thread/28325
http://community.igniterealtime.org/docs/DOC-1633
http://community.igniterealtime.org/blogs/ignite/2008/07/26/flash-based-audio-and-video-in-spark-sparkweb-and-openfire
http://www.igniterealtime.org/projects/openfire/plugins-beta/red5/readme.html
http://www.igniterealtime.org/projects/openfire/plugins-beta/red5/changelog.html

FreeBSD + Nagios + Centreon

Servidor de Monitoração Nagios e Centreon



        Nesta documentação apresentaremos de forma simples e clara como disponibilizar um servidor de monitoração com o Nagios e Centreon.

        Para esse projeto foi instalado o sistema operacional FreeBSD 8.1 e configurados o AMP, que consiste na base de dados MySQL, o servidor web Apache e o interpretadores para linguagens de script PHP.

        FREEBSD
        O FreeBSD é um sistema operacional livre do tipo Unix descendente do BSD desenvolvido pela Universidade de Berkeley. Está disponível para as plataformas Intel x86, DEC Alpha, Sparc, PowerPC e PC98 assim como para as arquiteturas baseadas em processadores de 64bits IA-64 e AMD64. Considerado como robusto e estável, geralmente é utilizado em servidores, mas também pode ser utilizado como estação de trabalho.
www.freebsd.org/

        MySQL
        O MySQL é um sistema de gerenciamento de banco de dados (SGBD), que utiliza a linguagem SQL (Linguagem de Consulta Estruturada, do inglês Structured Query Language) como interface. O MySQL foi criado na Suécia por dois suecos e um finlandês: David Axmark, Allan Larsson e Michael "Monty" Widenius.
www.mysql.com/

        APACHE
        O servidor Apache é o mais bem sucedido servidor web livre. Foi criado em 1995 por Rob McCool, então funcionário do NCSA (National Center for Supercomputing Applications).
www.apache.org/

        PHP
        PHP (um acrónimo recursivo para "PHP: Hypertext Preprocessor") é uma linguagem de programação de computadores interpretada, livre e muito utilizada para gerar conteúdo dinâmico na World Wide Web, tendo como principais caracteriticas a velocidade e robustez, ser estruturado e orientado a objetos e sua portabilidade. A linguagem surgiu por volta de 1994, como um pacote de programas CGI criados por Rasmus Lerdorf.
www.php.net/

        NAGIOS
        Nagios é uma popular aplicação de monitoração de rede de código aberto distribuída sob a licença GPL. Ele pode monitorar tanto hosts quanto serviços, alertando-o quando ocorrerem problemas e também quando os problemas forem resolvidos. O Nagios foi originalmente criado sob o nome de Netsaint, foi escrito e é atualmente mantido por Ethan Galstad, junto com um exército de desenvolvedores que ativamente mantém plugins oficiais e não-oficiais..
www.nagios.org

        CENTREON
        Centreon é uma ferramenta de monitoramento de hosts e serviços, ele é um frontend que funciona em cima do Nagios, adicionando muitas facilidades para visualização e histórico de alertas, estatus, etc..
www.centreon.com





1- Instalando o MySQL

Para instalar o MySQL acesse o diretório:

# cd /usr/ports/databases/mysql51-server/

Execute o comando de compilação e instalação do MySQL 5.1.52:

# make BUILD_STATIC=yes BUILD_OPTIMIZED=yes WITH_OPENSSL=yes install clean

Depois de instado o MySQL, vamos habilitar para o que ele inicialize quando o FreeBSD for reiniciado. Editar o arquivo “rc.conf”:

# ee /etc/rc.conf

Adicionando ao final do arquivo as linhas abaixo, depois salve o arquivo e saia:

# MySQL
         mysql_enable="YES"

Agora vamos iniciar o MySQL com o seguinte comando:

# /usr/local/etc/rc.d/mysql-server start 
# rehash

Agora vamos realizar as alterações necessárias no MySQL. Primeiro alterar senha de root:

# mysqladmin -uroot password “senha” (sem aspas)

O próximo passo é criar um arquivo de configuração para o MySQL utilizando os samples existentes

# cp /usr/local/share/mysql/my-large.cnf /var/db/mysql/my.cnf 

Depois acesse o arquivo my.cnf e descomente a linha skip-networking:

# ee /var/db/mysql/my.cnf 

Agora reiniciar o MySQL:

# /usr/local/etc/rc.d/mysql-server restart


2- Instalando o Apache

Para instalar o Apache acesse o diretório:

# cd /usr/ports/www/apache22

Configure as opções de compilação do Apache 2.2 com o comando:

# make config

Marque as opções apropriadas para sua necessidade no Apache 2.2.17_1:
[X] THREADS                Enable threads support in APR    
[X] MYSQL                  Enable MySQL support for apr-dbd 
[ ] PGSQL                  Enable PostgreSQL support for apr-dbd
[ ] SQLITE                 Enable SQLite support for apr-dbd
[ ] IPV6                   Enable IPv6 support              
[X] BDB                    Enable BerkeleyDB dbm            
[X] AUTH_BASIC             Enable mod_auth_basic            
[X] AUTH_DIGEST            Enable mod_auth_digest           
[X] AUTHN_FILE             Enable mod_authn_file            
[ ] AUTHN_DBD              Enable mod_authn_dbd             
[X] AUTHN_DBM              Enable mod_authn_dbm             
[X] AUTHN_ANON             Enable mod_authn_anon            
[X] AUTHN_DEFAULT          Enable mod_authn_default         
[X] AUTHN_ALIAS            Enable mod_authn_alias           
[X] AUTHZ_HOST             Enable mod_authz_host            
[X] AUTHZ_GROUPFILE        Enable mod_authz_groupfile       
[X] AUTHZ_USER             Enable mod_authz_user            
[X] AUTHZ_DBM              Enable mod_authz_dbm             
[X] AUTHZ_OWNER            Enable mod_authz_owner           
[X] AUTHZ_DEFAULT          Enable mod_authz_default         
[X] CACHE                  Enable mod_cache                 
[X] DISK_CACHE             Enable mod_disk_cache            
[X] FILE_CACHE             Enable mod_file_cache            
[ ] MEM_CACHE              Enable mod_mem_cache             
[X] DAV                    Enable mod_dav                   
[X] DAV_FS                 Enable mod_dav_fs                
[ ] BUCKETEER              Enable mod_bucketeer             
[ ] CASE_FILTER            Enable mod_case_filter           
[ ] CASE_FILTER_IN         Enable mod_case_filter_in  
[ ] EXT_FILTER             Enable mod_ext_filter            
[ ] LOG_FORENSIC           Enable mod_log_forensic          
[ ] OPTIONAL_HOOK_EXPORT   Enable mod_optional_hook_export  
[ ] OPTIONAL_HOOK_IMPORT   Enable mod_optional_hook_import  
[ ] OPTIONAL_FN_IMPORT     Enable mod_optional_fn_import    
[ ] OPTIONAL_FN_EXPORT     Enable mod_optional_fn_export    
[ ] LDAP                   Enable mod_ldap                  
[ ] AUTHNZ_LDAP            Enable mod_authnz_ldap           
[X] ACTIONS                Enable mod_actions               
[X] ALIAS                  Enable mod_alias                 
[X] ASIS                   Enable mod_asis                  
[X] AUTOINDEX              Enable mod_autoindex             
[X] CERN_META              Enable mod_cern_meta             
[X] CGI                    Enable mod_cgi                   
[X] CHARSET_LITE           Enable mod_charset_lite               
[ ] DBD                    Enable mod_dbd    
[X] DEFLATE                Enable mod_deflate               
[X] DIR                    Enable mod_dir                   
[X] DUMPIO                 Enable mod_dumpio                
[X] ENV                    Enable mod_env                   
[X] EXPIRES                Enable mod_expires               
[X] HEADERS                Enable mod_headers               
[X] IMAGEMAP               Enable mod_imagemap              
[X] INCLUDE                Enable mod_include               
[X] INFO                   Enable mod_info                  
[X] LOG_CONFIG             Enable mod_log_config            
[X] LOGIO                  Enable mod_logio                 
[X] MIME                   Enable mod_mime                  
[X] MIME_MAGIC             Enable mod_mime_magic            
[X] NEGOTIATION            Enable mod_negotiation           
[X] REWRITE                Enable mod_rewrite    
[X] SETENVIF               Enable mod_setenvif              
[X] SPELING                Enable mod_speling               
[X] STATUS                 Enable mod_status                
[X] UNIQUE_ID              Enable mod_unique_id             
[X] USERDIR                Enable mod_userdir               
[X] USERTRACK              Enable mod_usertrack             
[X] VHOST_ALIAS            Enable mod_vhost_alias           
[X] FILTER                 Enable mod_filter                
[X] VERSION                Enable mod_version               
[ ] PROXY                  Enable mod_proxy                 
[ ] PROXY_CONNECT          Enable mod_proxy_connect              
[X] PATCH_PROXY_CONNECT    Patch proxy_connect SSL support       
[ ] PROXY_FTP              Enable mod_proxy_ftp                  
[ ] PROXY_HTTP             Enable mod_proxy_http                 
[ ] PROXY_AJP              Enable mod_proxy_ajp                  
[ ] PROXY_BALANCER         Enable mod_proxy_balancer             
[ ] PROXY_SCGI             Enable mod_proxy_scgi                 
[X] SSL                    Enable mod_ssl                        
[ ] SUEXEC                 Enable mod_suexec                     
[ ] SUEXEC_RSRCLIMIT       SuEXEC rlimits based on login class   
[X] REQTIMEOUT             Enable mod_reqtimeout                 
[ ] CGID                   Enable mod_cgid

Execute o comando de compilação e instalação do Apache:

# make install clean

Marque as opções apropriadas para sua necessidade no perl 5.10.1_2:
[ ] DEBUGGING              Build with debugging support    
[ ] GDBM                   Build GDBM_File extension              
[X] PERL_MALLOC            Use Perl malloc                       
[X] PERL_64BITINT          Use 64 bit integers (on i386)         
[X] THREADS                Build threaded perl
[ ] MULTIPLICITY           Use multiplicity                  
[ ] SUIDPERL               Build set-user-id suidperl binary     
[ ] SITECUSTOMIZE          Run-time customization of @INC       
[X] USE_PERL               Rewrite links in /usr/bin

Marque as opções apropriadas para sua necessidade no m4 1.4.15,1:
[ ] LIBSIGSEGV              Use libsigsegv for better diagnostics

Marque as opções apropriadas para sua necessidade no libiconv 1.13.1_1:
[X] EXTRA_ENCODINGS        Include extra character sets             
[ ] EXTRA_PATCHES          Apply patches to fix CP932, add EUCJP-MS

Marque as opções apropriadas para sua necessidade no apr-ipv6-devrandom-gdbm-db42 1.4.2.1.3.10:
[X] THREADS                Enable Threads in apr        
[ ] IPV6                   Enable IPV6 Support in apr   
[X] BDB                    Enable Berkley BDB support in apr-util     
[X] GDBM                   Enable GNU dbm support in apr-util       
[ ] LDAP                   Enable LDAP support in apr-
[X] MYSQL                  Enable MySQL suport in apr-
[ ] NDBM                   Enable NDBM support in apr-
[ ] PGSQL                  Enable Postgresql suport in apr-util        
[ ] SQLITE                 Enable SQLite3 support in apr-util         
[X] DEVRANDOM              Use /dev/random or compatible in apr

Marque as opções apropriadas para sua necessidade no python26 2.6.6:
[X] THREADS                Enable thread support      
[ ] HUGE_STACK_SIZE        Use a larger thread stack  
[ ] SEM                    Use POSIX semaphores (experimental)    
[ ] PTH                    Use GNU Pth for threading/multiprocessing 
[X] UCS4                   Use UCS4 for unicode support             
[X] PYMALLOC               Use python's internal malloc 
[ ] IPV6                   Enable IPv6 support        
[ ] FPECTL                 Enable floating point exception handling

Depois de realizado a instalação, vamos habilitar para o Apache inicializar quando o FreeBSD for reiniciado. Editar o arquivo “rc.conf”.

# ee /etc/rc.conf

Adicionando ao final do arquivo as linhas abaixo, depois salve o arquivo e saia.
# Apache
         apache22_enable="YES"
         accf_data_load="YES"
         accf_http_load="YES"

Agora adicione a linha abaixo no “/etc/hosts”:

# ee /etc/hosts 
127.0.0.1 "hostname" 

Depois edite o arquivo “httpd.conf”:

# ee /usr/local/etc/apache22/httpd.conf
Servername "hostname":80

Agora vamos iniciar o Apache com o seguinte comando.


# /usr/local/etc/rc.d/apache22 start
# rehash

Vamos agora testar o Apache. Use um browser para conectar a:


# http://"ip_do_servidor"

Se tudo estiver certo será exibido “It works!”.


3- Instalando o PHP

Para instalar o PHP acesse o diretório:

# cd /usr/ports/lang/php52

Configure as opções de compilação do PHP 52 com o comando:

# make config

Marque as opções apropriadas para sua necessidade no php52 5.2.14_1:
[X] CLI                    Build CLI version                  
[X] CGI                    Build CGI version                  
[X] APACHE                 Build Apache module                
[ ] DEBUG                  Enable debug                       
[X] SUHOSIN                Enable Suhosin protection system (not for jails) 
[ ] MULTIBYTE              Enable zend multibyte support      
[ ] IPV6                   Enable ipv6 support                
[ ] MAILHEAD               Enable mail header patch           
[ ] REDIRECT               Enable force-cgi-redirect support (CGI only)    
[ ] DISCARD                Enable discard-path support (CGI only)          
[X] FASTCGI                Enable fastcgi support (CGI only)  
[ ] FPM                    Enable fastcgi process manager (CGI only)
[X] PATHINFO               Enable path-info-check support (CGI only)

Acesse o diretório das extensões do PHP:

# cd ../php52-extensions/

Configure as opções de compilação do php52-extensions com o comando:

# make config

Marque as opções apropriadas para sua necessidade no php52-extensions 1.4:
[ ] BCMATH                 bc style precision math functions            
[X] BZ2                    bzip2 library support
[ ] CALENDAR               calendar conversion support     
[X] CTYPE                  ctype functions      
[ ] CURL                   CURL support         
[ ] DBA                    dba support          
[ ] DBASE                  dBase library support
[X] DOM                    DOM support          
[ ] EXIF                   EXIF support         
[ ] FILEINFO               fileinfo support     
[X] FILTER                 input filter support 
[ ] FRIBIDI                FriBidi support      
[ ] FTP                    FTP support          
[X] GD                     GD library support   
[X] GETTEXT                gettext library support         
[ ] GMP                    GNU MP support       
[X] HASH                   HASH Message Digest Framework   
[X] ICONV                  iconv support        
[ ] IMAP                   IMAP support         
[ ] INTERBASE              Interbase 6 database support (Firebird)      
[X] JSON                   JavaScript Object Serialization support      
[ ] LDAP                   OpenLDAP support     
[X] MBSTRING               multibyte string support        
[X] MCRYPT                 Encryption support   
[X] MHASH                  Crypto-hashing support          
[ ] MING                   ming shockwave flash support    
[ ] MSSQL                  MS-SQL database support         
[X] MYSQL                  MySQL database support          
[ ] MYSQLI                 MySQLi database support         
[ ] NCURSES                ncurses support (CLI only)      
[ ] ODBC                   unixODBC support     
[X] OPENSSL                OpenSSL support      
[ ] PCNTL                  pcntl support (CLI only)        
[X] PCRE                   Perl Compatible Regular Expression support   
[X] PDF                    PDFlib support (implies GD)     
[X] PDO                    PHP Data Objects Interface (PDO)
[ ] PDO_SQLITE             PDO sqlite driver  
[X] PDO_MYSQL              PDO mysql driver  
[ ] PGSQL                  PostgreSQL database support     
[X] POSIX                  POSIX-like functions 
[ ] PSPELL                 pspell support       
[ ] READLINE               readline support (CLI only)     
[ ] RECODE                 recode support       
[X] SESSION                session support      
[ ] SHMOP                  shmop support        
[X] SIMPLEXML              simplexml support          
[ ] SNMP                   SNMP support         
[ ] SOAP                   SOAP support         
[ ] SOCKETS                sockets support      
[X] SPL                    Standard PHP Library 
[ ] SQLITE                 sqlite support       
[ ] SYBASE_CT              Sybase database support         
[ ] SYSVMSG                System V message support        
[ ] SYSVSEM                System V semaphore support      
[ ] SYSVSHM                System V shared memory support  
[ ] TIDY                   TIDY support         
[X] TOKENIZER              tokenizer support    
[ ] WDDX                   WDDX support (implies XML)      
[X] XML                    XML support          
[X] XMLREADER              XMLReader support    
[ ] XMLRPC                 XMLRPC-EPI support        
[X] XMLWRITER              XMLWriter support    
[ ] XSL                    XSL support (Implies DOM)       
[ ] YAZ                    YAZ support (ANSI/NISO Z39.50)  
[X] ZIP                    ZIP support          
[X] ZLIB                   ZLIB support

Execute o comando de compilação e instalação do PHP e PHP Extensions:

# make install clean

Marque as opções apropriadas para sua necessidade no php52-pcre 5.2.14_1:
[X] BUNDLED_PCRE           Select if you use apache 2.0.x

Marque as opções apropriadas para sua necessidade no php52-gd 5.2.14_1:
[X] T1LIB                  Include T1lib support                  
[X] TRUETYPE               Enable   TrueType string function      
[ ] JIS                    Enable JIS-mapped Japanese font support

Marque as opções apropriadas para sua necessidade no libxslt 1.1.26_2:
[ ] MEM_DEBUG              Enable memory debugging    
[X] CRYPTO                 Enable crypto support for exslt

Marque as opções apropriadas para sua necessidade no png 1.4.3:
[ ] APNG                   Animated PNG support

Marque as opções apropriadas para sua necessidade no php52-mbstring 5.2.14_1:
[X] REGEX                  Enable multibyte regex support

As configurações do PHP ficam guardados em “/usr/local/etc/php.ini”. É necessário criar o arquivo utilizando um dos samples existentes executando o comando:

# cp /usr/local/etc/php.ini-recommended /usr/local/etc/php.ini

Agora vamos configurar o PHP no Apache. Edite o arquivo “/usr/local/etc/apache22/httpd.conf” e adicione as linhas abaixo:

# ee /usr/local/etc/apache22/httpd.conf

# Dentro da sessão "ifmodule mime_module"
AddType application/x-httpd-php .php .php3 .phtml
AddType application/x-httpd-php-source .phps

# Dentro da sessão "ifmodule dir_module"
DirectoryIndex index.html index.htm index.php

Agora vamos alterar o arquivo “/usr/local/etc/php.ini”. Altere as opções conforme abaixo:

# ee /usr/local/etc/php.ini
short_open_tag = On

Vamos agora testar o PHP. Crie o arquivo “index.php” e adicione o seguinte conteúdo nele:

# touch /usr/local/www/apache22/data/index.php
# echo "<?php phpinfo(); ?>" > /usr/local/www/apache22/data/index.php

Feito isso vamos reiniciar o Apache com o seguinte comando:

# /usr/local/etc/rc.d/apache22 restart
# rehash

Para acessar a pagina de teste use um browser para conectar a:

# http://"ip_do_servidor"/index.php

Se tudo estiver certo será exibida as configurações do Apache e PHP.


4- Instalando alguns pacotes em PERL

Para instalar os pacotes do Perl acesse os diretórios e execute os comandos de instalação e compilação:

# cd /usr/ports/devel/p5-Config-IniFiles
# make install clean

# cd /usr/ports/graphics/p5-GD
# make install clean

Marque as opções apropriadas para sua necessidade no gd 2.0.35_7,1:
[ ] X11                    X11 support                                     
[ ] XPM                    XPM color bitmap loading support (requires X11) 
[X] FONTCONFIG             fontconfig library support (requires X11)    
[ ] ICONV                  iconv support

# cd /usr/ports/databases/p5-DBD-mysql
# make install clean

# cd /usr/ports/security/p5-Crypt-DES
# make install clean

# cd /usr/ports/security/p5-Digest-HMAC
# make install clean

# cd /usr/ports/net/p5-IO-Socket-INET6
# make install clean

# cd /usr/ports/net-mgmt/p5-Net-SNMP
# make install clean


5- Instalando o Bash

Para instalar o Bash acesse o diretório:

# cd /usr/ports/shells/bash

Execute o comando de compilação e instalação do Bash 4.1:

# make install clean


6- Instalando o SUDO

Para instalar o Sudo acesse o diretório:

# cd /usr/ports/security/sudo

Configure as opções de compilação do Sudo 1.7 com o comando:

# make config

Marque as opções apropriadas para sua necessidade no Sudo 1.7.4.4_1:
[ ] LDAP                   With LDAP support
[ ] INSULTS                With all insults
[ ] DISABLE_ROOT_SUDO      Disable root sudo
[ ] DISABLE_AUTH           Disable authentication
[ ] NOARGS_SHELL           Enable no arguments shell

Execute o comando de compilação e instalação do Sudo:

# make batch=yes install clean


7- Instalando o Net-SNMP

Para instalar o Net-SNMP acesse o diretório:

# cd /usr/ports/net-mgmt/net-snmp

Configure as opções de compilação do Net-SNMP 5 com o comando:

# make config

Marque as opções apropriadas para sua necessidade no net-snmp 5.5_4:
[ ] IPV6                   Build with IPv6 support               
[X] MFD_REWRITES           Build with 64-bit Interface Counters  
[X] PERL                   Install additional perl modules       
[X] PERL_EMBEDDED          Build embedded perl                   
[X] DUMMY                  Enable dummy values as placeholders   
[ ] TKMIB                  Install graphical MIB browser
[ ] DMALLOC                Enable dmalloc debug memory allocator

Execute o comando de compilação e instalação do Net-SNMP:

# make install clean

Depois de realizado a instalação, vamos habilitar para o Net-SNMP inicializar quando o FreeBSD for reiniciado. Editar o arquivo “rc.conf”.

# ee /etc/rc.conf

Adicionando ao final do arquivo as linhas abaixo, depois salve o arquivo e saia.

# Net-SNMP
        snmpd_enable="YES"
        snmpd_conffile="/usr/local/etc/snmp/snmpd.conf"

Agora vamos configurar o Net-SNMP:

# mkdir /usr/local/etc/snmp
# cp /usr/local/share/snmp/snmpd.conf.example /usr/local/etc/snmp/snmpd.conf
# perl -p -i -e 's/com2sec local     localhost       COMMUNITY/com2sec local     localhost       public/g' /usr/local/etc/snmp/snmpd.conf

Feito isso vamos iniciar o Net-SNMP com o seguinte comando:
# /usr/local/etc/rc.d/snmpd start
# rehash


8- Instalando o Pear

Para instalar o Pear acesse o diretório:

# cd /usr/ports/devel/pear

Execute o comando de compilação e instalação do Pear 1.9.1:

# make install clean


9- Instalando alguns pacotes do Pear

Para instalar os pacotes do Pear acesse os diretórios e execute os comandos de instalação e compilação::

# cd /usr/ports/databases/pear-DB_DataObject
# make BATCH=yes install clean

# cd /usr/ports/databases/pear-DB_DataObject_FormBuilder
# make BATCH=yes install clean

# cd /usr/ports/databases/pear-MDB2
# make install clean

# cd /usr/ports/textproc/pear-Numbers_Roman
# make install clean

# cd /usr/ports/textproc/pear-Numbers_Words
# make install clean

# cd /usr/ports/devel/pear-HTML_QuickForm2
# make install clean

# cd /usr/ports/devel/pear-HTML_QuickForm_advmultiselect
# make install clean
# /usr/local/bin/pear uninstall HTML_QuickForm_advmultiselect
# /usr/local/bin/pear install -f pear/HTML_QuickForm_advmultiselect-1.2.0

# cd /usr/ports/net/pear-Net_Traceroute
# make install clean

# cd /usr/ports/net/pear-Net_Ping
# make install clean

# cd /usr/ports/devel/pear-Validate
# make install clean

# cd /usr/ports/net/pear-XML_RPC
# make install clean

# cd /usr/ports/mail/pear-Mail
# make BATCH=yes install clean

# cd /usr/ports/mail/pear-Mail_Mime
# make install clean

# cd /usr/ports/www/pear-HTTP
# make install clean

# cd /usr/ports/net/pear-SOAP
# make BATCH="" install clean

# cd /usr/ports/devel/pear-HTML_Table
# make install clean

# cd /usr/ports/security/pear-Auth_SASL
# make BATCH=yes install clean

# cd /usr/ports/graphics/pear-Image_Canvas
# make install clean

# cd /usr/ports/graphics/pear-Image_Graph
# make BATCH=yes install clean

# cd /usr/ports/graphics/pear-Image_GraphViz
# make BATCH=yes install clean

# cd /usr/ports/net/pear-Net_SMTP
# make BATCH=yes install clean


10- Instalando o RRDTOOL

Para instalar o RRDTOOL acesse o diretório:

# cd /usr/ports/databases/rrdtool

Execute o comando de compilação e instalação do RRDTOOL 1.4.4:

# make BATCH=yes install clean



11- Instalando o Nagios

Para instalar o Nagios acesse o diretório:

# cd /usr/ports/net-mgmt/nagios/

Configure as opções de compilação do Nagios 3.2.3 com o comando:

# make config

Marque as opções apropriadas para sua necessidade no Nagios 3.2.2_1:
[X] EMBEDDED_PERL           Enable embedded Perl [requires Perl 5.8.0+]
[X] NANOSLEEP               Use nanosleep in event timing               
[X] EVENT_BROKER            Enable event broker functionality          
[ ] UNHANDLED_HACK          Display passive checks in unhandled queries

Execute o comando de compilação e instalação do Nagios:

# make install clean

Marque as opções apropriadas para sua necessidade no nagios-plugins 1.4.15_1,1:
[ ] QSTAT                   Game server query support (check_game)            
[X] FPING                   Support for non-flooding fast ping (check_fping)  
[X] NETSNMP                 SNMP support (check_snmp)                         
[ ] RADIUS                  Radius support (check_radius)                     
[X] MYSQL                   MySQL support (check_mysql)                       
[ ] PGSQL                   PostgreSQL support (check_pgsql)                  
[ ] LDAP                    OpenLDAP support (check_ldap)                     
[ ] IPV6                    IPv6 support                                      
[ ] JAIL                    Compilation within jail(8) (see Makefile) 
[ ] DMALLOC                 Enable dmalloc debug memory allocator

Marque as opções apropriadas:

# pw: unknown group `nagios'
# You need a "nagios" group.
# Would you like me to create it [YES]? Yes
# Done.
# pw: no such user `nagios'
#You need a "nagios" user.
# Would you like me to create it [YES]? Yes

Depois de realizado a instalação, vamos habilitar para o Nagios inicializar quando o FreeBSD for reiniciado. Editar o arquivo “rc.conf”.

# ee /etc/rc.conf

Adicionando ao final do arquivo as linhas abaixo, depois salve o arquivo e saia.
# Nagios
        nagios_enable="YES"

Agora vamos configurar o “http.conf” do Apache:

# ee /usr/local/etc/apache22/httpd.conf

ScriptAlias /nagios/cgi-bin /usr/local/www/nagios/cgi-bin
  <directory "/usr/local/www/nagios/cgi-bin">
  AllowOverride AuthConfig
  Options ExecCGI
  Order allow,deny
  Allow from all
</Directory>

Alias /nagios /usr/local/www/nagios
  <directory "/usr/local/www/nagios">
  Options None
  AllowOverride AuthConfig
  Order allow,deny
  Allow from all
</Directory>


Feito isso vamos reiniciar o Apache com o seguinte comando:

# /usr/local/etc/rc.d/apache22 restart

Vamos agora testar o Nagios. Use um browser para conectar a:

# http://"ip_do_servidor"/nagios

Se tudo estiver certo será mostrado à tela inicial do Nagios.



12- Configurando o Nagios

Primeiramente vamos a pasta que contem os arquivos de configuração do Nagios:

# cd /usr/local/etc/nagios/

Feito isso vamos criar um backup dos arquivos samples de configuração:

# mkdir samples
# mv *.cfg-sample samples

Agora vamos criar os arquivos de configuração:

# cp samples/cgi.cfg-sample cgi.cfg
# cp samples/nagios.cfg-sample nagios.cfg
# cp samples/resource.cfg-sample resource.cfg

Depois faça o mesmo para os objetos:

# cd objects
# mkdir samples
# mv *.cfg-sample samples

Agora vamos criar os arquivos de configuração:

# cp samples/commands.cfg-sample commands.cfg
# cp samples/contacts.cfg-sample contacts.cfg
# cp samples/localhost.cfg-sample localhost.cfg
# cp samples/printer.cfg-sample printer.cfg
# cp samples/switch.cfg-sample switch.cfg
# cp samples/templates.cfg-sample templates.cfg
# cp samples/timeperiods.cfg-sample timeperiods.cfg

Feito isso vamos iniciar o Nagios com o seguinte comando:

# /usr/local/etc/rc.d/nagios start



13- Instalando o pacote de figuras do Nagios

Para instalar as figuras do Nagios acesse o diretório:

# cd /usr/ports/misc/nagios-base-logos

Execute o comando de compilação e instalação do nagios-base-logos-1.0:

# make install clean



14- Instalando o NDO-Utils

Para instalar as figuras do NDO-Utils acesse o diretório:

# cd /usr/ports/net-mgmt/ndoutils/

Configure as opções de compilação do NDO-Utils com o comando:

# make config

Marque as opções apropriadas para sua necessidade no ndoutils 1.4b8_3:
[X] MYSQL                  MySQL Backend   
[ ] PGSQL                  Postgresql Backend

Execute o comando de compilação e instalação do NDO-Utils:

# make install clean





15- Instalando o Centreon

Para instalar o Centreon primeiramente vamos baixar o pacote de instalação e descompactá-lo em um diretório:

# cd /usr/ports/distfiles
# fetch http://download.centreon.com/centreon/centreon-2.1.10.tar.gz
# tar zxf centreon-2.1.10.tar.gz
# cd centreon-2.1.10

Vamos realizar algums acertos no sistema:
# perl -p -i -e 's/\/bin\/bash/\/usr\/local\/bin\/bash/g' install.sh
# perl -p -i -e 's/\/bin\/bash/\/usr\/local\/bin\/bash/g' libinstall/*
# mkdir /usr/local/etc/cron.d
# cd /usr/ports/distfiles/centreon-2.1.10/tmpl/vardistrib

Crei o arquivo abaixo com o seguinte conteúdo

# ee freebsd

# -*-Shell-script-*-
#
# This file contain reconfigured variables used in install scripts
# By default, when you use ./install.sh -f freebsd, you'll accept GPL licence.

#####################################################################
## Begin: Install modules
#####################################################################
## What do you want to install ? 
## 0 = no, 1 = yes

## CentWeb: Web front Centreon for Nagios
PROCESS_CENTREON_WWW=1
## CentStorage: Log and charts archiving.
PROCESS_CENTSTORAGE=1
## CentCore: Distributed Monitoring engine.
PROCESS_CENTCORE=1
## CentPlugins: Centreon Plugins for nagios
PROCESS_CENTREON_PLUGINS=1
## CentTraps: Centreon Snmp traps process for nagios
PROCESS_CENTREON_SNMP_TRAPS=1
#####################################################################
## End: Install modules
#####################################################################


#####################################################################
## Begin: Default variables
#####################################################################
## Your default variables
## $BASE_DIR is the centreon source directory
LOG_DIR="$BASE_DIR/log"
LOG_FILE="$LOG_DIR/install_centreon.log"

## Don't change values above unless you perfectly understand 
## what you are doing.
## Centreon temporary directory to work
TMP_DIR="/tmp/centreon-setup"
## default snmp config directory
SNMP_ETC="/usr/local/etc/snmp/"
## a list of pear modules require by Centreon
PEAR_MODULES_LIST="pear.lst"
#####################################################################
## End: Default variables
#####################################################################


#####################################################################
## Begin: Centreon preferences
#####################################################################
## Above variables are necessary to run a silent install
## Where you want to install Centreon (Centreon root directory)
INSTALL_DIR_CENTREON="/usr/local/centreon"
## Centreon log files directory
CENTREON_LOG="/var/log/centreon"
## Centreon config files
CENTREON_ETC="/usr/local/etc/centreon"
## Centreon run dir (all .pid, .run, .lock)
CENTREON_RUNDIR="/var/run/centreon"
## Centreon generation config directory
##  filesGeneration and filesUpload
CENTREON_GENDIR="/var/cache/centreon"
## CentStorage RRDs directory (where .rrd files go)
CENTSTORAGE_RRD="/var/lib/centreon"
## path to centstorage binary
CENTSTORAGE_BINDIR="/usr/local/centreon/bin"
## path to centcore binary
CENTCORE_BINDIR="/usr/local/centreon/bin"
## libraries temporary files directory
CENTREON_VARLIB="/var/lib/centreon"
## Some plugins require temporary datas to process output.
## These temp datas are store in the CENTPLUGINS_TMP path.
CENTPLUGINS_TMP="/var/lib/centreon/centplugins"
## path to centpluginsTraps binaries
CENTPLUGINSTRAPS_BINDIR="/usr/local/centreon/bin"
## path for snmptt installation
SNMPTT_BINDIR="/usr/local/centreon/bin/"
## force install init script (install in init.d)
## Set to "1" to enable
CENTCORE_INSTALL_INIT=1
CENTSTORAGE_INSTALL_INIT=1
## force install run level for init script (add all link on rcX.d)
## Set to "1" to enable
CENTCORE_INSTALL_RUNLVL=1
CENTSTORAGE_INSTALL_RUNLVL=1
#####################################################################
## End: Centreon preferences
#####################################################################


#####################################################################
## Begin: Nagios preferences
#####################################################################
## Install directory
INSTALL_DIR_NAGIOS="/usr/local"
## Configuration directory
NAGIOS_ETC="/usr/local/etc/nagios/"
## Plugins directory
NAGIOS_PLUGIN="/usr/local/libexec/nagios"
## Images (logos) directory
NAGIOS_IMG="/usr/local/www/nagios/images/logos"
## The nagios binary (optional)
#NAGIOS_BINARY="/usr/local/bin/nagios"
## The nagiostats binary (optional)
#NAGIOSTATS_BINARY=""
## Logging directory
NAGIOS_VAR="/var/spool/nagios/"
## Nagios user (optional)
NAGIOS_USER="nagios"
## Nagios group (optional)
NAGIOS_GROUP="nagios"
#####################################################################
## End: Nagios preferences
#####################################################################

#####################################################################
## Begin: Apache preferences
#####################################################################
## Apache configuration directory (optional)
#DIR_APACHE="/usr/local/etc/apache20"
## Apache local specific configuration directory (optional)
#DIR_APACHE_CONF="/etc/apache/conf.d"
## Apache configuration file. Only file name. (optional)
#APACHE_CONF="apache.conf"
## Apache user (optional)
WEB_USER="www"
## Apache group (optional)
WEB_GROUP="www"
## Force apache reload (optional): set APACHE_RELOAD to 1
#APACHE_RELOAD=0
#####################################################################
## End: Apache preferences
#####################################################################

#####################################################################
## Begin: Other binary
#####################################################################
## RRDTOOL (optional)
#BIN_RRDTOOL="/usr/bin/rrdtool"
## Mail (optional)
#BIN_MAIL="/bin/mail"
## SSH (optional)
#BIN_SSH="/usr/bin/ssh"
## SCP (optional)
#BIN_SCP="/usr/bin/scp"
## PHP (optional)
#PHP_BIN="/usr/bin/php"
#PHP_BIN="/usr/bin/php"
## GREP (optional)
#GREP=""
## CAT (optional)
#CAT=""
## SED (optional)
GSED="/usr/local/bin/gsed"
## CHMOD (optional)
#CHMOD=""
## CHOWN (optional)
#CHOWN
#####################################################################
## End: Other binary
#####################################################################


#####################################################################
## Begin: Others
#####################################################################
## Perl path for RRDs.pm file
RRD_PERL="/usr/local/lib/perl5/site_perl/5.10.1/mach/"
## Path to sudoers file (optional)
SUDO_FILE="/usr/local/etc/sudoers"
## Apache user (optional)
WEB_USER="www"
## Apache group (optional)
WEB_GROUP="www"
## init script directory (optional)
INIT_D="/usr/local/etc/rc.d"
## cron config script directory (optional)
CRON_D="/usr/local/etc/cron.d"
## Path for PEAR.php file
PEAR_PATH="/usr/local/share/pear/"
#####################################################################
## End: Others
#####################################################################

Agora vamos executar o comando de compilação e instalação do Centreon:

# cd ../..
# bash ./install.sh -f tmpl/vardistrib/freebsd

Do you want me to configure your sudo ? (WARNING)
[y/n], default to [n]:
> y

Do you want to reload your Apache ?
[y/n], default to [n]:
> n

Feito isso vamos reiniciar o Apache e o MYSQL com o seguinte comando:

# /usr/local/etc/rc.d/apache22 restart
# /usr/local/etc/rc.d/mysql-server restart

Vamos acertar uma permissão não realizada:

# chown -R www:www /usr/local/etc/centreon/

Vamos agora testar o Centreon. Use um browser para conectar a:

# http://"ip_do_servidor"/centreon


20- Configurando o Centreon

Siga as etapas a seguir para a configuração do Centreon:































Agora precisamos exportar os arquivos de configuração para que nosso NDO-Utils possa funcionar:

Acesse a guia Configuration
















Agora Nagios
















Marque todas as opções e clique em Export















Feito isso, podemos inicializar o NDO:

# ee /etc/rc.conf

Adicionando ao final do arquivo as linhas abaixo, depois salve o arquivo e saia:

# NDO2DB
        ndo2db_enable="YES"

Agora vamos iniciar o MySQL com o seguinte comando:

# /usr/local/etc/rc.d/ndo2db start

Agora, vamos iniciar os processos do Centreon:

# pw user mod nagios -s /bin/sh
# /usr/local/etc/rc.d/centcore start
# /usr/local/etc/rc.d/centstorage start

Vamos acertar um path dentro do SUDO:

# perl -p -i -e 's/\/etc\/init\.d\/nagios/\/usr\/local\/etc\/rc\.d\/nagios/g' /usr/local/etc/sudoers

Acertar a parte da CRON para o FreeBSD:

# cat /usr/local/etc/cron.d/* >> /etc/crontab

Reiniciar o CRON

# /etc/rc.d/cron restart

E agora o Nagios:

# /usr/local/etc/rc.d/nagios restart



21- Referências

www.fug.com.br
www.bsdux.com.br
http://www.fug.com.br/content/view/505/60/
http://nagios.sourceforge.net/docs/3_0/quickstart.html
http://www.nagiosbook.org/PRE-RELEASE_The_Nagios_Book-05012006.pdf
http://ws.edu.isoc.org/workshops/2008/apricot2008/netmanage/presos/nagios/
http://www.luizgustavo.pro.br/blog/2010/02/15/centreon-2-1-4-no-freebsd/
http://wiki.monitoring-fr.org/powered/centreon/start
http://en.doc.centreon.com/CentreonArchitecture
http://silverwraith.com/papers/freebsd-snmp.php
http://www.remontti.com.br/blog/archives/648
http://dev.mysql.com/doc/refman/5.5/en/freebsd.html
http://www.fug.com.br/content/view/360/77/
http://tuxtraining.com/2009/04/22/how-to-setup-a-famp-freebsd-apache-mysql-php-server
http://www.georgemendonca.com.br/middlecore-introducao-ao-desenvolvimento-de-a
 
HowtoBSD © 2010 | Designed by Trucks, in collaboration with MW3, templates para blogspot