Raspiberry Pi: como servidor HTTP e FTP

rpi_inside

Motivação

Criar um servidor de páginas simples e barato usando o Raspberry Pi B com 512Mb de RAM usando um cartão SD de 16Gb como servidor HTTP e FTP simples para uma empresa pequena.

Com custo inferior a R$ 200,00 reais no servidor com cartão SD e um link de internet com IP fixo é possível montar um pequeno servidor de páginas para sua empresa. É claro que a performance para páginas pesadas (principalmente por causa do SD) é sofrível, vou testar dentro em breve com um disco real via USB para testar a performance.

Construindo o Ambiente

Primeiro é necessário instalar o Debian Wheezy preparado para arquitetura ARM. Esta imagem pode ser baixada diretamente do site do Raspberry Pi. A imagem correta é esta:

baixe e instale copie no SD e instale no Raspberry Pi.

Pacotes Necessários

Com o seu Raspberry Pi conectado na Internet, configurar o servidor HTTP Apache2, PHP5 e FTP se torna um processo trivial, pois a base é Debian e todos os pacotes existem no repositório do Raspbian, então vamos instalar os pacotes necessários:

# apt-get install apache2 php5 proftpd ufw mysql-server

O último é um firewall muito legal de usar que facilita muito na hora de adicionar e gerenciar o firewall do seu pequeno servidor. Com os pacotes instalados, basta usar seu mais novo mini servidor.

Configurações

Não tem muito o que configurar no nosso caso, basta usar o MySQL para armazenar o banco de dados e colocar sua página no diretório /var/www que ele já estará público na Internet.

No caso do FTP é necessário modificar algumas configurações do ProFTPd que e estão localizadas em /etc/proftpd/proftpd.conf.

A única coisa interessante aqui é utilizar o UFW para ativar um firewall simples e completo para sua aplicação. No nosso caso o que queremos é acesso ao Apache2 nas portas 80 e 443, SSH na porta 22 e no FTP nas portas 20 e 21. Neste caso nosso firewall pode ser reduzido aos seguintes comandos:

# ufw allow "WWW Full"
# ufw limit "OpenSSH"
# ufw allow 20/tcp
# ufw allow 21/tcp
# ufw enable

Pronto, o mini firewall já está limitando tudo o que você precisa e vai bloquear todo o resto (detalhe, já vai ser inicializado no boot).

E é isso, primeiro teste com o Raspberry Pi realizado com sucesso!

PS: Se alguém quiser hospedar um site pessoal simples no meu Raspberry Pi para testar a performance só avisar. ;)

Até a próxima,
Brivaldo Jr

11 comments

  1. Tomas Waldow disse:

    Olá, onde conseguiu comprar ele com esse case por esse preço?

  2. workperfect disse:

    será que da pra fazer um cliente NAS pra torrent?

  3. Gostei da ideia hein. Quantos usuários simultâneos será que ele aguenta?

  4. VaGNaroK disse:

    o.O muito louco. o debian rodando no RaspiBerry PI e como servidor web. Dalhe GNU/Linux.

  5. Brivaldo gostaria de saber se tem como instalar o PFSense no raspberry PI??

  6. Olá Brivaldo. Eu fiz o mesmo teste e particularmente não gostei do desempenho do RP quando operando com MySQL (WordPress). Ele é lento para leitura e escrita… o que implica no funcionamento geral do site. Para operar páginas dinâmicas, funciona bem. Meu próximo desafio é rodar um asterisk nele, fazendo um mini-central telefônica IP. :D