-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy path_Delegar_Admin
157 lines (143 loc) · 5.67 KB
/
_Delegar_Admin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
#!/bin/bash
#+----------------GERANDO LOG-----------------------+OK"
SCRIPT=`basename $0`
LOG=`echo /opt/zimbra/$SCRIPT.log | sed s/'.sh'/'.log'/g`
exec &> >(tee -a "$LOG")
echo "[`date`] ==== Inicio de rotina..."
#+----------------GERANDO LOG-----------------------+OK"
clear
#Checa se o usuario é root
LOCAL_USER=`id -u -n`
if [ $LOCAL_USER != "root" ] ; then
echo " Rodar como usuario root"
echo " saindo..."
echo ""
exit
fi
dir="Diretorio Atual : `pwd`"
hostname="Hostname : `hostname --fqdn`"
ip="IP : `wget -qO - icanhazip.com`"
#ip="IP : `ifconfig | awk 'NR>=2 && NR<=2' | awk '{print $3}'`"
versaoso="Versao S.O. : `lsb_release -d | cut -d : -f 2- | sed 's/^[ \t]*//;s/[ \t]*$//'`"
release="Release : `lsb_release -r | cut -d : -f 2- | sed 's/^[ \t]*//;s/[ \t]*$//'`"
codename="Codename : `lsb_release -c | cut -d : -f 2- | sed 's/^[ \t]*//;s/[ \t]*$//'`"
kernel="Kernel : `uname -r`"
arquitetura="Arquitetura : `uname -m`"
versaozimbra="Versao Zimbra : `su - zimbra -c 'zmcontrol -v'`"
echo "+-------------------------------------------------+"
echo "| Utilitario para Zimbra v1.31 |"
echo "+-------------------------------------------------+"
echo "+-------------------------------------------------+"
echo "| Escrito por: |"
echo "| Thiago Castro - www.hostlp.cloud |"
echo "+-------------------------------------------------+"
echo
echo $dir
echo "+-------------------------------------------------+"
echo $hostname
echo "+-------------------------------------------------+"
echo $ip
echo "+-------------------------------------------------+"
echo $versaoso
echo "+-------------------------------------------------+"
echo $release
echo "+-------------------------------------------------+"
echo $codename
echo "+-------------------------------------------------+"
echo $kernel
echo "+-------------------------------------------------+"
echo $arquitetura
echo "+-------------------------------------------------+"
echo $versaozimbra
echo "+-------------------------------------------------+"
echo
echo "Aperte <ENTER> para continuar e começar..."
read
sleep 5
echo
echo "==================EXECUTANDO======================="
echo
clear
#Variavel
UsrZ="su - zimbra -c"
echo "Digite o nome do domínio"
echo -n "Domínio: "
read DOMINIO
echo
echo "Digite o e-mail do usuário"
echo -n "Usuário: "
read USUARIOS
echo
echo "Aperte <ENTER> para continuar e começar..."
read
echo "Remove direitos de Administrador? - Sim/Nao"
read CONFIRMA
case $CONFIRMA in
s|S|Sim|sim)
echo "Retirando regras..."
$UsrZ 'zmprov ma '$USUARIOS' zimbraIsDelegatedAdminAccount FALSE'
echo "[`date`] ==== Fim de rotina..."
exit
;;
n|N|Nao|nao)
echo
;;
*) echo "Opcao Invalida" ;; esac
echo
echo "Aplica direitos de Administrador? - Sim/Nao"
read CONFIRMA
case $CONFIRMA in
s|S|Sim|sim)
echo "Aplicando regras..."
$UsrZ 'zmprov ma '$USUARIOS' zimbraIsDelegatedAdminAccount TRUE'
$UsrZ 'zmprov ma '$USUARIOS' zimbraAdminConsoleUIComponents accountListView zimbraAdminConsoleUIComponents downloadsView zimbraAdminConsoleUIComponents DLListView zimbraAdminConsoleUIComponents aliasListView zimbraAdminConsoleUIComponents resourceListView'
$UsrZ 'zmprov grr global usr '$USUARIOS' adminLoginCalendarResourceAs'
$UsrZ 'zmprov grr global usr '$USUARIOS' domainAdminZimletRights'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' domainAdminRights'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' domainAdminConsoleRights'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' adminConsoleAliasRights'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' modifyAccount'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' countAlias'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' configureQuota'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' getMailboxInfo'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' -configureAdminUI'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' -get.account.zimbraAdminConsoleUIComponents'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' -get.dl.zimbraAdminConsoleUIComponents'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' -set.account.zimbraIsDelegatedAdminAccount'
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' -set.dl.zimbraIsAdminGroup'
;;
n|N|Nao|nao)
echo "[`date`] ==== Fim de rotina..."
exit
;;
*) echo "Opcao Invalida" ;; esac
echo
echo "Limite maximo para alterar em Cotas de usuario"
echo "(10240 = 10GB / 20480 = 20GB / 30720 = 30GB / 40960 = 40GB / 51200 = 50GB) (0 = ILIMITADO)"
echo -n "Digite em MB: "
read LIMITE
$UsrZ 'zmprov ma '$USUARIOS' zimbraDomainAdminMaxMailQuota '$LIMITE''
echo
echo "Pode visualizaar e-mails? - Sim/Nao"
read CONFIRMA
case $CONFIRMA in
s|S|Sim|sim)
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' +adminLoginAs'
;;
n|N|Nao|nao)
$UsrZ 'zmprov grr domain '$DOMINIO' usr '$USUARIOS' -adminLoginAs'
;;
*) echo "Opcao Invalida" ;; esac
echo
echo "Pode visualizar dominios? - Sim/Nao"
read CONFIRMA
case $CONFIRMA in
s|S|Sim|sim)
$UsrZ 'zmprov ma '$USUARIOS' zimbraAdminConsoleUIComponents domainListView zimbraAdminConsoleUIComponents accountListView zimbraAdminConsoleUIComponents downloadsView zimbraAdminConsoleUIComponents DLListView zimbraAdminConsoleUIComponents aliasListView zimbraAdminConsoleUIComponents resourceListView'
;;
n|N|Nao|nao)
$UsrZ 'zmprov ma '$USUARIOS' zimbraAdminConsoleUIComponents accountListView zimbraAdminConsoleUIComponents downloadsView zimbraAdminConsoleUIComponents DLListView zimbraAdminConsoleUIComponents aliasListView zimbraAdminConsoleUIComponents resourceListView'
;;
*) echo "Opcao Invalida" ;; esac
echo
echo "[`date`] ==== Fim de rotina..."