Differences

This shows you the differences between two versions of the page.

Link to this comparison view

instalando_e_configurando_o_ispconfig_no_debian_squeeze_pt_br [2017/09/05 12:18] (current)
Line 1: Line 1:
 +====== Instalando e Configurando o ISPConfig no Debian Squeeze ​ ======
  
 +
 +O ISPConfig é um utilitário de administração via web que oferece a possibilidade de administrar o Apache, Bind, Proftpd, MySQL, Postfix e outros serviços através de uma interface centralizada. Ele se propõe a ser uma ferramenta completa para gerenciamento de servidores de shared-hosting similar ao cPanel, mas com a vantagem de ser aberto (disponibilizado dentro da licença BSD) e gratuito, sem limitações com relação a modificações ou mesmo ao uso para fins comerciais.
 +
 +Com alguns servidores dedicados e o ISPConfig, você pode muito bem abrir sua própria empresa de hospedagem. Ele oferece interfaces de administração separadas para administradores(acesso completo), revendedores (que podem criar novas contas, sem alterar as configurações administrativas),​ webmasters (que podem criar contas de e-mail, ter acesso às estatísticas de acesso e assim por diante) e usuários finais, que tem acesso apenas às suas contas de email.
 +
 +A maior vantagem do ISPConfig é que ele trabalha diretamente com os daemons referentes a cada serviço, o que permite que ele trabalhe em qualquer distribuição que inclua versões suportadas dos serviços. Isso permite que você o utilize sobre o Debian, CentOS, Ubuntu, ou outra distribuição de sua escolha.
 +
 +Prepare o seu sistema com o seguinte script [[https://​github.com/​douglasqsantos/​easy-debian|Easy-Debian]] para que não falte nenhum pacote ou configuração.
 +
 +O que vou utilizar:
 +  * Servidor Debian
 +  * IP: 192.168.1.31/​24
 +  * Hostname: isp.douglasqsantos.com.br
 +
 +Vamos fazer um update dos repositórios e vamos fazer um upgrade do sistema
 +<sxh bash>
 +aptitude update && aptitude dist-upgrade -y
 +</​sxh>​
 +
 +Agora vamos instalar os pacotes para o acesso ao servidor via ssh
 +<sxh bash>
 +aptitude install ssh openssh-server -y
 +</​sxh>​
 +
 +Agora vamos acertar o /etc/hosts
 +<sxh bash>
 +vim /etc/hosts
 +127.0.0.1 ​      ​localhost
 +192.168.1.31 ​   isp.douglasqsantos.com.br ​    isp
 +
 +# The following lines are desirable for IPv6 capable hosts
 +::1     ​ip6-localhost ip6-loopback
 +fe00::0 ip6-localnet
 +ff00::0 ip6-mcastprefix
 +ff02::1 ip6-allnodes
 +ff02::2 ip6-allrouters
 +</​sxh>​
 +
 +Agora vamos acertar o hostname da nossa máquina
 +<sxh bash>
 +vim /​etc/​hostname
 +isp.douglasqsantos.com.br
 +</​sxh>​
 +
 +Agora vamos mandar o sistema reconhecer o novo nome do servidor
 +<sxh bash>
 +/​etc/​init.d/​hostname.sh start
 +</​sxh>​
 +
 +Agora vamos testar o nome do nosso servidor
 +<sxh bash>
 +hostname -f
 +isp.douglasqsantos.com.br
 +</​sxh>​
 +
 +Agora vamos acertar o shell default do sistema, quando for questionado pelo menu selecione No
 +<sxh bash>
 +dpkg-reconfigure dash
 +</​sxh>​
 +
 +Agora vamos instalar os pacotes para o ntp que vai sincronizar o horário do nosso sistema
 +<sxh bash>
 +aptitude install ntp ntpdate -y
 +</​sxh>​
 +
 +Agora vamos instalar os serviços de email e o banco de dados
 +<sxh bash>
 +aptitude install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop\
 + ​courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl courier-maildrop getmail4 rkhunter binutils sudo gamin -y
 +</​sxh>​
 +
 +Aqui vamos ser questionados sobre a senha do root do MySQL defina ela e confirme, depois em Create directories for web-based administrator informe no, e depois vamos ser questionados sobre o ssl só confirme
 +
 +Agora vamos fazer um ajuste no arquivo de configuração do MySQL para que ele responda por todas as interfaces do nosso servidor.
 +<sxh bash>
 +sed -i '​s/​bind-address/#​bind-address/​g'​ /​etc/​mysql/​my.cnf
 +</​sxh>​
 +
 +Agora vamos reiniciar o apache
 +<sxh bash>
 +/​etc/​init.d/​mysql restart
 +</​sxh>​
 +
 +Agora vamos remover os certificados gerados na instalação do courier
 +<sxh bash>
 +cd /​etc/​courier
 +rm -f /​etc/​courier/​imapd.pem
 +rm -f /​etc/​courier/​pop3d.pem
 +</​sxh>​
 +
 +Agora vamos acertar a configuração para gerarmos os certificados novamente
 +
 +Vamos configurar o imap
 +<sxh bash>
 +vi /​etc/​courier/​imapd.cnf
 +RANDFILE = /​usr/​lib/​courier/​imapd.rand
 +
 +[ req ]
 +default_bits = 1024
 +encrypt_key = yes
 +distinguished_name = req_dn
 +x509_extensions = cert_type
 +prompt = no
 +
 +[ req_dn ]
 +C=BR
 +ST=PR
 +L=Curitiba
 +O=Courier Mail Server
 +OU=Douglas IMAP SSL key
 +CN=isp.douglasqsantos.com.br
 +emailAddress=postmaster@douglasqsantos.com.br
 +
 +[ cert_type ]
 +nsCertType = server
 +</​sxh>​
 +
 +Agora vamos configurar o pop
 +<sxh bash>
 +vi /​etc/​courier/​pop3d.cnf
 +RANDFILE = /​usr/​lib/​courier/​pop3d.rand
 +
 +[ req ]
 +default_bits = 1024
 +encrypt_key = yes
 +distinguished_name = req_dn
 +x509_extensions = cert_type
 +prompt = no
 +
 +[ req_dn ]
 +C=BR
 +ST=PR
 +L=Curitiba
 +O=Courier Mail Server
 +OU=Douglas POP3 SSL key
 +CN=isp.douglasqsantos.com.br
 +emailAddress=postmaster@douglasqsantos.com.br
 +
 +
 +[ cert_type ]
 +nsCertType = server
 +</​sxh>​
 +
 +Agora vamos gerar os certificados novamente
 +<sxh bash>
 +mkimapdcert
 +mkpop3dcert
 +</​sxh>​
 +
 +Agora vamos instalar o Amavis, SpamAssassin e o Clamav
 +<sxh bash>
 +aptitude install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges\
 + ​libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl -y
 +</​sxh>​
 +
 +Agora vamos remover o spamassasin da inicialização pois o amavis vai invocar ele internamente
 +<sxh bash>
 +/​etc/​init.d/​spamassassin stop
 +insserv -r -f spamassassin
 +</​sxh>​
 +
 +Agora vamos preparar o ambiente web, vamos dar suporte ao php, ruby, python e vamos instalar os módulos necessários para isso
 +<sxh bash>
 +aptitude install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5\
 + ​php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear\
 + ​php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libruby libapache2-mod-ruby -y
 +</​sxh>​
 +
 +Aqui vamos ser questionados sobre o phpmyadmin então selecione apache2, e depois disso selecione No.
 +
 +Agora vamos habilitar os módulos do apache
 +<sxh bash>
 +a2enmod suexec rewrite ssl actions include
 +a2enmod dav_fs dav auth_digest
 +</​sxh>​
 +
 +Agora vamos reiniciar o apache
 +<sxh bash>
 +/​etc/​init.d/​apache2 restart
 +</​sxh>​
 +
 +Agora vamos instalar o servidor ftp e o suporte a quota de sistema
 +<sxh bash>
 +aptitude install pure-ftpd-common pure-ftpd-mysql quota quotatool -y
 +</​sxh>​
 +
 +Agora vamos ajustar o pure-ftpd trabalhar em modo chroot
 +<sxh bash>
 +sed -i '​s/​VIRTUALCHROOT=false/​VIRTUALCHROOT=true/​g'​ /​etc/​default/​pure-ftpd-common
 +</​sxh>​
 +
 +Agora vamos habilitar o pure-ftpd a trabalhar com tls
 +<sxh bash>
 +echo 1 > /​etc/​pure-ftpd/​conf/​TLS
 +</​sxh>​
 +
 +Agora vamos criar o diretório que vai armazenar as chaves
 +<sxh bash>
 +mkdir -p /​etc/​ssl/​private/​
 +</​sxh>​
 +
 +Agora vamos gerar a nossa chave
 +<sxh bash>
 +openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /​etc/​ssl/​private/​pure-ftpd.pem -out /​etc/​ssl/​private/​pure-ftpd.pem
 +Generating a 2048 bit RSA private key
 +....+++
 +....................................................................................+++
 +writing new private key to '/​etc/​ssl/​private/​pure-ftpd.pem'​
 +-----
 +You are about to be asked to enter information that will be incorporated
 +into your certificate request.
 +What you are about to enter is what is called a Distinguished Name or a DN.
 +There are quite a few fields but you can leave some blank
 +For some fields there will be a default value,
 +If you enter '​.',​ the field will be left blank.
 +-----
 +Country Name (2 letter code) [AU]:BR
 +string is too long, it needs to be less than  2 bytes long
 +Country Name (2 letter code) [AU]:BR
 +State or Province Name (full name) [Some-State]:​Parana
 +Locality Name (eg, city) []:Curitiba
 +Organization Name (eg, company) [Internet Widgits Pty Ltd]:​Douglas
 +Organizational Unit Name (eg, section) []:TI
 +Common Name (eg, YOUR name) []:​isp.douglasqsantos.com.br
 +Email Address []:​douglas@douglasqsantos.com.br
 +</​sxh>​
 +
 +Agora vamos ajustar as permissões as chaves
 +<sxh bash>
 +chmod 600 /​etc/​ssl/​private/​pure-ftpd.pem
 +</​sxh>​
 +
 +Agora vamos reiniciar o pure-ftpd
 +<sxh bash>
 +/​etc/​init.d/​pure-ftpd-mysql restart
 +</​sxh>​
 +
 +Agora precisamos ativar o suporte a quota, com isso precisamos adicionar as seguintes opções usrjquota=aquota.user,​grpjquota=aquota.group,​jqfmt=vfsv0 na partição /var ou / se o var estiver na mesma partição
 +<sxh bash>
 +vim /etc/fstab
 +[...]
 +UUID=c6d7c021-c58d-4516-b59b-3f057fb886e0 /var            ext3    defaults,​usrjquota=aquota.user,​grpjquota=aquota.group,​jqfmt=vfsv0 ​       0       2
 +[...]
 +</​sxh>​
 +
 +Agora vamos mandar habilitar as quotas
 +<sxh bash>
 +mount -o remount /var
 +quotacheck -avugm
 +quotaon -avug
 +</​sxh>​
 +
 +Agora vamos mandar instalar o bind
 +<sxh bash>
 +apt-get install bind9 dnsutils -y
 +</​sxh>​
 +
 +Agora vamos instalar geradores de relatórios de acesso ​
 +<sxh bash>
 +apt-get install vlogger webalizer awstats geoip-database -y
 +</​sxh>​
 +
 +Agora vamos comentar as linhas do cron do awstat
 +<sxh bash>
 +sed -i '​s/​^/#/'​ /​etc/​cron.d/​awstats
 +</​sxh>​
 +
 +Agora vamos mandar instalar os pacotes dependência para podermos instalar o jailkit.
 +<sxh bash>
 +aptitude install build-essential autoconf automake1.9 libtool flex bison debhelper -y
 +</​sxh>​
 +
 +Agora vamos obter o jailkit
 +<sxh bash>
 +cd /tmp
 +wget http://​wiki.douglasqsantos.com.br/​Downloads/​security/​jailkit-2.13.tar.gz
 +</​sxh>​
 +
 +Agora vamos mandar desempacotar ele e vamos acessar o diretório
 +<sxh bash>
 +tar -xzvf jailkit-2.13.tar.gz
 +cd jailkit-2.13
 +</​sxh>​
 +
 +Agora vamos mandar gerar o pacote
 +<sxh bash>
 +./​debian/​rules binary
 +</​sxh>​
 +
 +Agora vamos mandar instalar o jailkit
 +<sxh bash>
 +cd ..
 +dpkg -i jailkit_2.13-1_*.deb
 +</​sxh>​
 +
 +Agora vamos mandar remover o que não precisamos mais
 +<sxh bash>
 +rm -rf jailkit-2.13*
 +</​sxh>​
 +
 +Agora vamos mandar instalar o fail2ban que é um IDS bem leve
 +<sxh bash>
 +aptitude install fail2ban -y
 +</​sxh>​
 +
 +Agora vamos gerar a configuração para o pureftp, sasl e courier
 +<sxh bash>
 +vi /​etc/​fail2ban/​jail.local
 +[pureftpd]
 +
 +enabled ​ = true
 +port     = ftp
 +filter ​  = pureftpd
 +logpath ​ = /​var/​log/​syslog
 +maxretry = 3
 +
 +
 +[sasl]
 +
 +enabled ​ = true
 +port     = smtp
 +filter ​  = sasl
 +logpath ​ = /​var/​log/​mail.log
 +maxretry = 5
 +
 +
 +[courierpop3]
 +
 +enabled ​ = true
 +port     = pop3
 +filter ​  = courierpop3
 +logpath ​ = /​var/​log/​mail.log
 +maxretry = 5
 +
 +
 +[courierpop3s]
 +
 +enabled ​ = true
 +port     = pop3s
 +filter ​  = courierpop3s
 +logpath ​ = /​var/​log/​mail.log
 +maxretry = 5
 +
 +
 +[courierimap]
 +
 +enabled ​ = true
 +port     = imap2
 +filter ​  = courierimap
 +logpath ​ = /​var/​log/​mail.log
 +maxretry = 5
 +
 +
 +[courierimaps]
 +
 +enabled ​ = true
 +port     = imaps
 +filter ​  = courierimaps
 +logpath ​ = /​var/​log/​mail.log
 +maxretry = 5
 +</​sxh>​
 +
 +Agora vamos criar o filtro para o pureftpd
 +<sxh bash>
 +vi /​etc/​fail2ban/​filter.d/​pureftpd.conf
 +[Definition]
 +failregex = .*pure-ftpd:​ \(.*@<​HOST>​\) \[WARNING\] Authentication failed for user.*
 +ignoreregex =
 +</​sxh>​
 +
 +Agora vamos gerar o filtro para o pop
 +<sxh bash>
 +vi /​etc/​fail2ban/​filter.d/​courierpop3.conf
 +# Fail2Ban configuration file
 +#
 +# $Revision: 100 $
 +#
 +
 +[Definition]
 +
 +# Option: ​ failregex
 +# Notes.: ​ regex to match the password failures messages in the logfile. The
 +#          host must be matched by a group named "​host"​. The tag "<​HOST>"​ can
 +#          be used for standard IP/hostname matching and is only an alias for
 +#          (?:::​f{4,​6}:​)?​(?​P<​host>​\S+)
 +# Values: ​ TEXT
 +#
 +failregex = pop3d: LOGIN FAILED.*ip=\[.*:<​HOST>​\]
 +
 +# Option: ​ ignoreregex
 +# Notes.: ​ regex to ignore. If this regex matches, the line is ignored.
 +# Values: ​ TEXT
 +#
 +ignoreregex =
 +</​sxh>​
 +
 +Agora vamos gerar o filtro para o pop com ssl
 +<sxh bash>
 +vi /​etc/​fail2ban/​filter.d/​courierpop3s.conf
 +# Fail2Ban configuration file
 +#
 +# $Revision: 100 $
 +#
 +
 +[Definition]
 +
 +# Option: ​ failregex
 +# Notes.: ​ regex to match the password failures messages in the logfile. The
 +#          host must be matched by a group named "​host"​. The tag "<​HOST>"​ can
 +#          be used for standard IP/hostname matching and is only an alias for
 +#          (?:::​f{4,​6}:​)?​(?​P<​host>​\S+)
 +# Values: ​ TEXT
 +#
 +failregex = pop3d-ssl: LOGIN FAILED.*ip=\[.*:<​HOST>​\]
 +
 +# Option: ​ ignoreregex
 +# Notes.: ​ regex to ignore. If this regex matches, the line is ignored.
 +# Values: ​ TEXT
 +#
 +ignoreregex =
 +</​sxh>​
 +
 +Agora vamos gerar o filtro para o imap
 +<sxh bash>
 +vi /​etc/​fail2ban/​filter.d/​courierimap.conf
 +# Fail2Ban configuration file
 +#
 +# $Revision: 100 $
 +#
 +
 +[Definition]
 +
 +# Option: ​ failregex
 +# Notes.: ​ regex to match the password failures messages in the logfile. The
 +#          host must be matched by a group named "​host"​. The tag "<​HOST>"​ can
 +#          be used for standard IP/hostname matching and is only an alias for
 +#          (?:::​f{4,​6}:​)?​(?​P<​host>​\S+)
 +# Values: ​ TEXT
 +#
 +failregex = imapd: LOGIN FAILED.*ip=\[.*:<​HOST>​\]
 +
 +# Option: ​ ignoreregex
 +# Notes.: ​ regex to ignore. If this regex matches, the line is ignored.
 +# Values: ​ TEXT
 +#
 +ignoreregex =
 +</​sxh>​
 +
 +Agora vamos gerar o filtro para o imap com ssl
 +<sxh bash>
 +vi /​etc/​fail2ban/​filter.d/​courierimaps.conf
 +# Fail2Ban configuration file
 +#
 +# $Revision: 100 $
 +#
 +
 +[Definition]
 +
 +# Option: ​ failregex
 +# Notes.: ​ regex to match the password failures messages in the logfile. The
 +#          host must be matched by a group named "​host"​. The tag "<​HOST>"​ can
 +#          be used for standard IP/hostname matching and is only an alias for
 +#          (?:::​f{4,​6}:​)?​(?​P<​host>​\S+)
 +# Values: ​ TEXT
 +#
 +failregex = imapd-ssl: LOGIN FAILED.*ip=\[.*:<​HOST>​\]
 +
 +# Option: ​ ignoreregex
 +# Notes.: ​ regex to ignore. If this regex matches, the line is ignored.
 +# Values: ​ TEXT
 +#
 +ignoreregex =
 +</​sxh>​
 +
 +Agora vamos reiniciar o fail2ban
 +<sxh bash>
 +/​etc/​init.d/​fail2ban restart
 +</​sxh>​
 +
 +Agora vamos instalar o SquirrelMail
 +<sxh bash>
 +aptitude install squirrelmail -y
 +</​sxh>​
 +
 +Agora vamos criar um link para o /var/www
 +<sxh bash>
 +ln -s /​usr/​share/​squirrelmail/​ /​var/​www/​webmail
 +</​sxh>​
 +
 +Agora vamos configurar ele
 +<sxh bash>
 +squirrelmail-configure
 +</​sxh>​
 +
 +    - Na primeira tela pressione **D**
 +    - Na segunda informe **courier**
 +    - Na próxima **enter**
 +    - Na próxima informe **S**
 +    - Na ultimá informe **Q**
 +
 +Agora vamos obter o ISPConfig
 +<sxh bash>
 +cd /tmp
 +wget -c http://​wiki.douglasqsantos.com.br/​Downloads/​misc/​ISPConfig-3-stable.tar.gz
 +</​sxh>​
 +
 +Agora vamos desempacotar o ISPConfig
 +<sxh bash>
 +tar -xzvf ISPConfig-3-stable.tar.gz
 +</​sxh>​
 +
 +Agora vamos acessar o diretório do ISPConfig
 +<sxh bash>
 +cd ispconfig3_install/​install/​
 +</​sxh>​
 +
 +Agora vamos configurar o ispconfig
 +<sxh bash>
 +php -q install.php ​
 +
 +
 +--------------------------------------------------------------------------------
 + _____ ___________ ​  ​_____ ​             __ _         ____
 +|_   ​_/ ​ ___| ___ \ /  __ \            / _(_)       /​__ ​ \
 +  | | \ `--.| |_/ / | /  \/ ___  _ __ | |_ _  __ _    _/ /
 +  | |  `--. \  __/  | |    / _ \| '_ \|  _| |/ _` |  |_ |
 + _| |_/\__/ / |     | \__/\ (_) | | | | | | | (_| | ___\ \
 + ​\___/​\____/​\_| ​     \____/​\___/​|_| |_|_| |_|\__, | \____/
 +                                              __/ |
 +                                             ​|___/ ​
 +--------------------------------------------------------------------------------
 +
 +
 +>> Initial configuration  ​
 +
 +Operating System: Debian 6.0 (Squeeze/​Sid) or compatible
 +
 +    Following will be a few questions for primary configuration so be careful.
 +    Default values are in [brackets] and can be accepted with <​ENTER>​.
 +    Tap in "​quit"​ (without the quotes) to stop the installer.
 +
 +
 +Select language (en,de) [en]: #ENTER
 +</​sxh>​
 +
 +Agora vamos configurar o núcleo do ispconfig
 +<sxh bash>
 +Installation mode (standard,​expert) [standard]: #ENTER
 +
 +Full qualified hostname (FQDN) of the server, eg server1.domain.tld ​ [isp.douglasqsantos.com.br]:​ #ENTER
 +
 +MySQL server hostname [localhost]:​ #​ENTER ​
 +
 +MySQL root username [root]: #ENTER
 +
 +MySQL root password []: #​senhadoroot
 +
 +MySQL database to create [dbispconfig]:​ #ENTER
 +
 +MySQL charset [utf8]: #ENTER
 +</​sxh>​
 +
 +Agora vamos a configuração do tls
 +<sxh bash>
 +Generating a 2048 bit RSA private key
 +...........................................................................................................................................+++
 +................+++
 +writing new private key to '​smtpd.key'​
 +-----
 +You are about to be asked to enter information that will be incorporated
 +into your certificate request.
 +What you are about to enter is what is called a Distinguished Name or a DN.
 +There are quite a few fields but you can leave some blank
 +For some fields there will be a default value,
 +If you enter '​.',​ the field will be left blank.
 +-----
 +Country Name (2 letter code) [AU]:BR
 +State or Province Name (full name) [Some-State]:​Parana
 +Locality Name (eg, city) []:Curitiba
 +Organization Name (eg, company) [Internet Widgits Pty Ltd]:​Douglas
 +Organizational Unit Name (eg, section) []:TI
 +Common Name (eg, YOUR name) []:​isp.douglasqsantos.com.br
 +Email Address []:​douglas@douglasqsantos.com.br
 +</​sxh>​
 +
 +Agora vamos definir a porta padrão do ispconfig
 +<sxh bash>
 +Configuring Jailkit
 +Configuring SASL
 +Configuring PAM
 +Configuring Courier
 +Configuring Spamassassin
 +Configuring Amavisd
 +Configuring Getmail
 +Configuring Pureftpd
 +Configuring BIND
 +Configuring Apache
 +Configuring Vlogger
 +Configuring Apps vhost
 +Configuring Bastille Firewall
 +Configuring Fail2ban
 +Installing ISPConfig
 +ISPConfig Port [8080]: #ENTER
 +</​sxh>​
 +
 +Agora vamos configurar o suporte a SSL
 +<sxh bash>
 +Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]: 
 +
 +Generating RSA private key, 4096 bit long modulus
 +.......................................++
 +.............++
 +e is 65537 (0x10001)
 +You are about to be asked to enter information that will be incorporated
 +into your certificate request.
 +What you are about to enter is what is called a Distinguished Name or a DN.
 +There are quite a few fields but you can leave some blank
 +For some fields there will be a default value,
 +If you enter '​.',​ the field will be left blank.
 +-----
 +Country Name (2 letter code) [AU]:BR
 +State or Province Name (full name) [Some-State]:​Parana
 +Locality Name (eg, city) []:Curitiba
 +Organization Name (eg, company) [Internet Widgits Pty Ltd]:​Douglas
 +Organizational Unit Name (eg, section) []:TI
 +Common Name (eg, YOUR name) []:​isp.douglasqsantos.com.br
 +Email Address []:​douglas@douglasqsantos.com.br
 +
 +Please enter the following '​extra'​ attributes
 +to be sent with your certificate request
 +A challenge password []:
 +An optional company name []:Douglas
 +writing RSA key
 +</​sxh>​
 +
 +Agora é só aguardar o termino da instalação ​
 +<sxh bash>
 +Configuring DBServer
 +Installing ISPConfig crontab
 +no crontab for getmail
 +Restarting services ...
 +Stopping MySQL database server: mysqld.
 +Starting MySQL database server: mysqld.
 +Checking for corrupt, not cleanly closed and upgrade needing tables..
 +Stopping Postfix Mail Transport Agent: postfix.
 +Starting Postfix Mail Transport Agent: postfix.
 +Stopping SASL Authentication Daemon: saslauthd.
 +Starting SASL Authentication Daemon: saslauthd.
 +Stopping amavisd: amavisd-new.
 +Starting amavisd: amavisd-new.
 +Stopping ClamAV daemon: clamd.
 +Starting ClamAV daemon: clamd .
 +Stopping Courier authentication services: authdaemond.
 +Starting Courier authentication services: authdaemond.
 +Stopping Courier IMAP server: imapd.
 +Starting Courier IMAP server: imapd.
 +Stopping Courier IMAP-SSL server: imapd-ssl.
 +Starting Courier IMAP-SSL server: imapd-ssl.
 +Stopping Courier POP3 server: pop3d.
 +Starting Courier POP3 server: pop3d.
 +Stopping Courier POP3-SSL server: pop3d-ssl.
 +Starting Courier POP3-SSL server: pop3d-ssl.
 +Restarting web server: apache2 ... waiting .
 +Restarting ftp server: Running: /​usr/​sbin/​pure-ftpd-mysql-virtualchroot -l mysql:/​etc/​pure-ftpd/​db/​mysql.conf -l pam -Y 1 -b -8 UTF-8 -O clf:/​var/​log/​pure-ftpd/​transfer.log -E -D -u 1000 -H -A -B
 +Installation completed.
 +</​sxh>​
 +
 +Agora precisamos fazer mais um ajuste o isp tem que utilizar ele mesmo como DNS
 +<sxh bash>
 +vim /​etc/​resolv.conf
 +nameserver 192.168.1.31
 +</​sxh>​
 +
 +Agora podemos acessar o painel de administração em https://​isp.douglasqsantos.com.br:​8080 ou https://​ip_servidor:​8080 o usuário é **admin** e a senha é **admin**
 +
 +No gerenciamento tente seguir a seguinte sequencia:
 +  - Criar um cliente
 +  - Criar um domínio
 +  - Criar o Site
 +  - Criar o acesso ao FTP 
 +
 +Tela de login do ISPconfig
 +
 +{{:​isp01.png?​500|}}
 +
 +
 +Tela inicial do ISPconfig
 +
 +{{:​isp02.png?​500|}}
 +
 +
 +Tela de configuração de idioma e troca de senha do ISPconfig
 +
 +{{:​isp03.png?​500|}}
 +
 +Tela de criação de cliente do ISPconfig
 +
 +{{:​isp04.png?​500|}}
 +
 +Tela de criação de zona DNS do ISPconfig
 +
 +{{:​isp06.png?​500|}}
 +
 +Tela de criação do virtualhost do cliente
 +
 +{{:​isp07.png?​500|}}
 +
 +Tela de criação do cliente FTP para o cliente do ISPconfig
 +
 +{{:​isp08.png?​500|}}
 +
 +Agora vamos fazer alguns testes.
 +
 +Vou consultar o domínio ​ que eu criei
 +<sxh bash>
 +nslookup douglasqsantos.com.br
 +Server: ​  ​192.168.1.31
 +Address: ​ 192.168.1.31#​53
 +
 +Name: douglasqsantos.com.br
 +Address: 192.168.1.31
 +</​sxh>​
 +
 +Agora vou fazer um teste do ftp
 +<sxh bash>
 +ftp www.douglasqsantos.com.br
 +Connected to www.douglasqsantos.com.br (192.168.1.31).
 +220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
 +220-You are user number 1 of 50 allowed.
 +220-Local time is now 21:54. Server port: 21.
 +220-This is a private system - No anonymous login
 +220-IPv6 connections are also welcome on this server.
 +220 You will be disconnected after 15 minutes of inactivity.
 +Name (www.douglasqsantos.com.br:​quintiliano):​ douglas01
 +331 User douglas01 OK. Password required
 +Password:
 +230-User douglas01 has group access to:  client1 ​   sshusers  ​
 +230 OK. Current restricted directory is /
 +Remote system type is UNIX.
 +Using binary mode to transfer files.
 +ftp> ls
 +227 Entering Passive Mode (192,​168,​1,​31,​128,​75)
 +150 Accepted data connection
 +drwxr-x--x ​   6 5004       ​client1 ​         4096 Dec 31 21:46 .
 +drwxr-x--x ​   6 5004       ​client1 ​         4096 Dec 31 21:46 ..
 +drwxr-x--x ​   2 5004       ​client1 ​         4096 Dec 31 21:46 cgi-bin
 +drwxr-xr-x ​   2 5004       ​client1 ​         4096 Dec 31 21:46 log
 +drwxr-x--x ​   2 5004       ​client1 ​         4096 Dec 31 21:46 ssl
 +drwxrwxrwx ​   2 5004       ​client1 ​         4096 Dec 31 21:46 tmp
 +drwx--x--- ​   4 5004       ​client1 ​         4096 Dec 31 21:46 web
 +226-Options:​ -a -l 
 +226 7 matches total
 +ftp> quit
 +221-Goodbye. You uploaded 0 and downloaded 0 kbytes.
 +221 Logout.
 +</​sxh>​
 +
 +Agora vou acessar no navegador o site teste http://​www.douglasqsantos.com.br
 +
 +Vamos ter algo como abaixo.
 +
 +{{:​isp09.png?​500|}}
 +====== Referências ======
 +  - http://​www.ispconfig.org/​ispconfig-3/​documentation/​
 +  - http://​www.ispconfig.org/​ispconfig-3/​
 +  - http://​olivier.sessink.nl/​jailkit/​