Fail2ban

fail2ban-logo

Quem tem um (ou mais) servidor on-line e precisa de o administrar via SSH sem recurso a VPN nunca pode ficar muito descansado pois há sempre quem ande a rastrear IP em busca de servidores que aceitem SSH. E mais cedo ou mais tarde vão tentar entrar no seu… Bom,  há sempre maneira de minimizar um ataque BruteForce, de uma maneira fácil e rápida.

Fail2ban é um programa que funciona da seguinte maneira: filtra os logs do servidor em busca de logins falhados. De acordo com a configuração, ao fim de X tentativas falhadas o IP de origem fica bloqueado durante o tempo que quisermos. Parece fácil não é? Instalar e configurar ainda é mais fácil!

Esta aplicação pode ser instalada em quase todas as Distros e o método de configuração é semelhante, mas vou focar a instalação e configuração em Debian/Ubuntu.

Para instalar fazemos:
sudo apt-get install fail2ban

Para configurar fazemos:
sudo cp /etc/fail2ban/jail.conf  /etc/fail2ban/jail.local
nano /etc/fail2ban/jail.local
Aqui temos o ficheiro de configuração. Há vários campos que podem ser personalizados. Os principais são:
bantime – como o nome indica, é o tempo de bloqueio (em segundos) do IP que tentou entrar. Por defeito 600 (10 minutos)
maxretry – é o número de tentativas standard ao fim das quais o IP que tentou entrar é bloqueado. Aconselho 3

Bom, a partir deste momento, o Fail2ban está pronto a trabalhar. Mas uma coisa fantástica que este programa tem é que pode avisar-nos por email das tentativas  de BruteForce que o nosso servidor irá sofrer. Inclusive pode enviar dados pormenorizados. Como? O nosso servidor terá que de alguma maneira poder enviar email para fora. Um bom exemplo está aqui.
No ficheiro de configuração (jail.local) alteramos o campo destemail para o email de destino que pretendemos para receber os avisos.
Para recebermos os emails temos que ativar a opção, alterando o campo action = $(action_)s para action = $(action_mw)s. Para recebermos informação mais detalhada do ataque alteramos o campo action = $(action_mw)s para action = $(action_mwl)s.
Mais em baixo vamos encontrar os vários serviços pré-configurados, sendo o primeiro (e único ativo) o SSH. Podem ativar os outros mas só se tiverem a certeza do que estão a fazer!

E pronto! No fim, basta ativar o serviço:
sudo service fail2ban start (ou restart, caso já esteja ativo)

Há mais serviços que o nosso corajoso Fail2ban pode proteger,  sendo o limite a nossa imaginação. Há muita ajuda na Internet e no portal da comunidade.

Podem testar fazendo um “ataque” a partir de um ip externo à máquina. Não esqueçam que vão ficar bloqueados durante 10 minutos 😀
Boa sorte!

Clear OS

Imagem

ClearOS é o que eu chamo um “canivete suiço” do mundo open-source. Não sendo especializado, cumpre o que se propõe a fazer e cumpre bem. Seja como firewall, proxy, NAS, router, mail-server ou entre muitas outras funções, temos aqui um fiel servidor assente no robusto CentOS.

De fácil instalação e configuração, em poucos minutos temos o nosso servidor a trabalhar. Tem uma versão paga e uma versão community. Podem ver as diferenças aqui. O que nos interessa é obviamente a versão gratuita.

Vamos então para a página de downloads para descarregar a nossa ISO.  Gravamos num CD e estamos prontos para criar o nosso servidor. Também temos à disposição imagens virtuais, prontas a serem testadas. No entanto, o processo de instalação é extremamente simples como podem verificar na página da ClearFoundation.

Quando a instalação estiver concluída, o computador pode ficar colocado num canto, sem monitor ou teclado. Apenas um cabo de rede. Só precisamos de saber o IP e aceder ao nosso novo servidor pelo browser em https://IP_DO_SERVIDOR:81

Entramos com a senha de ROOT que definimos na instalação (no caso das VM, a senha de ROOT é clearos ) e podemos configurar os parametros iniciais.

As opções são muitas mas todo o processo de configuração está muito intuitivo e acima de tudo… fiável! Podemos começar por criar um servidor que vai ficar apenas na nossa rede privada (sem firewall). Configuramos o acesso à Internet e aceitamos as condições (blá blá…). Temos o nosso servidor pronto a ser usado.

Há muitos HowTos na Internet para funções que podemos delegar no nosso servidor mas penso logo num NAS, num VPN Server ou num TorrentDownloader. Plex também é uma boa opção. Para quem quiser gerir e controlar totalmente a sua rede local também podemos configurar uma Firewall. Enfim, as opções são imensas e de certeza que todos vão encontrar uma solução para o que procuram.

Durante os próximos artigos darei exemplos destes e vão ver como é fácil e rápido configurar o nosso servidor ClearOS.

Microsoft Lync

lyncConhecem o Microsoft Lync? É o “Skype” empresarial da Microsoft. Destaca-se pela integração com a AD de um domínio Microsoft e com a agenda do Outlook, entre outras vantagens. Mas tem um grande defeito ao não ter uma alternativa cliente em Linux…

Como a “malta” de Linux também é persistente é possível usar o Lync via… Pidgin! Vamos instalar? Bora pra consola 🙂

1 – Inserimos uma variável que tem a ver com SSL e o Lync 2013, num ficheiro do nosso perfil:

echo ‘NSS_SSL_CBC_RANDOM_IV=0’ >> ~/.pam_environment

Esta situação está documentada aqui e resolve um erro ao fazer login.

2 – Em seguida terminar sessão e voltar a entrar.

3 – Por fim, basta instalar o Pidgin e o plugin do Lync:

sudo apt-get install pidgin pidgin-sipe

Ao entrar no Pidgin vai aparecer um tipo de conta com o nome “Office Communicator”

Pidgin_Lync

Inserimos a informação de login e se tudo correr bem ficamos ligados ao Microsoft Lync Server da nossa empresa 🙂

 

Boa sorte!

JPerf

Quando achamos que o nosso acesso à Internet está lento e queremos saber a velocidade real nesse momento, recorremos a sites tipo Speedtest, FCCN, etc. Nas redes internas, entre computadores, as vezes há conectividade mas algo parece estar mal… um cabo defeituoso pode estragar a performance e fazer-nos perder horas a despistar um problema. Um testador de cabos indica se um cabo está com conectividade mas não quer dizer que esteja a 100% quando houver dados a passar!

IPerf é então a ferramenta a usar. Para o efeito temos que utilizar 2 computadores, um como servidor e outro como cliente. No servidor terão que desligar temporariamente a Firewall ou então abrir uma porta para este efeito (por defeito porta 5001). O programa funciona apenas em linha de comandos mas é bastante simples. Um iperf –help mostra as opções todas mas para um teste simples, no servidor executamos iperf -s e no cliente executamos iperf -c ip_do_servidor. Passado uns segundos temos o resultado:iperf1Mas o títiulo deste texto é JPerf e não IPerf.

Para Windows há uma interface gráfica para esta ferramenta, escrita em Java. Descarreguem a versão mais recente aqui e executem o ficheiro jperf.bat. Não se esqueçam que tem que ter o Java instalado. Caso tenham a versão mais recente instalada e mesmo assim dê erro de java ao arrancar com o jperf, há um pequeno truque que é copiar o ficheiro javaw.exe do diretório de instalação do Java (C:/programas/Java/…/bin/javaw.exe) para a pasta onde estamos a executar o jperf.bat. Se tudo correr bem encontramos a seguinte janela:jperf1

Como poderão constatar, o programa está muito completo e as opções são muitas mas para um teste rápido e simples fazemos o seguinte:

– no PC servidor, clicamos em cima na opção Server e em seguida no Run JPerf!. Neste momento temos o servidor à escuta na porta 5001.

– No PC cliente, à frente do Client escrevemos o IP do nosso servidor. À esquerda, podem mudar o Output Format para Mbit/s e o tempo de teste (por defeito 10seg), caso o desejem. Clicam em Run JPerf! e aguardem o fim do teste.jperf2

Vão obter um gráfico com a taxa de transferência de dados. O gráfico deverá ser mais ou menos plano. Caso haja muita variação, pode indicar problemas com a cablagem. Em redes Wifi a variação será maior. Também se o teste for feito com routers/switch no meio e houverem outros equipamentos ligados, contem com variações na medição. Mas é uma excelente ferramenta de diagnóstico e alternativa a alguns equipamentos oficiais (e caros!) para medição de transferência de dados em redes informáticas.

 

 

Raspberry SpeedTest Server

Speeeed

Quem quer um acesso à Internet com esta velocidade??? 😀

Bom, voltando ao país real… um destes dias precisei de saber qual a velocidade de um ponto A para um ponto B, via Internet. Tinha várias opções mas tratei logo de dar uso ao meu RaspberryPi e um serviço conhecido por muitos de seu nome SpeedTest. Eles tem uma aplicação “mini” para usarmos o seu serviço directamente no nosso servidor pessoal.

Com uma instalação fresca do Raspbian, adiciona-se o Apache e o PHP:
sudo apt-get install apache2 php
E seguida testa-se a ligação:
http://ip_do_raspberry
Apareceu uma página de teste? Ok, até aqui tudo bem.

Em seguida fazemos download do speedtest mini:
wget http://c.speedtest.net/mini/mini.zip

…e extraímos para a pasta pretendida:
sudo unzip -d /var/www/ mini.zip

…por fim, alteramos o index-php.html para index.html:
sudo mv /var/www/mini/index-php.html /var/www/mini/index.html

…e já está! Podemos testar assim:
http://ip_do_raspberry/mini

Se quiserem testar a partir do exterior, é só reencaminhar a porta 80 do Router para o RaspberryPi 🙂

Tudo nas nuvens

Podem-se rir à vontade com o título que eu também ri 😀

Ao longo dos anos todos vamos acumulando no computador (uns mais que os outros) as nossas fotos, vídeos e musicas. Eu falo por mim. A minha livraria pessoal de música, fotos e vídeos é imensa. E tudo começou por um computador fixo, assim como muitos de vocês. Mas depois veio o portátil e a coisa ficou mais difícil. Ou se copiava tudo e ficava a informação duplicada ou então fazia-se uma partilha local. Por fim vieram os tablets e smartphones, a Internet barata e a coisa complicou-se…uma partilha local já não chega. Nos tempos que correm, a mobilidade e acesso imediato á nossa informação estão na ordem do dia. E todos queremos chegar a ela com segurança e facilidade. Há várias soluções mas vou falar de uma que é simples de instalar e configurar e partilha a nossa musica, vídeos e fotos.

plex-logo-dark

Requisitos mínimos? Ao nível de hardware, um Raspberry 🙂 Mas não esperem grande performance. Um dual-core com 2GB de RAM é suficiente para um máximo de 3~5 utilizadores simultâneos. Quanto ao software, o Plex corre em Windows, OSX e muitas distribuições Linux. E não precisa ser Server! Um Windows 7 ou um Ubuntu Desktop servem. Também é possível usar um NAS diretamente. Podem ver as especificações mais ao pormenor aqui.

Para instalar, acedemos ao site e escolhemos o download de acordo com a nossa plataforma. O método de instalação é igual para todas. Vou exemplificar com um Windows 8. plex1Descarregamos o ficheiro e executamos:plex2No fim clicamos em Fechar:plex3Na versão gratuita deste programa só podemos ter uma conta associada ao nosso servidor mas chega para o que pretendemos. Acedemos ao nosso servidor pelo seguinte endereço:

https://127.0.0.1:32443/web

Esta ligação é encriptada mas vai aparecer um erro de certificado. Podem aceitar e continuar. Começamos então a configuração do servidor. Criamos uma conta (ou a opção de entrar com uma existente):plex6Podem escolher um nome para o vosso servidor e clicar em seguinte:

plex7Agora vamos escolher uma categoria e adicionar as pastas que essa categoria vai conter:plex8plex9Podem adicionar mais pastas, com vídeos, fotos e músicas. No fim também vai aparecer a possibilidade de adicionar canais de TV. Não é obrigatório. E assim vai ficar a página principal do PlexServer:plex11Tem bom aspeto, não tem? 😀

Vamos fazer uns pequenos ajustes. No canto superior direito clicamos nas definições:plex12

Vocês podem ajustar de acordo com as vossas preferências mas há aqui 3 ajustes que na minha opinião são fundamentais:plex13 plex14 plex15No fim, clicar em guardar e… já está!

Mas como aceder remotamente?

Bom, temos que ter o nosso servidor pronto para ser visto pelo exterior. A porta usada é a 32443 para HTTPS e 32400 para HTTP. Eu aconselho sempre o uso de HTTPS. Sendo assim temos que:

1 – Abrir a porta 32443 na firewall(caso haja) do nosso servidor. Assim, será possível aceder ao mesmo pelo endereço https://ip_do_servidor:32443/web mas só na rede interna.

2 – Activar o reencaminhamento da porta TCP 32443 no Router. Para fazer isto, cada caso é um caso e vai depender do modelo que vocês tiverem. Este site pode ajudar. Assim, o vosso servidor pode ser acedido a partir de qualquer lugar, onde quer que estejam e desde que tenham Internet.

3 – Usar um serviço de DNS dinâmico. Assim será mais fácil aceder ao servidor, mesmo que o vosso Router reinicie e obtenha um IP externo diferente.

Assim, temos o nosso servidor pronto! Fácil, não é? 🙂

E para aceder a partir de fora como cliente? Podemos aceder gratuitamente e de forma ilimitada à página WEB. Podemos ouvir música, ver fotos e ver uns bons vídeos. Obriga a ter Flash player. A Plex suporta as mais populares plataformas (Android, iOS, Windows Mobile) e tem à venda um aplicativo próprio para acedermos à nossa informação. Procurem no Market da vossa plataforma. É barato mas podemos sempre usar a plataforma WEB.

Pontos a considerar:

– Backups, backups e mais backups…

– Uma boa password para a nossa conta, no mínimo com 10 caracteres, com letras, números e caracteres especiais. Não sejam preguiçosos pois em caso de intrusão costuma pagar-se caro.

– O Plex por defeito só pede password de acesso quando estamos fora da rede local. Se não desejarem isto podem sempre alterar nas definições.

E pronto! Ficam aqui uns exemplos:plex16plex17

Windows 8 Start menu

Por razões profissionais comecei a usar o Windows 8. É um bom sucessor do Windows 7, com uma excelente performance mas aquele start menu… deixa-me muito a desejar! Ora bem, toca a procurar alternativas!!!

Há vários programas que resolvem esta questão mas um chamou-me especial atenção, por ter nascido num projeto open-source, por ser gratuito e porque a integração no Windows 8 é simplesmente perfeita. O seu nome é Classic Shell e funciona muito bem tanto no 8 como no 8.1. ClassicShellPara instalar basta aceder à página de downloads, descarregar e instalar com as opções por defeito. Podem ver mais algumas fotos na página dos autores. Tem à escolha um menu clássico, tipo Vista ou 7. Também instala uns botões adicionais (cortar, colar, etc) no explorador e no Internet explorer. Podem sempre alterar as definições clicando com o botão direito do rato em cima do botão Start Menu e escolher “definições”. Pela minha experiência pessoal, posso garantir que nunca bloqueou ou ficou lento e o meu menu (estilo Windows 7) tem um comportamento idêntico em tudo ao menu original do Win 7! O melhor é que não desativa o menu Iniciar do Windows 8. Simplesmente complementa-o!

Experimentem!

Eliminar publicidade no Skype (actualizado para versão 2016)

skype_logoPor motivos profissionais uso o Skype como ferramenta de conversação on-line e vídeo-conferência. A possibilidade de instalação nos mais diversos dispositivos aliada a uma boa qualidade de imagem faz deste programa um dos melhores do género.

4073.Abr12_IE9_7C4E00DF
Como em muitos dos programas gratuitos, somos sujeitos a anúncios chatos e promoções que não queremos. Mas é possível bloquear isso. Vamos usar um truque semelhante a um que já funcionava no MSN Messenger. Isto só se aplica a sistemas operativos Windows.
Executei este truque num Windows 10.

1 – Clicar em menu (ou tecla win) e escrever “notepad”. Clicar com o botão direito do rato em cima e escolher “Executar como administrador”.

start1

2 – Clicar em “Ficheiro” e depois “”Abrir…”. Onde está “Documentos de texto (*.txt)” clicar em cima e escolher “Todos os ficheiros (*.*)”. Abrir então o seguinte ficheiro:
C:WindowsSystem32driversetchosts

start2

3 – Acrescentar no fim do ficheiro o seguinte texto:

start3

127.0.0.1                rad.msn.com

127.0.0.1                apps.skype.com

Agora é só salvar e sair.

Ao reiniciar o Skype já não há mais publicidade chata 🙂

Eliminar publicidade no Skype

skype_logoPor motivos profissionais uso o Skype como ferramenta de conversação on-line e vídeo-conferência. A possibilidade de instalação nos mais diversos dispositivos aliada a uma boa qualidade de imagem faz deste programa um dos melhores do género.

4073.Abr12_IE9_7C4E00DFComo em muitos dos programas gratuitos, somos sujeitos a anúncios chatos e promoções que não queremos. Mas é possível bloquear isso. Vamos usar um truque que já funcionava no MSN Messenger. Isto só se aplica a sistemas operativos Windows. Executei este truque num Windows 8.1.

1 – Clicar em menu (ou tecla win) e escrever “notepad”. Clicar com o botão direito do rato em cima e escolher “Executar como administrador”.

start12 – Clicar em “Ficheiro” e depois “”Abrir…”. Onde está “Documentos de texto (*.txt)” clicar em cima e escolher “Todos os ficheiros (*.*)”. Abrir então o seguinte ficheiro:
“C:\Windows\System32\drivers\etc\hosts”

start23 – Acrescentar no fim do ficheiro o seguinte texto (que está a sombreado azul):
start34 – Agora é só salvar e sair.

5 – Abrir o Skype, ir a “Ferramentas”, “Opções” e clicar no separador “Notificações”. Clicar em “Alertas e mensagens” e desativar as duas opções que lá se encontram.

Ao reiniciar o Skype já não há mais publicidade chata 🙂

Raspberry pendrive Server

Já ninguém duvida das fantásticas possibilidades e vantagens que os Raspberry Pi trouxeram ao mundo informático. Com um baixo consumo, tamanho pequeno e uma tremenda simplicidade temos na nossa mão um poderoso “brinquedo” que tem como limite a nossa imaginação.

No entanto, sempre achei que o ponto fraco deste equipamento se encontra no armazenamento por ser um cartão SD. A probabilidade de o cartão se danificar ou ficar com dados corrompidos é elevada se abusar do overclock ou de programas com escrita em disco intensiva (como por exemplo uma base de dados). Como ultrapassar este problema? Simples, usamos um disco externo ou uma pendrive e apontamos para lá o directório que queremos.

pendriveVamos imaginar que queremos um servidor Minecraft a correr no nosso Raspi mas queremos que todo o programa corra dentro de uma Pendrive. O Minecraft vai ser instalado no directório /minecraft. A pendrive usada deverá ser formatada com o sistema EXT3. Porquê? Porque este formato é rápido, nativo de Linux e não tem o journaling do EXT4 (que tornaria o sistema mais lento).

1- Na consola, passamos para su:

sudo su

2- Criamos o directório de instalação do Minecraft:

mkdir /minecraft

3- Já com a pen inserida no Raspi, detectamos qual o caminho para a pen:

fdisk -l

raspiPen1

Como podem ver, o caminho neste caso é /dev/sda1

4- Vamos inseri-lo no ficheiro /etc/fstab:

nano /etc/fstab

RaspiPen2

É só acrescentar a ultima linha

/dev/sda1     /minecraft     /ext3     defaults,noatime,nodiratime     0     0

salvar e sair

5- Reiniciamos a máquina

reboot

6- Se tudo correu bem temos a pen montada no directório pretendido. Entramos na pasta

cd /minecraft

Em seguida basta instalar o Minecraft no directório em questão e já está! Temos a nossa aplicação a correr na pendrive!