terça-feira, 2 de junho de 2015

Transforme o seu Raspberry Pi num servidor FTP em 2 minutos




pi_001










Para implementar um servidor de FTP no Raspberry Pi  (em concreto no raspbian) vamos usar o vsftpd. O vsftpd (Very Secure FTPD) é provavelmente um dos mais rápidos e seguros servidores de FTP para sistemas Unix. Este serviço oferece um conjunto de características das quais destacamos:
  • Suporte para utilizadores virtuais
  • Suporte para IPv6
  • Suporte para virtual IPs
  • Suporte para SSL
  • Controlo para largura de banda a usar
A instalação e configuração do vsftpd é relativamente simples e hoje ensinamos como colocar este serviço a funcionar em menos de 2 minutos.
Passo 1 –  Instalação do vsftpd
sudo apt-get install vsftpd
Passo 2 – Configurações do serviço vsftpd
Por norma os ficheiros de configuração dos serviços encontram-se em /etc. No caso do vsftpd o ficheiro de configuração encontra-se em /etc/vsftpd.conf.
Vamos então editar o ficheiro de configuração e proceder às seguintes configurações:
#Desactivar o acesso “anónimo”
anonymouse_enable=NO
 
#Permitir o acesso dos utilizadores locais (criados no linux)
local_enable=YES
write_enable=YES
 
#Alterar Banner do serviço
ftpd_banner=Welcome to Pplware FTPi Service
 
#Acesso a todo o sistema de ficheiros do PI
local_root=/
E está feito. Devem gravar as configurações e sair.
Para reiniciar o serviço vsftpd basta usar o seguinte comando:
/etc/init.d/vsftpd restart
Nota: Caso necessitem de criar utilizadores para acesso remoto ao FTP, consultem o artigo Comandos Linux para Totós – Tutorial nº13 (ver aqui)
Como aceder ao FTP remotamente
Depois de instalado e configurado o serviço de  FTP, o acesso pode ser realizado via um simples browser ou através de uma aplicação cliente para FTP (ex. FileZilla, fireFTP). Neste exemplo vamos usar o FileZilla.
Para aceder ao serviço de FTP remoto basta indicar:
  • Servidor (IP/nome do Raspberry PI)
  • Nome do utilizador (ex. pi)  e respectiva Palavra-Passe

raspi

Como podem ver na imagem anterior, o acesso foi realizado com sucesso e raiz do sistema de ficheiros é apresentadas.
Esperamos que este tutorial seja útil. Não se esqueçam que podem realizar muitas mais configurações no ficheiro /etc/vsftpd.conf.

segunda-feira, 1 de junho de 2015

Instalando e configurando minidlna Media Server no Raspberry PI

sh pi@192.168.0.16

pi@raspberrypi~:

sudo apt-get update


sudo apt-get upgrade




sudo blkid
/dev/sda1: LABEL="ExternalHD" UUID="49A1-143B" TYPE="vfat"



sudo mkdir -p /media/HardDrive
sudo chmod 755 /media/HardDrive



sudo nano /etc/fstab



UUID=49A1-143B  /media/HardDrive   vfat    defaults      0     0



sudo apt-get install minidlna
sudo nano /etc/minidlna.conf


# Alterar o diretorio do ponto de montagem do HD Extern.
media_dir=A,/media/HardDrive/Media/Music
media_dir=V,/media/HardDrive/Media/Video
media_dir=P,/media/HardDrive/Media/Photos

# Change db_dir so that the database is saved across reboots
db_dir=/home/pi/.minidlna

# Uncomment log_dir for now in case we hit problems
log_dir=/var/log


friendly_name=Raspberry Pi
inotify=yes




sudo update-rc.d minidlna defaults
sudo service minidlna start


fonte:
https://www.raspberrypi.org/forums/viewtopic.php?t=16352

quarta-feira, 6 de maio de 2015

Servidor Debian 8 'Jessie' [Servidor Debian | Debian Server]

De um modo claro e fácil de seguir (é possível copiar e colar as instruções), este guia explica passo a passo, como:
  • Instalar o Linux Debian 8 Jessie;
  • Configurar o sistema (rede, software, acesso remoto e relógio do sistema);
  • Servidor interno (configuração automática de rede, partilha de ficheiros com clientes Windows, filtros antivírus e anti-spam, servidor de proxy, servidor multi-media);
  • Servidor de e-mail (servidor seguro de IMAP, interface webmail, filtragem anti-spam e anti-vírus integrada, recolha e centralização de emails);
  • Servidor Internet (http e https com php e MySQL, ftp seguro, webdav);
  • Monitoração (interface gráfica, análise e informação via email);
  • Segurança (sistemas de detecção de intrusos, firewall, auditoria de segurança e sistemas de alerta via email).

Espero que seja útil. :-) 

Abraço,
Fernando Ribeiro. 

Servidor Debian 8 'Jessie' [Servidor Debian | Debian Server]

terça-feira, 5 de maio de 2015

MRTG (mrtg.cfg)

Instalar MRTG:

# apt-get -y install mrtg mrtg-ping-probe



#Configurando MRG
WorkDir: /var/www/mrtg/
Htmldir: /var/www/mrtg/
Refresh: 300
Interval: 5
Language: portuguese
RunAsDaemon:Yes
#---------------------
# Monitorar ETH0
#---------------------
Target[eth0]: `cat /proc/net/dev |grep eth0 |awk -F':' '{print $2}' |awk '{print $1}'; cat /proc/net/dev |grep eth0 | awk -F':' '{print $2}' |awk '{print $9}'; echo -e; echo -e`
MaxBytes[eth0]: 1250000
Title[eth0]: Utilização da Interface ETH0
PageTop[eth0]: <H1>Utilizaçãointerface interna (eth0)</H1>
Options[eth0]: growright,nopercent
XSize[eth0]: 350
YSize[eth0]: 150

#---------------------
# Monitorar Memoria
#---------------------
Target[memo]: `cat /proc/meminfo |grep Active: |awk -F':' '{print $2}' |awk '{print $1}'; cat /proc/meminfo |grep MemTotal: |awk -F':' '{print $2}' |awk '{print $1}'; uptime |awk -F':' '{print $3}' |awk '{print $3}'; echo Server`
MaxBytes[memo]: 4000000
Title[memo]: Uso da Memoria
PageTop[memo]: <H1>Utilizacao da Memoria</H1>
Options[memo]: growright,gauge,nopercent
PNGTitle[memo]: Marispan
YLegend[memo]: Memoria
kMG[memo]: k,M,G,T
Legend1[memo]: KBytes Usados
Legend2[memo]: Total
Legend3[memo]: Max bytes load
Legend4[memo]: Max Users
LegendI[memo]:  Usado:
LegendO[memo]:  Total:
XSize[memo]: 350
YSize[memo]: 150
#-----------------------------
# Monitorar DNS Google Master
#-----------------------------
Target[google_ping]: `mrtg-ping-probe -p '1000*max/1000*min' -s 8.8.8.8`
Title[google_ping]: Ping Times to 8.8.8.8
PageTop[google_ping]: <H1>Ping Google</H1>
MaxBytes[google_ping]: 10000000
Options[google_ping]: growright,gauge,nopercent
YLegend[google_ping]: MilliSeconds
ShortLegend[google_ping]: ms
Factor[google_ping]: 0.001
LegendI[google_ping]: &nbsp
LegendO[google_ping]:
XSize[google_ping]: 350
YSize[google_ping]: 150
#Colours[google_ping]: RED#FF0000, WHATEVER#123456, DARKRED#800000, WHATEVER2#654321
routers.cgi*ShortDesc[google_ping]: Ping 8.8.8.8
routers.cgi*Options[google_ping]: fixunit nomax nopercentile nototal
routers.cgi*GraphStyle[google_ping]: range
routers.cgi*Icon[google_ping]: clock-sm.gif
#-----------------------------
# Monitorar DNS GigaDNS Slave
#-----------------------------
Target[gigadns_ping]: `mrtg-ping-probe -p '1000*max/1000*min' -s 189.38.95.95`
Title[gigadns_ping]: Ping Times to 189.38.95.95
PageTop[gigadns_ping]: <H1>Ping GigaDNS</H1>
MaxBytes[gigadns_ping]: 10000000
Options[gigadns_ping]: growright,gauge,nopercent
YLegend[gigadns_ping]: MilliSeconds
ShortLegend[gigadns_ping]: ms
Factor[gigadns_ping]: 0.001
LegendI[gigadns_ping]: &nbsp
LegendO[gigadns_ping]:
XSize[gigadns_ping]: 350
YSize[gigadns_ping]: 150
#Colours[gigadns_ping]: RED#FF0000, WHATEVER#123456, DARKRED#800000, WHATEVER2#654321
routers.cgi*ShortDesc[gigadns_ping]: Ping 189.38.95.95
routers.cgi*Options[gigadns_ping]: fixunit nomax nopercentile nototal
routers.cgi*GraphStyle[gigadns_ping]: range
routers.cgi*Icon[gigadns_ping]: clock-sm.gif


Depois executar

sudo env LANG=C /usr/bin/mrtg /etc/mrtg.cfg --logging /var/log/mrtg.log

segunda-feira, 4 de maio de 2015

Tutorial – Instalando Zabbix em Raspberry

Nesta semana alguns companheiros do fórum Zabbix-Brasil começaram um tópico a respeito de monitoração usando raspberry e zabbix proxy.

Visando auxiliar a todos publico aqui o meu passo a passo para instalação do zabbix-proxy em um RaspberryPI.
A distribuição de linux escolhida foi o Debian disponível na página oficial do fornecedor do hardware (clique aqui).
Este tutorial começa após a instalação normal dele, então se precisas de informações sobre como instalar o sistema operacional do raspberry consulte a na página de download existem informações a respeito de como criar a imagem, pois não iremos repetir tais informações para não fugir ao tema.
O primeiro passo, no raspberry ou em qualquer instalação de servidor ao meu ver, é garantir que todos os pacotes básicos estejam devidamente atualizados.
?
1
2
apt-get update;
apt-get upgrade;
Na sequência vamos instalar os pacotes básicos para possibilitar a compilação e a gerência do dispositivo. Enquanto o comando abaixo estiver sendo executado aproveite para buscar um café ou ler outros artigos aqui do blog pois devido às características do hardware o comando abaixo irá gastar facilmente uns 10 minutos.
?
1
apt-get -y install build-essential snmp libiksemel-dev libcurl4-gnutls-dev vim libssh2-1-dev libssh2-1 libopenipmi-dev libsnmp-dev wget curl fping snmp-mibs-downloader libldap2-dev libldap2-dev iotop ntp libsqlite3-dev sqlite3
Crie o usuário do Zabbix.
?
1
useradd zabbix -s /bin/false
Agora vamos efetuar o download do source do Zabbix (sim… sempre gosto de instalar a partir dos sources, existem repositórios mas prefiro os sources… velha guarda… ;) ) e descompactar os arquivos.
?
1
2
3
4
5
6
7
8
mkdir /install
cd /install
VERSAO="2.0.6"
rm *.tgz
wget http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/$VERSAO/zabbix-$VERSAO.tar.gz?r=http%3A%2F%2Fwww.zabbix.com%2Fdownload.php&ts=1346344892&use_mirror=ufpr -O zabbix.tgz;
mv *.php zabbix.tgz
tar -xzvf zabbix.tgz
cd zabbix-$VERSAO
Dependendo de quando você estiver vendo este artigo poderá já existir nova versão do Zabbix disponível então altere o conteúdo da variável VERSAO para refletir a versão que você desejar.
Compile e instale o Zabbix.
?
1
2
./configure --enable-proxy --enable-agent --with-sqlite3 --with-net-snmp  --with-libcurl --with-openipmi
make install
O Zabbix-Proxy irá rodar com SQLite, por qual motivo ? Ele é leve e tem baixíssimo custo de IO e o seu raspberry tem um cartão SD que irá rapidamente falhar se você usar algum outro banco com mais recursos e maior consumo de IO. Crie agora o banco de dados e altere o permissionamento para que o usuário Zabbix tenha controle dos arquivos:
?
1
2
3
4
5
6
cd database/sqlite3
mkdir /var/lib/sqlite/
sqlite3 /var/lib/sqlite/zabbix.db < schema.sql;
sqlite3 /var/lib/sqlite/zabbix.db < images.sql;
sqlite3 /var/lib/sqlite/zabbix.db < data.sql;
chown -R zabbix:zabbix /var/lib/sqlite/
Neste momento temos os binários do Zabbix e a base de dados criados. Vamos configurar o proxy.
?
1
vi /usr/local/etc/zabbix_proxy.conf
Garanta que o arquivo de configuração possua as configurações abaixo. Trocando apenas <IP_SERVIDOR_ZABBIX> pelo respectivo IP.
?
1
2
3
4
5
ProxyMode=1
Server=<IP_SERVIDOR_ZABBIX>
DBName=/var/lib/sqlite/zabbix.db
DBUser=zabbix
ConfigFrequency=120
Agora precisamos copiar e configurar os arquivos de inicialização do Zabbix. Algumas linhas especiais deverão ser adicionadas no início dos scripts de inicialização para adequa-los ao padrão do raspberry.
?
1
2
cp -v misc/init.d/debian/zabbix-* /etc/init.d/
mv /etc/init.d/zabbix-server /etc/init.d/zabbix-proxy
Edite o arquivo /etc/init.d/zabbix-proxy e adicione as linhas abaixo a partir na linha de número 6.
?
1
2
3
4
5
6
7
8
9
### BEGIN INIT INFO
# Provides:          zabbix_proxy
# Required-Start:    $all
# Required-Stop:    
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Zabbix proxy
# Description:       Zabbix proxy daemon
### END INIT INFO
O mesmo procedimento deverá ser executado contra o arquivo /etc/init.d/zabbix-agent.
?
1
2
3
4
5
6
7
8
9
### BEGIN INIT INFO
# Provides:          zabbix_agent
# Required-Start:    $all
# Required-Stop:    
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Zabbix agent
# Description:       Zabbix agent daemon
### END INIT INFO
Configure o sistema operacional para possibilitar a carga automática do Proxy e do agente.
?
1
2
update-rc.d -f zabbix-proxy defaults
update-rc.d -f zabbix-agent defaults
Pronto, seu raspberypi está apto a funcionar como um proxy do Zabbix