terça-feira, 3 de setembro de 2013

Configurar porta de acesso SSH no CentOs 6

# Acesse o arquivo de configuração do SSH
vi /etc/ssh/sshd_config
# Descomente a linha '# Port 22' e adicione a porta que deseja liberar
Port 9022
# Reinicie o serviço
/etc/init.d/sshd restart
Para que funcione o acesso a nova porta você tem que adicionar a porta em questão (9022) na regra de Firewall
# Acesse o arquivo de configuração do Firewall
vi /etc/sysconfig/iptables
# Adicione a linha
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9022 -j ACCEPT
# Reinicie o serviço
/etc/init.d/iptables restart
Fontes acessadas em 03/09/2013
http://wiki.centos.org/HowTos/Network/SecuringSSH
http://mmaiacupofcoffee.blogspot.com.br/2012/11/como-liberar-uma-porta-pelo-iptables.html

quarta-feira, 10 de julho de 2013

RDP (Remote Desktop Protocol) Oracle VirtualBox

Para realizar uma conexão remota em uma máquina virtual do VirtualBox via RDP usando Ubuntu 12.04 faça os seguintes passos:
Na VM que desejas conectar vá em "Configurações" - "Monitor" - "Tela Remota" 
Marque a checkbox "Habilitar Servidor"
Abra o shell e digite o seguinte comando:
$ rdesktop -a 16 -N 192.168.192.168:3389
Onde 192.168.192.168 é o IP da máquina onde está sendo rodada a VM
Caso não funcionar certifique de que o pacote de extensão "Oracle_VM_VirtualBox_Extension_Pack-4.2.16-86992.vbox-extpack" esta instalado em
"Arquivo" - "Preferências" -"Extensões"
Caso não esteja instalado realizar o download aqui e adicione esta extensão e repetir o comando
$ rdesktop -a 16 -N 192.168.192.168:3389
Fontes acessada em 10/07/2013
http://www.downloadcrew.com/article/20279-virtualbox_extension_pack

terça-feira, 25 de junho de 2013

Zabbix - Monitoramento de Servidores [Instalação]

Realize o download do package Zabbix 2.0.6 em :
http://www.zabbix.com/download.php

No terminal acesse o MySQL
$ mysql -uusuario -psenha
mysql> create database zabbix;
mysql> exit
Entre no diretório do package Zabbix:
$ cd /home/desenv/zabbix-2.0.6/database/mysql
Importe os sqls:
$ mysql -uusuario -psenha zabbix < schema.sql
$ mysql -uusuario -psenha zabbix < images.sql
$ mysql -uusuario -psenha zabbix < data.sql 
Após configure a ativação dos modulos do Zabbix:
$ ./configure --enable-server --enable-agent --with-mysql 
           --enable-ipv6 --with-net-snmp --with-libcurl
E compile:
$ sudo make install
Crie um arquivo com o nome zabbix em /etc/apache2/conf.d/:
$ sudo nano /etc/apache2/conf.d/zabbix
E acrescente isso:
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value date.timezone America/Sao_Paulo
Aponte seu apache para o package do Zabbix.
home/desenv/zabbix-2.0.6/frontends/php/
Restart o apache:
$ sudo service apache2 restart
Agora siga os passos do instalação via browser ou se preferir acesse o manual em :
https://www.zabbix.com/documentation/doku.php?id=2.0/manual/installation/install

Um passo do final da instalação terás algo como :
Press the "Download configuration file" button, download
 the configuration file and save it as "/home/desenv/zabbix-2.0.6/frontends/php/conf/zabbix.conf.php"
Faça o donwload e jogue o arquivo em home/desenv/zabbix-2.0.6/frontends/php/conf/.

Depois é só se logar no sistema e pronto Zabbix instalado.

Fontes acessadas em 25/06/2013:
https://www.zabbix.com/documentation/doku.php?id=2.0/manual/installation/install
http://www.zabbix.com/download.php

segunda-feira, 17 de junho de 2013

Script Munin/FreeBSD - Monitoramento de temperatura

Verifique se o módulo de monitoramento de temperatura foi inicializado:
 # kldstat 
 Id Refs Address    Size     Name
 1   12 0xc0400000 972234   kernel
 2    1 0xc0d73000 164e8    geom_mirror.ko
 3    1 0xc0d8a000 58e0     if_vlan.ko
 4    1 0xc0d90000 36d6c    pf.ko
 5    1 0xc0dc7000 295c     coretemp.ko
 6    1 0xc0dca000 6a32c    acpi.ko
 7    1 0xc67fa000 22000    linux.ko
Caso o módulo já esteja em execução, utilize 'sysctl' para verificar a temperatura:
# sysctl -a | grep temperature

 dev.cpu.0.temperature: 68
Se o modulo 'NÃO' está carregado edit o arquivo '/boot/loader.conf' acrescentando:
 coretemp_load="YES" 
Reinicie a máquina e rode novamente o comando:
# sysctl -a | grep temperature
Para fazer o script para o Munin faça o seguinte:
Como 'root' acesse '/usr/local/etc/munin/plugins/' e crie o seguinte script:
 #!/usr/local/bin/bash
 case $1 in
  config)
    echo "graph_title CPU Temperatures";
    echo "graph_vtitle Celsius";
    echo "graph_args --base 1000 -l 0";
    echo "graph_category sensors";

    for n in $(eval echo "{0..$(expr $(sysctl -n hw.ncpu) - 1)"})
    do
     echo "core${n}.label Core ${n}";
    done

  exit 0;;
 esac

 for n in $(eval echo "{0..$(expr $(sysctl -n hw.ncpu) - 1)"})
 do
   echo -n "core${n}.value $(sysctl -n dev.cpu.${n}.temperature).0"
 done
Salve o script como por exemplo 'cpu_temp'.
Rode o seguinte comando:
 # chmod + x cpu_temp 
Para obter a temperatura execute
 # ./cpu_temp
Para obter as informações de configuração execute
 # ./cpu_temp config
O resultado com o Munin é algo como:

quarta-feira, 12 de junho de 2013

Munin - Monitoramento de temperatura para servidores Linux

Munin é uma ferramenta de monitoramento de recursos de rede que podem ajudar a analisar as tendências e recursos. A instalação padrão fornece uma grande quantidade de gráficos.

Caso não tenha os plugins do Munin instalados em sua máquina digite:

$ sudo apt-get install munin-plugins-extra
$ sudo apt-get install lm-sensors

 Como ''root'' rode:

$ sensors

Caso nenhum resultado exibido suba o modulo "coretemp"

$ modprobe coretemp

Faça um link simbólico

$ ln -s /usr/share/munin/plugins/sensors_ /etc/munin/plugins/sensors_temp

Acesse /etc/munin/plugins e rode

$ sudo ./sensors_temp

A saida é algo semelhante a :

temp1.value 40.0 temp2.value 40.0 temp3.value 39.0

Pronto terás as informações de temperatura do seu server no Munin.
Link relacionado :
http://wiki.kartbuilding.net/index.php/Munin_Statistics

quinta-feira, 16 de maio de 2013

FIND e REPLACE com SED

Sed significa "Stream EDitor" como o próprio nome diz "editor de fluxo", é um editor NÃO "convencional" pois não usa interatividade em tela com o arquivo a ser editado e é executado via linha de comando utilizando o "shell"(linux).
Utilizado para editar arquivos de extensão ".txt",".php",".html" dentre outros.

O meu problema era alterar mais de 200 arquivos em PHP trocando os links absolutos por links relativos, e a grande solução para não alterar um por um foi a utilização do SED.

Exemplo de comando utilizado:

$ find /home/user/projetos/ -type f -exec sed -i 's/ANTIGO/NOVO/g' {} \;

Você consegui alterar todos os arquivos que estão dentro do diretório "/home/user/projetos/" e que possuir a palavra "ANTIGO" por "NOVO".

Caso precisa alterar apenas um arquivo use:

$ sed -i 's/ANTIGO/NOVO/g' /home/user/projetos/arquivo.txt

Para mais opções de utilização do SED digite:

$ man sed

Fontes acessadas em 17/05/2013:
 http://www.brunolinux.com/02-The_Terminal/Find_and%20Replace_with_Sed.html
http://pt.kioskea.net/faq/8760-sed-introducao-ao-sed-part-i


quinta-feira, 17 de janeiro de 2013

The xdebug extension is not loaded. No code coverage will be generated.

Após ter instalado o framework PHPUnit para realizar os teste unitários dos códigos desenvolvidos, houve a necessidade de se ter um melhor controle ou visualização do que já havia testado e o que ainda faltava testar, onde o PHPUnit disponibiliza de dashboard interativo de visualização de seus testes.

Através do parâmetro [--coverage-html] passado para o phpunit é possível ter acesso a esse "painel" através do browser.

O comando para geração desse dashboard é:

root@Notebook: /home/desenv/site/TesteUnit$ phpunit --colors --coverage-html ./reports CadastroAdminTest

Onde meu retorno era algo como :

PHPUnit 3.7.13 by Sebastian Bergmann.

The xdebug extension is not loaded. No code coverage will be generated.

....

Time: 0 seconds, Memory: 4.75Mb

OK (4 tests, 6 assertions)

No qual não era possível gerar o dashboard.

A solução para esse problema foi encontrada no site abaixo acessado em (18/01/2013): http://blog.mac2k3.be/2010/05/upgrading-ubuntu-9-10-to-10-4-php-and-xdebug-problems/

Onde no meu caso precisou-se instalar php5-xdebug com o comando:
sudo apt-get install php5-xdebug

Adicionar a linha:
zend_extension="/usr/lib/php5/20060613/xdebug.so"
 
No arquivo :
/etc/php5/apache2/php.ini
 
Pois possui-a php-pear e
php5-dev
em uma versão mais nova. 
 
Após a adição da linha realizei o restart do servidor apache2
e rodei novamente o comando:
phpunit --colors --coverage-html ./reports CadastroAdminTest
 
E meu retorno agora é :
 
PHPUnit 3.7.13 by Sebastian Bergmann.

....

Time: 0 seconds, Memory: 4.75Mb

OK (4 tests, 6 assertions)

Generating code coverage report in HTML format ... done

Conforme o esperado.