Imspector - Manipular ACLS facilmente
Publicado por gelber de arruda junior 17/05/2009
[ Hits: 8.795 ]
Homepage: http://gelberarrudajr.blogspot.com
Esse script ajuda o administrador a controlar o msn em sua rede facilmente sem precisar ficar editando os arquivos de configuração.
O script gera o arquivo padrão de acls do IMSPECTOR a partir do dialog. Mais detalhes sobre sua utilização em http://gelberarrudajr.blogspot.com/2009/05/neste-artigo-nos-vamos-aprender.html.
Bom proveito!!!
#!/bin/bash # Autor: Gelber de Arruda Junior juniorwinfor@yahoo.com.br # Data: 15/05/2009 # Função do Script: Manipular Live IDS facilmente para acl's do imspector 0.8 # # http://gelberarrudajr.blogspot.com/2009/05/neste-artigo-nos-vamos-aprender.html # # ATENÇÃO: instalar o dialog e psmisc( apt-get install dialog psmisc) # # Este programa é um software livre que pode ser copiado e distribuído # nos termos da Licença Pública Geral GNU (GNU General Public License - # GPL) versão 2 da licença ou, a seu critério, qualquer versão posterior. # Este programa foi criado na expectativa de ser útil, porém NÃO POSSUI # NENHUMA GARANTIA, EXPRESSA, IMPLÍCITA OU DE ATENDIMENTO A ALGUMA # DETERMINADA FINALIDADE. TMPFILE1=/tmp/tmpf1 TMPFILE4=/tmp/tmpf4 lvd=/usr/etc/imspector/liveids lvdex=/usr/etc/imspector/liveidsex acls=/usr/etc/imspector/acl.txt Msnmenu() { while : ; do resposta= resposta=$( dialog --stdout \ --title 'Administração Messenger' \ --ok-label 'OK' \ --cancel-label 'Voltar' \ --menu 'Opções:' 0 0 0 1 'Contatos Internos' 2 'Definir Categoria' 3 'Contatos Externos' \ 4 'Aplicar Mudanças' ) [ $? -ne 0 ] && break case "$resposta" in 1) lista="$lvd" titulo=Lista_de_Contatos_Internos Manipliveids ;; 2) Defcateg ;; 3) lista="$lvdex" titulo=Lista_de_Contatos_Externos Manipliveids ;; 4) Criaacltxt killall imspector imspector & ;; 0) break ;; esac done } Manipliveids() { [ -s "$lista" ] || echo "exemplo@hotmail.com|Aberto" >> $lista while : ; do resposta3= resposta3=$( \ dialog --stdout \ --title ''$titulo'' \ --ok-label 'Adicionar' \ --extra-button \ --extra-label 'Remover' \ --cancel-label 'Voltar' \ --menu '' 0 60 16 \ $(cont=0 for llvd in `cat $lista`; do cont=`expr "$cont" + 1` idlvd=`echo "$llvd" | awk -F "|" '{print $1}'` [ -z "$idlvd" ] && idlvd=vazio echo "$cont" "$idlvd" done)) bt="$?" case "$bt" in 0) lvdadding=$( dialog --stdout \ --title 'Adicionar Live ID' \ --ok-label 'Adicionar' \ --cancel-label 'Cancelar' \ --inputbox 'Digite a nova Live ID a ser adicionada:' \ 0 0 ) if [ -z "$lvdadding" ]; then sleep 0 else echo "$lvdadding""|Fechado" >> $lista fi ;; 1) break ;; 3) dialog \ --title 'Confirma exclusão?' \ --yesno "Tem certeza que deseja excluir Live ID de número "$resposta3"? " 0 0 if [ "$?" -ne 0 ]; then sleep 0 else cont=0 [ -e $TMPFILE4 ] && rm $TMPFILE4 for exllvd in `cat $lista`; do cont=`expr "$cont" + 1` if [ "$resposta3" -eq "$cont" ]; then sleep 0 else echo "$exllvd" >> $TMPFILE4 fi done mv $TMPFILE4 $lista fi ;; esac done } Defcateg(){ while : ; do resposta= resposta=$( dialog --stdout \ --title 'Definir categoria dos contatos' \ --ok-label 'Alterar' \ --cancel-label 'Voltar' \ --menu 'Selecione:' 0 0 0 $( for llvd in `cat $lvd`; do cadalvd=`echo $llvd | awk -F "|" '{print $1}'` catlvd=`echo $llvd | awk -F "|" '{print $2}'` echo "$cadalvd $catlvd" done )) [ $? -ne 0 ] && break [ -e $TMPFILE1 ] && rm $TMPFILE1 while : ; do resposta2= resposta2=$( dialog --stdout \ --title 'Categoria para o contato' \ --ok-label 'OK' \ --cancel-label 'Voltar' \ --menu 'Selecione uma categoria para o contato '$resposta'' 0 0 0 1 'Aberto' 2 'Fechado') [ $? -ne 0 ] && break for llvd in `cat $lvd`; do cadalvd=`echo $llvd | awk -F "|" '{print $1}'` catlvd=`echo $llvd | awk -F "|" '{print $2}'` if [ "$cadalvd" = "$resposta" ]; then if [ "$resposta2" -eq "1" ]; then echo ""$cadalvd"|Aberto" >> $TMPFILE1 else echo ""$cadalvd"|Fechado" >> $TMPFILE1 fi else echo "$llvd" >> $TMPFILE1 fi done mv $TMPFILE1 $lvd break done done } Criaacltxt(){ dialog --infobox 'Aguarde... Montando ACLs de conversas' 0 0 [ -e $acls ] && rm $acls touch $acls chmod 777 $acls for contatoin in `cat $lvd`; do lvdin=`echo $contatoin | awk -F "|" '{print $1}'` tplvdin=`echo $contatoin | awk -F "|" '{print $2}'` if [ "$tplvdin" = "Fechado" ]; then seqcontatoex= for contatoex in `cat $lvdex`; do idlvdex=`echo $contatoex | awk -F "|" '{print $1}'` seqcontatoex="$idlvdex $seqcontatoex" done echo "allow $lvdin $seqcontatoex" >> $acls fi done seqcontatoin= for contatoin in `cat $lvd`; do lvdin=`echo $contatoin | awk -F "|" '{print $1}'` seqcontatoin="$lvdin $seqcontatoin" done echo "allow all $seqcontatoin" >> $acls for contatosint in `cat $lvd`; do lvdint=`echo $contatosint | awk -F "|" '{print $1}'` tplvdint=`echo $contatosint | awk -F "|" '{print $2}'` if [ "$tplvdint" = "Aberto" ]; then echo "allow $lvdint" >> $acls fi done echo "allow all groupchat" >> $acls echo "deny all" >> $acls chmod 777 $acls chown nobody $acls } Msnmenu
Adicionar usuarios em lote com senha padrao
Recriando /dev/null facilmente
Implementando Statement e RecordSet em bash script
duplex_record: mixando áudio do microfone e saída de áudio de um programa via P
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Encontre seus arquivos facilmente com o Drill
Mouse Logitech MX Ergo Advanced Wireless Trackball no Linux
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
O que esta havendo com o mercado de ti? (9)
Não consigo cadastrar nenhuma conta online (5)
Hotspot Mikrotik nao carrega pagina de login. (0)