SAMSB - Snort + Apache2 + MySQL + Snorby e BarnYard2 no Debian
Tutorial para instalação do sistema de detecção de intrusão na rede Snort logando no banco de dados MySQL através do BarnYard2 e visualizando os logs e gráficos gerenciais pelo Snorby, rodando no servidor Web Apache2, tudo isso dentro do Debian.
Parte 2: Instalando o Apache2, Snorby
Instalando o Apache2
Instale o Apache e alguns requisitos:# aptitude install apache2 apache2-prefork-dev libapr1-dev libaprutil1-dev libopenssl-ruby libcurl4-openssl-dev gem
Instalando o SNORBY
Vamos instalar os requisitos para o Snorby:# aptitude install gcc g++ build-essential libssl-dev libreadline5-dev zlib1g-dev linux-headers-generic libsqlite3-dev libxslt-dev libxml2-dev imagemagick git-core libmagickwand-dev default-jre
Instale o wkhtmltopdf:
# wget http://wkhtmltopdf.googlecode.com/files/wkhtmltopdf-0.10.0_rc2-static-i386.tar.bz2
# tar xvjf wkhtmltopdf-0.10.0_rc2-static-i386.tar.bz2
# cp wkhtmltopdf-i386 /usr/sbin/wkhtmltopdf
Instalando o ruby:
# wget http://ftp.ruby-lang.org//pub/ruby/1.9/ruby-1.9.2-p0.tar.gz
# tar -xvzf ruby-1.9.2-p0.tar.gz
# cd ruby-1.9.2-p0
# ./configure
# make && make install
Vemos a versão instalada:
# ruby -v
ruby 1.9.2p0 (2010-08-18 revision 29036) [i686-linux]
Instalamos los gems:
# gem install thor i18n bundler
# gem install tzinfo builder memcache-client rack rack-test erubis mail text-format sqlite3-ruby
# gem install rack-mount --version=0.4.0
# gem install rails --version=3.0.0
Instalando Snorby:
# git clone http://github.com/Snorby/snorby.git /var/www/snorby
Editamos o arquivo de configuração do banco de dados:
# vi /var/www/snorby/config/database.yml
snorby: &snorby
adapter: mysql
username: snort
password: senha_snort_mysql
host: localhost
adapter: mysql
username: snort
password: senha_snort_mysql
host: localhost
Editamos o arquivo de configuração do Snorby:
# vi /var/www/snorby/config/snorby_config.yml
development:
domain: localhost:3000
wkhtmltopdf: /usr/sbin/wkhtmltopdf
test:
domain: localhost:3000
wkhtmltopdf: /usr/sbin/wkhtmltopdf
production:
domain: localhost:3000
wkhtmltopdf: /usr/sbin/wkhtmltopdf
domain: localhost:3000
wkhtmltopdf: /usr/sbin/wkhtmltopdf
test:
domain: localhost:3000
wkhtmltopdf: /usr/sbin/wkhtmltopdf
production:
domain: localhost:3000
wkhtmltopdf: /usr/sbin/wkhtmltopdf
Instalando o Snorby:
# cd /var/www/snorby
# bundle install
# rake snorby:setup RAILS_ENV=production
Vamos criar o acesso do usuário snort no banco de dados do Snorby:
# mysql -u root -p
Já no shell do MySQL:
mysql> GRANT all privileges ON snorby.* TO snort@localhost;
mysql> flush privileges;
mysql> QUIT
Edite o arquivo /etc/snort/barnyard2.conf e acrescente a linha:
output database: log, mysql, user=snort password=senha_snort_mysql dbname=snorby host=localhost
Gostaria somente de deixar algumas dificuldades que tive:
- Problemas com módulo dm-active_model.
Informação: dm-active somente roda na versão maior que a informada.
Solucão: gem update --system
- Problemas no rank: undefined method `symbolize_keys' for nil:NilClass
Informação: Problemas de espaço na edição dos arquivos .yml. Verifique os espaços comparando com o original.
- Problemas no rank: uninitialized constant Rake::DSL
Informação: Necessário atualizar o RANK
Solução: gem install rank
- Problema ao executar o comando: ruby script/delayed_job -e production
Erro:
DataObjects::URI.new with arguments is deprecated, use a Hash of URI components (/usr/local/lib/ruby/gems/1.9.1/gems/dm-do-adapter-1.1.0/lib/dm-do-adapter/adapter.rb:231:in `new')
ERROR: no command given
Informação: Houve alteração do comando na nova versão.
Solução: Roda comando: ruby script/delayed_job start production
Espero que tenha ajudado.
Abs,
Anderson.