O ISPConfig é uma ótima ferramenta Open Source para gerenciamento completo de um servidor de Web Hosting. Ele possui ferramentas que abrangem todos os itens indispensáveis para este tipo de serviço, como emails, web, ftp, dns, mysql, revendedores (reseller), painel administrativo para o usuário gerenciar o seu domínio, etc.. é sem dúvidas, uma ótima alternativa ao cPanel WHM.
Instale o repositório rpmforge de acordo com este guia: Adicionando o repositório rpmforge no CentOS 5.X
Pré ajustes
Desabilite o Selinux
Desabilite o firewall do CentOS
Ambos podem ser desabilitados através do menu “setup” – no item “firewall”.
Preparando o servidor e instalando as dependências:
# yum remove sendmail
# yum update
# yum install amavisd-new bzip2 clamav clamav-data clamav-server clamav-update clamd curl curl-devel cyrus-sasl-devel expect gamin-devel gcc gcc-c++ gdbm-devel getmail httpd imagemagick libtool libtool-ltdl-devel libxml2 libxml2-devel mysql-devel mysql-server ntp openldap-devel openldap-servers openssl-devel pam-devel pcre-devel perl-datetime-format-builder perl-datetime-format-http perl-dbd-mysql perl-libwww-perl php php-bcmath php-common php-devel php-eaccelerator php-gd php-imap php-ldap php-magickwand php-magpierss php-mapserver php-mbstring php-mcrypt php-mhash php-mssql phpmyadmin php-mysql php-odbc php-pear php-shout php-snmp php-soap php-tidy php-xml php-xmlrpc pkgconfig postfix postgresql-devel pure-ftpd quota redhat-rpm-config rpm-build spamassassin squirrelmail subversion unrar unzip webalizer zlib-devel -y
Para facilitar a sua vida, reuni a instalação de todos os pacotes necessários em apenas um “yum install”, assim você pode ir tomar um café e fumar um cigarro tranquilamente enquanto o yum trabalha
Instalando serviços que não estão disponíveis nos repositórios:
# cd /usr/src
mydns:
# wget http://mydns.bboy.net/download/mydns-mysql-1.1.0-1.i386.rpm
# rpm -ivh mydns-mysql-1.1.0-1.i386.rpm
vlogger:
# wget http://n0rp.chemlab.org/vlogger/vlogger-1.3.tar.gz
# tar xvfz vlogger-1.3.tar.gz
# mv vlogger-1.3/vlogger /usr/sbin/
Courier
Por uma exigência do courier-imap, este não pode ser compilado utilizando o usuário root, portanto, iremos criar um usuário apenas para criar os pacotes rpm, não esqueça de remove-lo no final.
# useradd -m -s /bin/bash rpmbuilduser
# passwd rpmbuilduser
Edite o arquivo /etc/sudoers e adicione na última linha:
rpmbuilduser ALL=(ALL) ALL
Faça o download dos pacotes do courier:
# wget http://sourceforge.net/projects/courier/files/courier-authlib/courier-authlib-0.62.4.tar.bz2
# wget http://sourceforge.net/projects/courier/files/courier-imap/courier-imap-4.5.1.tar.bz2
# wget http://prdownloads.sourceforge.net/courier/maildrop-2.0.4.tar.bz2
Alterne para o usuário “rpmbuilder” e prepare o ambiente para gerar os arquivos rpm
# su rpmbuilduser
# mkdir $HOME/rpm
# mkdir $HOME/rpm/SOURCES
# mkdir $HOME/rpm/SPECS
# mkdir $HOME/rpm/BUILD
# mkdir $HOME/rpm/SRPMS
# mkdir $HOME/rpm/RPMS
# mkdir $HOME/rpm/RPMS/i386
# mkdir $HOME/rpm/RPMS/x86_64
# echo "%_topdir $HOME/rpm" >> $HOME/.rpmmacros
Crie os rpms do courier-authlib e instale os pacotes requeridos pelo ISPConfig
# rpmbuild -ta courier-authlib-0.62.4.tar.bz2
# sudo rpm -ivh /home/rpmbuilduser/rpm/RPMS/i386/courier-authlib-0.62.4-1.i386.rpm
# sudo rpm -ivh /home/rpmbuilduser/rpm/RPMS/i386/courier-authlib-mysql-0.62.4-1.i386.rpm
# sudo rpm -ivh /home/rpmbuilduser/rpm/RPMS/i386/courier-authlib-devel-0.62.4-1.i386.rpm
Mesmo procedimento com o courier-imap
# rpmbuild -ta courier-imap-4.5.1.tar.bz2
# sudo rpm -ivh /home/rpmbuilduser/rpm/RPMS/i386/courier-imap-4.5.1-1.i386.rpm
E finalmente o maildrop…
# rpmbuild -ta maildrop-2.0.4.tar.bz2
# sudo rpm -ivh /home/rpmbuilduser/rpm/RPMS/i386/maildrop-2.0.4-1.i386.rpm
Opcionalmente, volte para o usuário root, copie os rpms para /usr/src e delete o usuário rpmbuilder
# exit
# mv /home/rpmbuilduser/rpm/ /usr/src/
# userdel -r rpmbuilduser
Edite novamente o arquivo /etc/sudoers e remova a linha adicionada anteriormente.
Atualize o clam
/usr/bin/freshclam
Ative o sistema de quotas
Edite o arquivo /etc/fstab e na linha referente a partição em que as quotas devem ser acionadas, adicione as opções “,usrquota,grpquota“:
Exemplo:
/dev/sda3 / ext3 defaults,usrquota,grpquota 1 1
Para ativar o sistema de quota (assumindo que você está utilizando quota na /)
# touch /aquota.user /aquota.group
# chmod 600 /aquota*
# mount -o remount /
# quotacheck -avugm
# quotaon -avug
Agora que todos os serviços estão instalados, inicialize eles e verifique se todos subiram corretamente.
# service amavisd start
# service clamd start
# service courier-authlib start
# service courier-imap restart
# service httpd start
# service mydns start
# service mysqld start
# service postfix start
# service pure-ftpd start
# service saslauthd start
Altere o runlevel dos serviços utilizados para que estes inicializem durante o boot:
# chkconfig --level 345 amavisd on
# chkconfig --level 345 clamd on
# chkconfig --level 345 courier-authlib on
# chkconfig --level 345 courier-imap on
# chkconfig --level 345 httpd on
# chkconfig --level 345 mydns on
# chkconfig --level 345 mysqld on
# chkconfig --level 345 postfix on
# chkconfig --level 345 pure-ftpd on
# chkconfig --level 345 saslauthd on
Defina uma senha de root para o banco mysql:
# mysqladmin -u root password senhacomplexa (mas é complexa mesmo viu?)
Nesta altura, todas as dependências e serviços que o ISPConfig estão instalados e rodando corretamente, então podemos inicializar a instalação.
Download do ISPConfig
# cd /usr/src
# wget http://www.ispconfig.org/downloads/ISPConfig-3.0.1.x.tar.gz
Descompacte e rode o script de instalação
# tar xvfz ISPConfig-3.0.1.x.tar.gz
# cd ispconfig3_install/install/
# php -q install.php
Quando você executar o install.php, você precisará responder algumas perguntas específicas do seu servidor, para a maioria delas, uma resposta satisfatória já vem definida.
Durante a execução deste script, todos os serviços serão configurados automagicamente de acordo com as especificações do ISPConfig. Não será necessário editar nenhum arquivo manualmente.
Após rodar o script de instalação, acesse o painel do ISPConfig em http://ipdoservidor:8080 e entre com o usuário admin senha admin (mude imediatamente esta senha)
Observação: Durante o yum inicial, você realizou a instalação do squirrel e este encontra-se disponível em http://ipdoservidor/webmail
Pronto, seu ISPConfig deve estar completamente instalado, agora basta dedicar um pouco de tempo para configurar de acordo com as suas necessidades.
Se você chegou neste post procurando uma alternativa para o cPanel e por algum motivo não gostou do ISPConfig, cito algumas outras opções que podem agradar:
Domain Technologie Control
ispCPOmega – (Fork do VHCS) – Demo – admin / admin123
RavenCore – Demo – Login: admin / ravencore
GNUPanel
Virtualmin GPL