terça-feira, 12 de fevereiro de 2013

Instalando o OCS Inventory

OCS Inventory é um software utilizado para gerar relatórios das máquinas. Vamos exemplificar: imagine que você tem 100 máquinas em uma rede e precisa tirar um relatório incluindo software e hardware de todas elas, como você faria isso!? Bem, existe uma forma simples, e funcional! Basta usar o OCS Inventory.

Assim, se você tirar um relatório verificando o hardware da máquina e constar uma máquina com 2GB de memória, o OCS cria um relatório com versão para impressão das informações, mas se você retirar uma memória de 1GB, restando apenas 1GB no computador, quando você retirar outro relatório, certamente irá constar lá, apenas 1GB.

Então o que precisamos instalar?

Servidor:
  • OCS Inventory Server
  • OCS Inventory Reports

Cliente:
  • OCS Inventory Agent

Instalação do OCS Inventory com pacotes .deb, utilizando dpkg

Instale as dependências:

# apt-get install build-essential

Acesse o diretório /usr/src e baixe o pacote usando o wget:

# cd /usr/src
# wget -c
http://downloads.aprendendolinux.com/programas/ocsinventory-setup.tar.gz

Descompacte o pacote e entre no diretório:

# tar -zxvf csinventory-setup.tar.gz
# csinventory-setup


Agora instale o "server", que é o primeiro módulo:

# dpkg -i ocsinventory-server_1.02~rc2-1_all.deb

Instale o segundo módulo, que é o "reports":

# dpkg -i ocsinventory-reports_1.02~rc2-1_all.deb

Agora vamos definir a senha para o usuário "admin":

# htpasswd /etc/ocsinventory/htpasswd.setup admin

Após executar o comando acima, defina a senha desejada e confirme digitando novamente.

Para testar, acesse:

http://localhost/ocsreports

Instalação do OCS Inventory utilizando apt-get

Instale as dependências e o banco MySQL:

# apt-get -y install build-essential mysql-server dbconfig-common

Instale o OCS Inventory Server e OCS Inventory Reports:

# apt-get -y install ocsinventory-server ocsinventory-reports

Certamente, você terá que fornecer uma senha que o banco de dados irá pedir, então digite uma senha e guarde-a.

Na configuração do ocsinventory-server irá aparecer algo como:

"Configurar banco de dados para ocsinventory-server com dbconfig-common?"

Escolha a opção "SIM".

Agora forneça a senha que você definiu para o acesso ao banco de dados.

Vamos definir a senha para o usuário "admin":

# htpasswd /etc/ocsinventory/htpasswd.setup admin

Após executar o comando acima, defina a senha desejada e confirme digitando-a novamente.

Para testar, acesse:

http://localhost/ocsreports

Use o usuário "admin" e a senha que você definiu.

Instalando o OCS Inventory Client

Bem, agora como estamos com o nosso servidor instalado e configurado, vamos adicionar máquinas. No cliente, instale o ocsinventory-client usando o apt-get:

# apt-get install ocsinventory-client

Agora vá no servidor, acessando com:

http://IPDOSERVIDOR/ocsreports

E use o usuário que você definiu. O padrão é "admin" e a senha nós definimos usando:

# htpasswd /etc/ocsinventory/htpasswd.setup admin

sexta-feira, 8 de fevereiro de 2013

Como bloquear um IP no Linux usando iptables


Nesta semana, um de nossos parceiros estava recebendo um flood bastante sério em seu servidor de e-mails (IMAP). Determinado endereço IP estava realizando tal ataque.
Jun 12 12:59:03 server dovecot: pop3-login: Disconnected (auth failed, 1 attempts): user=<loan>, method=PLAIN, rip=189.1.**.**, lip=93.104.**.**
Jun 12 12:59:06 server dovecot: pop3-login: Disconnected (auth failed, 1 attempts): user=<loan>, method=PLAIN, rip=189.1.**.**, lip=93.104.**.**
Analizando as mensagens de erro, descobrimos se tratar do IP 189.1.**.** . Para resolver o problema, fizemos o bloqueio do endereço IP que estava originando o ataque, usando o firewall iptables.
Nos exemplos a seguir, substitua sempre o IP 1.2.3.4 pelo IP que deseja bloquear!
Para realizar um simples bloqueio ao IP que causou o ataque:
  • iptables -I INPUT -s 1.2.3.4 -j DROP
Pronto! O IP problemático já estará bloqueado e o servidor não receberá mais nenhum dado dele.
Opções mais avançadas do iptables para realizar bloqueios:
Caso seu servidor tenha mais de uma placa de rede, você pode bloquear apenas em uma placa específica (aonde eth1 é a interface que receberá o bloqueio).
  • iptables -I INPUT -i eth1 -s 1.2.3.4 -j DROP
Como bloquear um range inteiro (subnet) de 254 IPs ? Digamos: 189.1.50.1  até 189.1.50.254 ? Troque o último bloco do IP por “0″ e adicione /24 ao final:
  • iptables -A INPUT -s 189.1.50.0/24 -j DROP
Como bloquear uma sub-rede ainda maior? Por exemplo, 189.1.1.1 até 189.1.254.254 ? Substitua os dois ultimos blocos por “0″ e agora adicione /16 ao final:
  • iptables -A INPUT -s 189.1.0.0/16 -j DROP
Como gerar um log a cada bloqueio realizado com o iptables ?
  • iptables  -A INPUT -s 189.1.50.0/24 -j LOG –log-prefix “IP BLOQUEADO:”
Como exibir todos os IPs bloqueados no sistema?
  • iptables -L -v
Como verificar se determinado IP está ou não bloqueado ?
  • iptables -L -v | grep 1.2.3.4
Como desbloquear um IP ?
  • Digite: iptables -L INPUT -n –line-numbers | grep 1.2.3.4
  • Exemplo de resultado:num   pkts bytes target     prot opt in     out     source               destination
    1        0     0 DROP       0    –  *      *       200.19.18.5        0.0.0.0/0
    2        0     0 DROP       0    –  *      *       201.19.18.100       0.0.0.0/0
    3        0     0 DROP       0    –  *      *       189.19.29.2        0.0.0.0/0
  • Supondo que queremos desbloquear o IP 201.19.18.100 , que está na linha 2:
  • iptables -D INPUT 2
Como salvar as configurações do iptables, para terem efeito após um reboot ?
  •  service iptables save
    less /etc/sysconfig/iptables