Tutorial Debian 8 x64 com ISPConfig e NginX: ISPConfig 3

Instalaremos a última versão do painel de controle ISPConfig 3. Muitas pessoas que me procuraram nos últimos meses perguntam se é necessário um servidor com maior capacidade por causa do web panel. E a resposta é não. O ISPConfig trabalha executando scripts em segundo plano e não carrega a memória com recursos. Os serviços que usam recursos do VPS são externos ao ISPConfig porém necessários para o bom funcionamento de qualquer servidor.

O ISPConfig 3 é estável, seguro e fácil de operar. Se você optar por instalar o seu site em um servidor sem web panel saiba que terá que lidar manualmente com ataques ao servidor, contas de usuários e emails, criação e ativação de server blocks para os sites, gerenciamento dos serviços, entre outros..

*Usaremos o script de auto-instalação divulgado no HowToForge fazendo algumas adaptações e reconfigurando alguns serviços.

Instalando o Painel de Controle ISPConfig 3

* Acesse o terminal SSH como superusuário root para executar os comando de instalação e configuração.

1 Prepare o sistema e baixe o instalador

Será necessário fazer algumas modificações nas configurações do sistema antes de baixar e executar o instalador.

1a ⇒ Edite o arquivo /etc/apt/sources.list e adicione “non-free” ao final das seguintes linhas, e adicione o Backports ao final:

deb http://http.debian.net/debian jessie main non-free
deb-src http://http.debian.net/debian jessie main non-free

deb http://security.debian.org/ jessie/updates main non-free
deb-src http://security.debian.org/ jessie/updates main non-free

1b ⇒ Execute os comandos abaixo na ordem que estão apresentados:

root# apt-get update

root# apt-get -y upgrade

root# dpkg-reconfigure dash (Responda <NO> no prompt)

root# apt-get -y install ntp ntpdate

root# dpkg-reconfigure tzdata (Escolha: America/Sao Paulo)

root# apt-get -y install snmp-mibs-downloader (Instalando este pacote evitamos mensagens de log infinitas "Cannot adopt OID in" do PHP CLI no arquivo  /var/log/ispconfig/cron.log)

1c ⇒ Primeiro fix do Jailkit, instalação manual do serviço. Se não fizer este procedimento abaixo o Jailkit não será instalado no servidor mesmo após concluir a configuração do ISPConfig:

root# apt-get -y install build-essential autoconf automake libtool flex bison debhelper binutils 
root# cd /tmp
root# wget --no-check-certificate http://olivier.sessink.nl/jailkit/jailkit-2.19.tar.gz
root# tar xvfz jailkit-2.19.tar.gz
root# cd jailkit-2.19
root# ./debian/rules binary
root# cd ..
root# dpkg -i jailkit_2.19-1_*.deb; rm -rf jailkit-2.19*

*Pode-se verificar a última versão do JailKit no site do desenvolvedor no link acima.

1d ⇒ Por último baixe o instalador:

root# cd /tmp
root# wget --no-check-certificate -O installer.tgz https://github.com/servisys/ispconfig_setup/tarball/master
root# tar zxvf installer.tgz
root# cd servisys-ispconfig*
2 Execute o instalador do ISPConfig 3

Responda as perguntas na tela da maneira como apresentamos abaixo. Se você souber o que está fazendo e quiser testar outras configurações sinta-se à vontade para compartilhar suas experiências nos comentários. Essa instalação foi testada em um Debian 8.2 x64 com NginX, MySQL e Dovecot.

root# bash install.sh

* Para selecionar opções, quando requeridas, use as teclas de navegação e selecione com a <barra de espaço> em seguida tecle TAB até selecionar OK e pressione ENTER. Isso é importante principalmente quando tiver que selecionar NginX como web server.

» Is this correct? <-- y
» SQLServer: <-- MySQL
» Please specify a root password: <-- Digite uma senha admin para o MySQL
» Select webserver Type: <-- nginx (Se optar pelo NginX veja a observação no Passo 6 de Otimizando a Instalação neste link)
» Install XCache: <-- yes
» Install phpMyAdmin: <-- yes
» Select mailserver type: <-- dovecot
» You want to update Antivirus Database: <-- no
» Setup user quota: <-- Yes
» Standard ou Expert mode: <-- standard

» Install Jailkit: <-- Yes

» Select your webmail client: <-- roundcube (Foi adicionado essa opção no instalador. Para acessar o webmail veja observação ao final deste artigo)

Instalação do certificado SSL para o ISPConfig: substitua pelas suas informações
» SSL Configuration (country): <-- BR
» SSL Configuration (state): <-- Sao Paulo
» SSL Configuration (locality): <-- Sao Paulo
» SSL Configuration (organization): <-- Fator Binario
» SSL Configuration (organization unit): <-- TI
 
Aguarde...

<Tecle ENTER caso receba uma notificação sobre o dbconfig-common>

» Web Server to reconfigure automatically: <-- Não marcar nada caso esteja instalando com o NginX
Configuração do phpMyAdmin:
» Configure database for phpMyAdmin with dbconfig-common: <-- Yes
» Password of the database administrative user: <-- Senha admin do MySQL (é a mesma que digitamos acima)
» MySQL application password for phpMyAdmin: <-- Deixar em branco, uma senha aleatória será gerada para o banco

» Haverá uma tentativa de instalar o certificado Letsencrypt neste ponto do setup, se der erro não se preocupe
Instalação do ISPConfig: O script instalador do ISPConfig é automático mas parece que de vez em quando o mantenedor decide solicitar algumas destas opções abaixo. Se isso acontecer tecle ENTER nas perguntas que aparecerem. Veja alguns exemplos:
» Shall this server join an existing ISPConfig multiserver setup: <-- ENTER
» Configure Mail: <-- ENTER
» Configure FTP Server: <-- ENTER
» Configure DNS Server: <-- ENTER
» Install ISPConfig Web Interface: <-- ENTER
» MySQL server port [3306]: <-- ENTER
» Admin password [admin]: <-- *Esta será a senha admin para o painel do ISPConfig que por padrão será "admin". Se quiser pode teclar ENTER que depois acessaremos o painel para mudar a senha.

* Após a instalação se aparecer esta mensagem o ISPConfig estará pronto para uso:
"Well done ISPConfig installed and configured correctly"

** Talvez uma mensagem de aviso em vermelho apareça mostrando um possível erro na configuração do Roundcube:
You had to edit user/pass /var/lib/roundcube/plugins/ispconfig3_account/config/config.inc.php of roudcube user, as the one you inserted in ISPconfig

Pode ignorá-la caso o sistema de instalação seja o Debian 8.

  • Se durante a instalação exibir uma mensagem de erro dizendo que o php-fpm não foi encontrado execute os seguintes comandos abaixo  (uma outra maneira de verificar se o php5-fpm foi instalado é navegar até o diretório /etc/php5/fpm e ver se o php-ini está lá):
root# apt-get -y install php5-fpm php5-mysqlnd php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-memcached php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl memcached php-apc

root# sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php5/fpm/php.ini

root# sed -i "s/;date.timezone =/date.timezone=\"Europe\/Rome\"/" /etc/php5/fpm/php.ini

root# sed -i 's/;openssl.cafile=/openssl.cafile=\/etc\/ssl\/certs\/ca-certificates.crt/' /etc/php5/apache2/php.ini

root# sed -i 's/;openssl.cafile=/openssl.cafile=\/etc\/ssl\/certs\/ca-certificates.crt/' /etc/php5/fpm/php.ini
3 Acessando o painel e os serviços

Imediatamente após instalar o ISPConfig já podemos acessar a maioria dos serviços. Começaremos pelo ISPConfig que devemos alterar a senha padrão e o idioma.

* Se você está instalando o sistema no VPS com 512mb de RAM talvez não consiga acessar o painel do ISPConfig (poderá aparecer um erro que a senha não pode ser em branco), isso ocorre porque o MySQL não consegue inicializar por falta de memória RAM (ou SWAP). Então prossiga para o próximo artigo do tutorial “Otimizando a Instalação” adicione memória SWAP e desative o Clamav. Feito isso reinicie o MySQL com o comando “/etc/init.d/mysql restart” e tente acessar o painel novamente.

3a ⇒ Acesse o ISPConfig pelo endereço: https://IP_DO_SERVIDOR:8080/. Entre com as credenciais abaixo (a senha padrão do ISPConfig é admin caso você não a tenha alterado)

Usuário: admin

Senha: admin (***Na última versão do script notei que foi gerado uma senha aleatória para o admin do ISPConfig, verifique na tela do instalador, logo abaixo das linhas que mostram a instalação do painel por algo assim “Admin password [5s4a0a7b]”. Esta é a senha.)

Altere a senha e o idioma clicando em:

ISPConfig → Extras → Senha e Idioma (Tools → Password and Language)

3b ⇒ Acesse o phpMyAdmin pelo endereço: http://IP_DO_SERVIDOR:8081/phpmyadmin

O usuário e senha são os mesmo do administrador do MySQL. Usuário: root e a senha que foi digitada na instalação. Para aprender como alterá-las acesse este link.

3c ⇒ Acesse o Roundcube ou Squirrelmail pelo endereço: https://IP_DO_SERVIDOR/webmail

* Note que é uma boa prática acessar o servidor e os serviços nesta fase de instalação e configuração pelo número IP, pois somente faremos a mudança de DNS após tudo estar configurado evitando a interrupção de um domínio em produção.

Índice do Tutorial:

©2014-2018 Fator Binário - Todos os direitos reservados

Fazer login com suas credenciais

ou    

Esqueceu sua senha?

Create Account