Configurando o RoundCube como Webmail no VPS

Aprenda como configurar o RoundCube Webmail em Português BR num Virtual Private Server (VPS), habilitando a opção de alterar a senha diretamente no aplicativo.

Em nosso tutorial Linux Debian 7 + ISPConfig instalamos vários serviços e aplicativos para fazer o servidor rodar de forma estável e com segurança, incluindo um Servidor de Email. Porém instalamos por padrão o Squirrelmail, que é um dos aplicativos para webmail mais antigos do Linux, mas que deixa a desejar em alguns aspectos, principalmente na aparência.

Com a ajuda do Marcílio Quintino do site Sovina Online fizemos alguns testes e adaptamos um tutorial de como instalar e configurar o RoundCube usando o NginX como servidor web. *A instalação faz parte do tutorial Debian 7 e ISPConfig 3, que são requisitos básicos.

Instalando e Configurando o RoundCube WebMail:

Antes de baixar e instalar os pacotes do RoundCube vamos criar um usuário remoto para a API dele no ISPConfig, assim os usuários das caixas de email poderão alterar suas senhas pela ferramenta. *Opcional: Aprenda como limitar um cliente somente ao módulo Email no ISPConfig acessando este link.

1 Criando um usuário remoto no ISPConfig:

Acesse o menu do ISPConfig e clique nas opções:

Sistema → User Management → Usuários Remotos → Adicionar Novo Usuário

Em nome de usuário digite roundcube e em seguida digite uma senha forte (ou gere uma clicando em generate password)

Na lista de opções marque as seguintes (escrevi a ordem em que aparecem entre parênteses):

» Server functions (1)
» Funções de Cliente (3)
» Funções de usuário de correio (8)
» Funções de aliases de correio (9)
» Funções de spamfilter de usuário de correio (16)
» Funções de política de spamfilter de correio (17)
» Funções de fetchmail (18)
» Mail spamfilter whitelist functions (19)
» Mail spamfilter blacklist functions (20)
» Funções de filtro de correio de usuário (21)

Clique em Salvar.

2 Instalando o RoundCube:

Acesse o terminal SSH como superusuário e digite o seguinte comando:

apt-get install roundcube roundcube-plugins roundcube-plugins-extra

* Na pergunta se deseja continuar tecle ENTER

Aparecerá algumas telas, responda conforme abaixo:

» Configure database for roundcube with dbconfig-common?: <-- <Yes>

» Database type to be used by roundcube: <-- mysql (deixe mysql selecionado e tecle TAB para selecionar o botão <OK>, em seguida tecle ENTER)

» Password of the database's administrative user: digite_a_senha_root_do_MySQL (configuramos essa senha quando instalamos o MySQL no tutorial de ISPConfig)

» MySQL application password for roundcube: deixe_em_branco (selecione <OK> com a tecla TAB. Irá gerar uma senha automaticamente)

* Aguarde finalizar a instalação

3 Configure um bloco de diretiva no NginX para acessar o RoundCube por link amigável:

No ISPConfig acesse o menu “Sites” / “Selecione o site que desejar na lista” / “Clique na aba Opções“. Na caixa de diretivas NginX cole o seguinte bloco de código (após colar o código clique em Salvar):

client_max_body_size 100M;

location /roundcube {
    root /var/lib/;
    index index.php index.html index.htm;
    location ~ (.+\.php)$ {
        try_files $uri =404;
        include /etc/nginx/fastcgi_params;
        #fastcgi_pass 127.0.0.1:9000;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_intercept_errors on;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_buffer_size 128k;
        fastcgi_buffers 256 4k;
        fastcgi_busy_buffers_size 256k;
        fastcgi_temp_file_write_size 256k;
    }
    location ~* /.svn/ {
        deny all;
    }
    location ~* /README|INSTALL|LICENSE|SQL|bin|CHANGELOG$ {
        deny all;
    }
}
location /correio {
    rewrite ^ /roundcube last;
}

* Note que deixei a palavra correio em negrito no bloco. Altere este aliás para o que você achar melhor, o seu acesso ao webmail poderá ser feito pelo endereço seu_site.com.br/correio ou seu_site.com.br/roundcube

* Se você está seguindo o tutorial de ISPConfig não conseguirá acessar o Roundcube pelo IP do servidor, siga este tutorial e veja como fazer para acessar.

4 Finalizando a configuração do RoundCube:

A Edite o arquivo /etc/roundcube/main.inc.php e altere o valor dos parâmetros para localhost conforme abaixo:

Linha 72: Altere este parâmetro ou no login do RoundCube irá solicitar o "Nome do Servidor" no formulário de login
$rcmail_config['default_host'] = 'localhost';

Linha 135: Se este parâmetro for nulo o Roundcube enviará os emails usando a função Mail() do PHP, substituindo por localhost o cabeçalho da mensagem será preenchido corretamente evitando que o seu email enviado pelo Roundcube seja marcado como SPAM 
$rcmail_config['smtp_server'] = 'localhost';

B Em seguida instale os plugins do RoundCube para ISPConfig 3 com os seguintes comandos:

> cd /tmp
> git clone https://github.com/w2c/ispconfig3_roundcube.git
> cd /tmp/ispconfig3_roundcube/
> mv ispconfig3_* /usr/share/roundcube/
> cd /usr/share/roundcube/
> mv ispconfig3_account/config/config.inc.php.dist ispconfig3_account/config/config.inc.php
> ln -s /usr/share/roundcube/ispconfig3_* /var/lib/roundcube/plugins/

* Neste tutorial usamos o comando git que será útil também para os próximos. Se você não tiver este comando na sua distribuição digite o comando abaixo para instalar:

*Somente rode o comando abaixo se você NÃO tiver o git instalado
> apt-get install git-core

C Em seguida edite o arquivo /usr/share/roundcube/ispconfig3_account/config/config.inc.php e altere os valores conforme abaixo (salvando o arquivo em seguida):

<?php
$rcmail_config['identity_limit'] = false;
$rcmail_config['remote_soap_user'] = 'roundcube';
$rcmail_config['remote_soap_pass'] = 'senha_roundcube';
$rcmail_config['soap_url'] = 'https://104.175.167.44:8080/remote/';
?>

* No código acima preste atenção aos parâmetros em negrito onde:

» roundcube = Nome do usuário que cadastramos no passo 1

» senha_roundcube = Senha que cadastramos no passo 1

» https://104.175.167.44:8080 = Este é o endereço pelo qual você acessa o ISPConfig. Substitua pelo IP do seu servidor e note que se você não configurou o ISPConfig para usar conexão SSL troque https por http

D Para finalizar a instalação edite o arquivo /etc/roundcube/main.inc.php novamente e habilite os plugins na linha 361:

$rcmail_config['plugins'] = array("jqueryui", "ispconfig3_account", "ispconfig3_autoreply", "ispconfig3_pass", "ispconfig3_spam", "ispconfig3_fetchmail", "ispconfig3_filter");

E na linha 652 do mesmo arquivo alter a skin de “default” para “classic” ou a ferramenta não irá funcionar como deveria:

$rcmail_config['skin'] = 'classic';

5 NOVO: Atualize a versão usando o repositório backports:

Link para o tutorial de atualização: https://fatorbinario.com/upgrade-do-roundcube-webmail-pelo-backports/

É isso. Se você fez tudo certo o RoundCube já pode ser acessado pelo endereço configurado no passo 3.

NOTAS ADICIONAIS:
  • Para trocar o idioma para Português BR acesse uma caixa de entrada no RoundCube e clique em “Settings” / “User Interface” e escolha Portuguese (Brasil) na lista. Altere também o fuso horário nessa tela, não deixe “automático” pois o Roundcube não detecta isso como deveria e replica muitas linhas de erros nos logs.
  • Após mudar o idioma, para trocar a senha clique em “Configurações Pessoais” / aba “Conta” / “Senha
  • Se quiser trocar a senha do Roundcube acesse:
    ISPConfig → Sistema → Usuarios Remotos

*Mas terá que alterar também na configuração do RoundCube em:
/usr/share/roundcube/ispconfig3_account/config/config.inc.php

Gestão em infraestrutura de Servidores Cloud VPS e Dedicados. Planos mensais acessíveis e consultoria diferenciada para agências de marketing.
Envie um email para [email protected] e solicite uma análise gratuita!

  • Por favor use a Comunidade para discussões sobre este artigo. Muito obrigado.

    Link: https://fatorbinario.com/comunidade/topico/usando-o-roundcube-como-webmail-no-servidor/

  • Eduardo

    Depois de feito todos os passos quando entro no /roundcube ele pede login e senha qual é este?

  • Todo email precisa de nome de usuário e senha. Cadastrados no painel do ISPConfig.

    Por onde você adicionou suas caixas de correio?

  • Pingback: Linux | lindbergsales()

  • Leandro Luiz Costa

    já configurei criei um email porem não consigo receber email e os que envio não chega no destinatário, sabo como resolver?

  • O recebimento dos emails está ligado diretamente à entrada MX da tabela DNS do dominio. Se estiver certo lá apontando para o seu servidor então você fez algo de errado na instalação.

    Ao invés de seguir este tutorial porque você não segue o Debian 8 com ISPConfig? Com ele já fica tudo ok e pronto para uso. Link: https://fatorbinario.com/tutorial-debian-8-x64-com-ispconfig-e-nginx-indice/

  • Leandro Luiz Costa

    eu fiz a instalação no servidor da contabo, meu dns esta configurado para esse servidor, precisa fazer mesmo assim a entrada MX se sim aonde faz? ou precisa mais alguma configuração, obrigado pela ajuda

  • Você precisa saber onde está a sua tabela DNS, use esta ferramenta para isso:
    https://www.whatsmydns.net/#NS/

    Em seguida tem que acessar ela e verificar para onde aponta o registro MX. Ele tem que estar configurado apontando para o servidor onde receberá os emails. Se não configurar o MX não recebe emails.

  • Leandro Luiz Costa

    acessei o link e verifiquei quando deixo na opção Ns mostra tudo para o servidor da contabo, quando eu coloco MX mostra tudo um X

  • Samuel Batista

    Luis Boa noite!

    Vi um site que oferece uma interface mais bonita para o roundcube o site é http://roundcubeskins.net/ e ele oferece uma tskin gratuito chamado litecube, eu ja tinha visto essa skin antes em um servidor de hospedagem e achei bem legal.

    o que você acha disso, você teria ou conhece algum tutorial que personalize o estilo do roundcube ?

  • Para usar outra skin no Roundcube você tem que seguir a documentação deles (roundcubeskins) de como adicionar ao Roundcube. E em seguida ativá-la, para isso edite o arquivo /etc/roundcube/config.inc.php. A skin aplicada está no final desse arquivo.