Mudanças entre as edições de "Automatização criação de vhost"
De MochilaWiki
Ir para navegaçãoIr para pesquisarLinha 95: | Linha 95: | ||
* http://wiki.nkosi.org/Sys:_servidor_ftp | * http://wiki.nkosi.org/Sys:_servidor_ftp | ||
* http://meupinguim.com/pwgen-utilitario-criar-senhas-seguras-linux/ | * http://meupinguim.com/pwgen-utilitario-criar-senhas-seguras-linux/ | ||
+ | |||
+ | [[Categoria:Quijaua]] |
Edição das 19h35min de 28 de maio de 2011
Trata-se de uma solução que criei para facilitar algo que é constante -> criação de vhost. No caso cria a pasta pública, privada e de log + acesso ftp e ajustes no apache; no final envia uma mensagem com as informações por e-mail.
pré-configuração
mkdir /srv/projeto-conf/
mkdir /srv/skel/
apt-get install mutt pwgen
script
export CMS=$1
export ENDPROJ=$2
export PROJ=$3
export MAIL=$4
export SENHA=`pwgen -1n 12`
#criando usuário e home
mkdir -p /home/sites/$ENDPROJ/public_html/$CMS
mkdir /home/sites/$ENDPROJ/logs
useradd -d /home/sites/$ENDPROJ -p $SENHA -s /bin/false $PROJ
chown -R $PROJ.$PROJ /home/sites/$ENDPROJ
#configura dominio pro apache
sed "s/endereco/`echo $ENDPROJ`/g" /srv/skel/site > /etc/apache2/sites-available/$ENDPROJ
sed -i "s/cms/`echo $CMS`/g" /etc/apache2/sites-available/$ENDPROJ
# habilita e reinicia configurações do apache
a2ensite $ENDPROJ
/etc/init.d/apache2 reload
# Salvando Configurações
sed "s/nomeproj/`echo $PROJ`/g" /srv/skel/dados > /srv/projeto-conf/$ENDPROJ
sed -i "s/formtproj/`echo $CMS`/g" /srv/projeto-conf/$ENDPROJ
sed -i "s/casa/`echo $ENDPROJ`/g" /srv/projeto-conf/$ENDPROJ
sed -i "s/pass/`echo $SENHA`/g" /srv/projeto-conf/$ENDPROJ
sed -i "s/endereco/`echo $ENDPROJ`/g" /srv/projeto-conf/$ENDPROJ
sed -i "s/email/`echo $MAIL`/g" /srv/projeto-conf/$ENDPROJ
# Envia mensagem para o responsável
mutt -s "Criado hospedagem para $ENDPROJ" $MAIL < /srv/projeto-conf/$ENDPROJ
template 1
Crie o arquivo /srv/skel/dados com as informações
Nome do Projeto = nomeproj
Formato do Projeto = formtproj
Url = endereco
Home = /home/sites/casa
Senha = pass
Relatórios = /home/sites/endereco/logs
Contato do Responsavel = email
template 2
Crie o arquivo /srv/skel/site com as informações
<VirtualHost 127.0.0.1:80>
ServerName www.endereco
ServerAlias endereco
DocumentRoot /home/sites/endereco/public_html/cms
ServerAdmin folhas@quijaua.com.br
ErrorLog /home/sites/endereco/logs/error.log
CustomLog /home/sites/endereco/logs/access.log common
<Directory /home/sites/endereco/public_html/cms>
Allowoverride All
</Directory>
</VirtualHost>
criando hospedagem
./gera-vhost.sh [Formato do Projeto] [Url] [Nome do Projeto] [email]
- Formato do Projeto = No caso de um site em HTML, seria "html" ou se for um CMS, o nome dele, por exemplo, "wordpress", "drupal"
- Url = endereço do domínio, por exemplo, quijaua.com.br
- Nome do Projeto = quijaua
- email = contato da pessoa responsável pelo site
PS: sempre colocar os valores em minusculo (caixa-baixa).
Exemplo:
./gera-vhost.sh wordpress elegbara.com elegbara nada@zero.com
Referências: