Instalação do PABX 1.8
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

580 lines
18 KiB

#!/bin/bash
#trap "" 2 20
function arquivo_descriptografar(){
cd $path_arquivo
if [[ ! -f "${TAR_HDAUX}.enc" && ! -f "${TAR_VAR}.enc" && ! -f "${TAR_ETC}.enc" || ! -f "${TAR_USR}.enc" || ! -f "${TAR_DATABASE}.enc" ]]
then
echo "Falta arquivos criptografados"
fi
openssl aes-256-cbc -d -pbkdf2 -pass pass:\'$PASSWORD_CRYPT\' -in "${TAR_HDAUX}.enc" -out "${TAR_HDAUX}"
openssl aes-256-cbc -d -pbkdf2 -pass pass:\'$PASSWORD_CRYPT\' -in "${TAR_VAR}.enc" -out "${TAR_VAR}"
openssl aes-256-cbc -d -pbkdf2 -pass pass:\'$PASSWORD_CRYPT\' -in "${TAR_ETC}.enc" -out ${TAR_ETC}
openssl aes-256-cbc -d -pbkdf2 -pass pass:\'$PASSWORD_CRYPT\' -in "${TAR_USR}.enc" -out "${TAR_USR}"
openssl aes-256-cbc -d -pbkdf2 -pass pass:\'$PASSWORD_CRYPT\' -in "${TAR_DATABASE}.enc" -out "${TAR_DATABASE}"
}
function descompactar(){
if [[ ! -f "${TAR_HDAUX}" || ! -f "${TAR_VAR}" || ! -f "${TAR_ETC}" || ! -f "${TAR_USR}" || ! -f "${TAR_DATABASE}" ]]
then
echo "Falta arquivos criptografados" && sair_instalacao 40
fi
tar -xf $TAR_HDAUX -C /
[ $? -ne 0 ] && sair_instalacao "não"
tar -xf ${TAR_VAR} -C /
[ $? -ne 0 ] && sair_instalacao "não"
tar -xf ${TAR_ETC} -C /
[ $? -ne 0 ] && sair_instalacao "não"
tar -xf ${TAR_USR} -C /
[ $? -ne 0 ] && sair_instalacao "não"
tar -xf ${TAR_DATABASE} -C /
[ $? -ne 0 ] && sair_instalacao "não"
}
function access_sgdb(){
for encode_db in $(sudo -u postgres psql -l | grep postgres | awk -F \| '{print $3}')
do
[ "LATIN1" == $encode_db ] || sair_instalacao 16
done
for locate_db in $(sudo -u postgres psql -l | grep postgres | awk -F \| '{print $4}')
do
[ "$(echo "en_US.iso-8859-1" | tr '[:upper:]' '[:lower:]' )" == "$( echo $locate_db |tr '[:upper:]' '[:lower:]')" ] || sair_instalacao 16
done
}
function parar_servicos_antes_instalacao(){
/usr/bin/systemctl kill cron
/usr/bin/systemctl kill supervisor
/usr/bin/systemctl kill apache2
/usr/bin/systemctl kill postgresql@13-main.service
/usr/bin/systemctl kill asterisk
}
function start_postgresql(){
[ ! -f /usr/lib/systemd/system/postgresql@.service ] && sair_instalacao 15
if [ "$(systemctl status postgresql@13-main.service|awk -F\( 'NR==3{print $2}'|cut -d\) -f 1)" == "running" ]
then
systemctl restart postgresql@13-main.service
[ $? -ne 0 ] && sair_instalacao 15
else
systemctl start postgresql@13-main.service
[ $? -ne 0 ] && sair_instalacao 15
fi
sleep 3
}
function sair_instalacao(){
/bin/rm -rf /tmp/sip_install.pid
cd $path_arquivo
rm -rf "$(find $path_arquivo* -maxdepth 1 -type d)"
rm -rf "$(find $path_arquivo* -iname "*.tar.gz")"
exit $1
}
function mudar_password(){
/usr/sbin/usermod --password $2 $1 2> /dev/null
/usr/bin/passwd --status $1 2> /dev/null
}
function delete_usuario(){
/usr/sbin/userdel -fr $1 2> /dev/null
[ -n "$(cat /etc/group|grep -iE "^$1")" ] && /usr/sbin/groupdel $1 2> /dev/null
}
function criar_usuario_limitado(){
#excluí usuário
if [ -n "$(cat /etc/passwd | grep -i ^$1:)" ] ; then
delete_usuario $1
fi
/usr/sbin/groupadd $1 &> /dev/null
/usr/sbin/useradd -s /usr/bin/rbash -m $1 -g $1 &> /dev/null
/usr/bin/mkdir /home/$1/bin
## Restringir permissões do usuário manutenção
echo "readonly PATH=/home/$1/bin
export PATH" >> /home/$1/.bashrc
ln -s /sbin/reboot /home/$1/bin/reiniciar
ln -s /sbin/halt /home/$1/bin/desligar
[ $1 == "manutencao" ] && echo "if [[ -f /home/$1/manutencao.sh ]];then /home/manutencao/manutencao.sh; else echo \"Sem script de manutencao.\";fi" >> /home/$1/.bashrc
[ $1 == "manutencao" ] && echo "exit" >> /home/$1/.bashrc
mudar_password $1 $2
}
function criar_usuario(){
#excluí usuário
if [ -n "$(cat /etc/passwd | grep -i ^$1:)" ] ; then
delete_usuario $1
fi
/usr/sbin/groupadd $1 2> /dev/null
/usr/sbin/useradd -s /usr/bin/bash "$([ -n "$3" ] && echo "-d $3" || echo "-m" )" $1 -g $1 2> /dev/null
mudar_password $1 $2
}
function verificar_encode(){
local encode="$1"
# O SO será em UTF-8, porém o banco em ISO
if ! [ "$encode" = "lang=en_us.iso-8859-1" ] ; then
clear
echo -n "Encoding: $encode incorreto, deseja corrigir e reiniciar o servidor? (S/N):"
read -n 1 resposta
echo ""
if [[ $resposta != +(s|S|y|Y|sim|SIM) ]] ; then
/bin/rm -rf /tmp/sip_install.pid
exit
fi
lines_locale=$(grep -E "^[^#]" /etc/locale.gen)
for line in $lines_locale; do echo $line; sed -i "s|^$line|# $line|g" /etc/locale.gen; done
echo "en_US ISO-8859-1" >> /etc/locale.gen
export LANGUAGE="en_US ISO-8859-1"
export LANG="en_US ISO-8859-1"
export LC_ALL="en_US ISO-8859-1"
/sbin/locale-gen
/bin/localectl set-locale LANG="en_US.ISO-8859-1"
/bin/localectl set-locale LANGUAGE="en_US.ISO-8859-1"
clear
echo "Reiniciando..."
for i in {5..1};do sleep 1 && echo -n "$i ";done
echo ""
echo "Recomece a atualizacao"
/bin/rm -rf /tmp/sip_install.pid
[ -e /sbin/reboot ] && /sbin/reboot
reboot
fi
}
function ja_instalado(){
if [ -d /var/www/html/aplicativo ] || [ -d /var/www/html/include ] || [ -d /var/www/html/agenda ] ; then
echo ""
echo ""
echo -n "Identifiquei que ja ocorreu uma instalacao neste servidor, o procedimento a seguir substituira todos os arquivos, deseja continuar? (S/N):"
read -n 1 resposta
echo ""
if [[ $resposta != +(s|S|y|Y|sim|SIM) ]] ; then
/bin/rm -rf /tmp/sip_install.pid
/bin/rm -rf $path_arquivo
/bin/rm -rf $path_arquivo*.tar.gz
echo ""
echo "Instalacao cancelada!"
echo ""
echo ""
exit
fi
fi
}
function existe_outra_instalacao(){
# Verifica se o script esta rodando
#
if [ -e /tmp/sip_install.pid ] ; then
echo "Script em Excecucao..."
exit
fi
}
function definir_timezone(){
while true ; do
DIALOGDATA="$(for i in $(/usr/bin/timedatectl list-timezones) ; do echo -n "$i '' off " | sed -e "s/America\/Cuiaba '' off/America\/Cuiaba '' on/g" ; done)"
TIMEZONE=$(dialog --stdout --default-item America/Cuiaba --radiolist " CONFIGURE O TIMEZONE " 0 0 0 $DIALOGDATA)
# Apertou CANCELAR ou ESC, sair...
[ $? -ne 0 ] && /bin/rm -rf /tmp/sip_atualiza.pid && exit
OPCAO=$(echo $TIMEZONE | sed "s/,/\\n/g")
if ! [ -z "$OPCAO" ] ; then
/usr/bin/timedatectl set-timezone $OPCAO
break
fi
done
}
function checar_dependencias(){
for program in $1
do
[ ! -f /usr/bin/$program ] && echo "falta de pendencias. $program" && sair_instalacao 10
done
for program in $2
do
[ ! -f /usr/sbin/$program ] && echo "falta dependencia $program" && sair_instalacao 10
done
}
function criar_directory_app(){
[ -d /hdaux/downloads ] && rm -rf /hdaux/downloads
mkdir -p /hdaux/downloads
[ -d /hdaux/atualizacao ] && rm -rf /hdaux/atualizacao
mkdir -p /hdaux/atualizacao
[ -d /hdaux/utilitarios/scripts ] && rm -rf /hdaux/utilitarios/scripts
[ -d /hdaux/utilitarios/ferramentas ] && rm -rf /hdaux/utilitarios/ferramentas
mkdir -p /hdaux/utilitarios/ferramentas
[ -d /hdaux/utilitarios/manuais ] && rm -rf hdaux/utilitarios/manuais
mkdir -p /hdaux/utilitarios/manuais
[ -d /hdaux/backup ] && rm -rf /hdaux/backup
mkdir -p /hdaux/backup
[ -d /hdaux/restore ] && rm -rf /hdaux/restore
mkdir -p /hdaux/restore
[ -d /var/www/html/aplicativo ] && rm -rf /var/www/html/aplicativo
[ -d /var/www/html/include ] && rm -rf /var/www/html/include
[ -d /var/www/html/agenda ] && rm -rf /var/www/html/agenda
[ -d /vars/lib/asterisk ] && rm -rf /vars/lib/asterisk
[ -d /etc/asterisk ] && rm -rf /etc/asterisk/
}
# Mudar o
function config_postgresql(){
if [ ! -f /var/lib/postgresql/13/main/postgresql.conf ]
then
echo "Não foi encontrado arquivo /var/lib/postgresql/13/main/postgresql.conf"; sair_instalacao 15
fi
sed -i "s/^[# ]*listen_addresses *= *'.*'/listen_addresses = \'\*\'/g" /var/lib/postgresql/13/main/postgresql.conf
sed -i "s/^[# ]*shared_buffers *= *[0-9]* *\(MB\|kB\|GB\)/shared_buffers = 960MB/g" /var/lib/postgresql/13/main/postgresql.conf
sed -i "s/^[# ]*effective_cache_size *= *[0-9] *\(MB\|kB\|GB\)/effective_cache_size = 2816MB/g" /var/lib/postgresql/13/main/postgresql.conf
sed -i "s/^[# ]*log_destination *= *'.*'/log_destination = 'stderr' /g" /var/lib/postgresql/13/main/postgresql.conf
sed -i "s/^[# ]*logging_collector *= *\(on\|off\)/logging_collector = on/g" /var/lib/postgresql/13/main/postgresql.conf
sed -i "s/^[# ]*log_directory = '.*'/log_directory = 'log'/g" /var/lib/postgresql/13/main/postgresql.conf
sed -i "s/^[# ]*log_filename = '.*'/log_filename = 'postgresql-%a.log/g" /var/lib/postgresql/13/main/postgresql.conf
sed -i "s/^[# ]*log_rotation_age *= *[0-9]*[dw]/log_rotation_age = 1d/g" /var/lib/postgresql/13/main/postgresql.conf
sed -i "s/^[# ]*log_rotation_size *= *[0-9]* *\(MB\|kB\|GB\)/log_rotation_size = 0/g" /var/lib/postgresql/13/main/postgresql.conf
sed -i "s/^[# ]*log_line_prefix *= *'.*'/log_line_prefix = '%m PID[%p] USER(%u) aplication(%a) database(%d) command(%i) SQLSTATE(%e): '/g" /var/lib/postgresql/13/main/postgresql.conf
sed -i "s/^[# ]*autovacuum *= *\(on\|off\)/autovacuum = off/g" /var/lib/postgresql/13/main/postgresql.conf
}
function inicia_initdb(){
rm -rf /var/lib/postgresql/13/main
sudo -u postgres /usr/lib/postgresql/13/bin/initdb -D /var/lib/postgresql/13/main -E LATIN1 --locale=en_US.ISO-8859-1
}
function alterar_password_user_postgresql(){
sudo -u postgres psql -c "ALTER USER $1 WITH PASSWORD '$2';"
}
function criar_usuario_postgresql(){
sudo -u postgres psql -c "CREATE USER $1 WITH PASSWORD '$2' ${*:3};"
alterar_password_user_postgresql "$1" "$2"
}
function criar_banco_pbx(){
#Criando Banco de Dados
! [ -z "$(sudo -u postgres psql -l | grep pbx)" ] && sudo -u postgres dropdb pbx
sudo -u postgres createdb pbx
[ $? == 0 ] && sair_instalacao 17
}
function rota_vpn(){
#VPN
echo '#!/bin/bash' > /etc/ppp/ip-up.local
echo "" >> /etc/ppp/ip-up.local
echo "case \"\$5\" in" >> /etc/ppp/ip-up.local
echo " 10.254.254.1)" >> /etc/ppp/ip-up.local
echo " /sbin/route add -net 10.252.252.0/24 gw 10.254.254.1" >> /etc/ppp/ip-up.local
echo " /sbin/route add -net 192.168.115.0/24 gw 10.254.254.1" >> /etc/ppp/ip-up.local
echo " ;;" >> /etc/ppp/ip-up.local
echo " *)" >> /etc/ppp/ip-up.local
echo "esac" >> /etc/ppp/ip-up.local
chmod 777 /etc/ppp/ip-up.local
}
function criar_banco_pbx(){
#Criando Banco de Dados
! [ -z "$(sudo -u postgres psql -l | grep pbx)" ] && sudo -u postgres dropdb pbx
sudo -u postgres createdb pbx
sleep 1
}
function config_msmt(){
#Configurando msmtp
! [ -e /etc/msmtprc ] && touch /etc/msmtprc
chmod 700 /etc/msmtprc
echo "set sendmail=/usr/bin/msmtp" > /root/.mailrc
echo "defaults" > /etc/msmtprc
echo "account voicemail" >> /etc/msmtprc
echo "port 587" >> /etc/msmtprc
echo "timeout off" >> /etc/msmtprc
echo "protocol smtp" >> /etc/msmtprc
echo "domain simplesip.com.br" >> /etc/msmtprc
echo "tls on" >> /etc/msmtprc
echo "tls_trust_file" >> /etc/msmtprc
echo "tls_certcheck off" >> /etc/msmtprc
echo "logfile ~/.msmtp.log" >> /etc/msmtprc
echo "host mail.simplesip.com.br" >> /etc/msmtprc
echo "from voicemail@simplesip.com.br" >> /etc/msmtprc
echo "auth login" >> /etc/msmtprc
echo "user voicemail@simplesip.com.br" >> /etc/msmtprc
echo "password SimpleS_VoicemaiL!@#" >> /etc/msmtprc
echo "" >> /etc/msmtprc
echo "account default:voicemail" >> /etc/msmtprc
chmod --recursive u=rwX,g=rX,o= /etc/msmtprc
chown --recursive pbx:pbx /etc/msmtprc
}
function config_ntp(){
! [ -e /var/lib/ntp/ntp.drift ] && touch /var/lib/ntp/ntp.drift
/bin/cp -Rapf /etc/ntp.conf /etc/ntp.conf.ori.$(date +%F-%H-%M-%S)
echo "" > /etc/ntp.conf
echo "" >> /etc/ntp.conf
echo "#Referência: http://ntp.br/NTP/MenuNTPLinuxBSD" >> /etc/ntp.conf
echo "# "memoria" para o escorregamento de frequencia do micro" >> /etc/ntp.conf
echo "# pode ser necessario criar esse arquivo manualmente com" >> /etc/ntp.conf
echo "# o comando touch ntp.drift" >> /etc/ntp.conf
echo "driftfile /var/lib/ntp/ntp.drift" >> /etc/ntp.conf
echo "" >> /etc/ntp.conf
echo "# estatisticas do ntp que permitem verificar o historico" >> /etc/ntp.conf
echo "# de funcionamento e gerar graficos" >> /etc/ntp.conf
echo "statsdir /var/log/ntpstats/" >> /etc/ntp.conf
echo "statistics loopstats peerstats clockstats" >> /etc/ntp.conf
echo "filegen loopstats file loopstats type day enable" >> /etc/ntp.conf
echo "filegen peerstats file peerstats type day enable" >> /etc/ntp.conf
echo "filegen clockstats file clockstats type day enable" >> /etc/ntp.conf
echo "" >> /etc/ntp.conf
echo "# servidores publicos do projeto ntp.br" >> /etc/ntp.conf
echo "server a.st1.ntp.br iburst" >> /etc/ntp.conf
echo "server b.st1.ntp.br iburst" >> /etc/ntp.conf
echo "server c.st1.ntp.br iburst" >> /etc/ntp.conf
echo "server d.st1.ntp.br iburst" >> /etc/ntp.conf
echo "server gps.ntp.br iburst" >> /etc/ntp.conf
echo "server a.ntp.br iburst" >> /etc/ntp.conf
echo "server b.ntp.br iburst" >> /etc/ntp.conf
echo "server c.ntp.br iburst" >> /etc/ntp.conf
echo "" >> /etc/ntp.conf
echo "# configuracoes de restricao de acesso" >> /etc/ntp.conf
echo "restrict default kod notrap nomodify nopeer noquery" >> /etc/ntp.conf
echo "restrict -6 default kod notrap nomodify nopeer noquery" >> /etc/ntp.conf
echo "restrict 127.0.0.1" >> /etc/ntp.conf
echo "restrict 10.0.0.0 mask 255.0.0.0 kod notrap nomodify nopeer noquery" >> /etc/ntp.conf
echo "restrict 172.0.0.0 mask 255.0.0.0 kod notrap nomodify nopeer noquery" >> /etc/ntp.conf
echo "restrict 192.0.0.0 mask 255.0.0.0 kod notrap nomodify nopeer noquery" >> /etc/ntp.conf
echo "" >> /etc/ntp.conf
echo "# desabilitar comando monlist" >> /etc/ntp.conf
echo "disable monitor" >> /etc/ntp.conf
chown ntp:ntp /var/lib/ntp/ntp.drift
echo "0.00" > /var/lib/ntp/ntp.drift
}
function config_sshd_sudo(){
#SSH
echo "sipadmin ALL=(ALL) NOPASSWD:/sbin/iptables,NOPASSWD:/bin/sed,NOPASSWD:/bin/sip_lista_bloqueio.sh,NOPASSWD:/bin/sip_limpa_bloqueio.sh,NOPASSWD:/sbin/halt,NOPASSWD:/sbin/reboot,NOPASSWD:/usr/sbin/setup,NOPASSWD:/sbin/service,NOPASSWD:/bin/date" >> /etc/sudoers
echo "simples ALL=(ALL) NOPASSWD:/usr/sbin/rasterisk,NOPASSWD:/usr/sbin/asterisk,NOPASSWD:/usr/sbin/setup,NOPASSWD:/sbin/service" >> /etc/sudoers
echo "aplicacao ALL=(ALL) NOPASSWD:/bin/ls,NOPASSWD:/usr/bin/ffmpeg,NOPASSWD:/bin/mkdir,NOPASSWD:/bin/chown pbx*,NOPASSWD:/bin/date,NOPASSWD:/bin/rm -rf /var/lib/asterisk/*,NOPASSWD:/bin/mv /var/lib/asterisk/*" >> /etc/sudoers
echo "manutencao ALL=(ALL) NOPASSWD:/sbin/halt,NOPASSWD:/sbin/reboot,NOPASSWD:/usr/sbin/system-config-network-tui,NOPASSWD:/sbin/service" >> /etc/sudoers
sed -i "s/^\(^#Port .*\)/Port 2223/g" /etc/ssh/sshd_config
sed -i "s/^\(^Port .*\)/Port 2223/g" /etc/ssh/sshd_config
sed -i "s/^\(^#PermitRootLogin .*\)/PermitRootLogin no/g" /etc/ssh/sshd_config
sed -i "s/^\(^PermitRootLogin .*\)/PermitRootLogin no/g" /etc/ssh/sshd_config
sed -i "/\(.*AllowUsers*.\)/d" /etc/ssh/sshd_config
echo "AllowUsers aplicacao@127.0.0.1 simples sipadmin" >> /etc/ssh/sshd_config
}
function server_postgresql(){
inicia_initdb
config_postgresql
start_postgresql
access_sgdb
criar_usuario_postgresql contacte 'ctepgSQL' SUPERUSER CREATEDB CREATEROLE
criar_usuario_postgresql root '$imple$ip' SUPERUSER CREATEDB CREATEROLE
criar_usuario_postgresql simplesip 'smplsIP' SUPERUSER CREATEDB CREATEROLE
alterar_password_user_postgresql postgres 'SIP$$'
criar_banco_pbx
}
COMPANY="SIMPLES IP"
# O script encrypt_app.sh irá definir esse campo
PASSWORD_CRYPT="123123"
TAR_HDAUX="hdaux.tar.gz"
TAR_VAR="var.tar.gz"
TAR_ETC="etc.tar.gz"
TAR_USR="usr.tar.gz"
TAR_DATABASE="database.tar.gz"
#Descobrindo o caminho do script
dir=$(dirname $0)
path_arquivo=$(cd $dir;pwd)
arquitetura=$(uname -m)
versao_linux=$(cat /etc/debian_version | sed 's/[a-zA-Z() ]//g' | cut -d "." -f 1)
encode=$(locale | tr '[:upper:]' '[:lower:]' | sed -e "s/\"//g" | grep "^lang=")
resposta=0
tty_user=$(tty|awk -F/ '{print $3"/"$4}')
sosftware_depencencia="pg_ctlcluster sudo php crontab msmtp"
sosftware_depencencia_sbin="asterisk apache2 logrotate pptp"
clear
echo ' '
echo ' _____ _ __ _____ ________ '
echo ' / ___/(_)___ ___ ____ / /__ / ___/ / _/ __ \'
echo ' \__ \/ / __ `__ \/ __ \/ / _ \\__ \ / // /_/ /'
echo ' ___/ / / / / / / / /_/ / / __/__/ / _/ // ____/ '
echo '/____/_/_/ /_/ /_/ .___/_/\___/____/ /___/_/ '
echo ' /_/ '
echo ' '
existe_outra_instalacao
#
#PID do scritp
echo $$ > /tmp/sip_install.pid
checar_dependencias "$sosftware_depencencia" "$sosftware_depencencia_sbin"
ja_instalado
verificar_encode $encode
definir_timezone
#deslogar todos os usuários
/bin/kill $(ps -ef | egrep '(tty|pts)'| grep -vE "$tty_user"|awk '{print $2}')
cd $path_arquivo
[ ! -f /usr/bin/rbash ] && /usr/bin/cp /usr/bin/bash /usr/bin/rbash
criar_usuario_limitado manutencao '$6$i8exmsZlTgUfFiEo$XiXTmZVRotYBDkTfJIa2NWLzrb63MJ8rdXcFqUprfKsoUS8uUkdVaDZwqBboWzG4K6pNRxJjx59ty/ztpRDtj0'
criar_usuario aplicacao '$6$i8exmsZlTgUfFiEo$XiXTmZVRotYBDkTfJIa2NWLzrb63MJ8rdXcFqUprfKsoUS8uUkdVaDZwqBboWzG4K6pNRxJjx59ty/ztpRDtj0' /tmp
criar_usuario pbx '$6$i8exmsZlTgUfFiEo$XiXTmZVRotYBDkTfJIa2NWLzrb63MJ8rdXcFqUprfKsoUS8uUkdVaDZwqBboWzG4K6pNRxJjx59ty/ztpRDtj0' /var/lib/asterisk
criar_usuario simples '$6$i8exmsZlTgUfFiEo$XiXTmZVRotYBDkTfJIa2NWLzrb63MJ8rdXcFqUprfKsoUS8uUkdVaDZwqBboWzG4K6pNRxJjx59ty/ztpRDtj0'
criar_usuario sipadmin '$6$i8exmsZlTgUfFiEo$XiXTmZVRotYBDkTfJIa2NWLzrb63MJ8rdXcFqUprfKsoUS8uUkdVaDZwqBboWzG4K6pNRxJjx59ty/ztpRDtj0'
mudar_password root '$6$i8exmsZlTgUfFiEo$XiXTmZVRotYBDkTfJIa2NWLzrb63MJ8rdXcFqUprfKsoUS8uUkdVaDZwqBboWzG4K6pNRxJjx59ty/ztpRDtj0'
parar_servicos_antes_instalacao
config_msmt
rota_vpn
config_sshd_sudo
config_ntp
cd /var/lib/postgresql
server_postgresql
cd $path_arquivo
#DNSMASQ
DNSRESOLV=$(cat /etc/resolv.conf | grep -v "#" | grep -v "127.0.0.1" | wc -l)
if ! [ "$DNSRESOLV" = "0" ] ; then
/bin/cp -Rapf /etc/dnsmasq.conf /etc/dnsmasq.conf.$(date +%F-%H-%M-%S)
sed -i "/\(^server=.*\)/d" /etc/dnsmasq.conf
for i in $(cat /etc/resolv.conf | grep -v "#" | grep -v "127.0.0.1" | awk {'print $2'}) ; do echo "server=$i" >> /etc/dnsmasq.conf ; done
else
echo "Nao ha DNS configurado!"
fi
criar_directory_app
arquivo_descriptografar
descompactar