Script criar usuário squid

1. Script criar usuário squid

Daniel Marchi
DMS_

(usa elementary OS)

Enviado em 19/09/2011 - 08:10h

Bom Dia, esse script não fui eu que o criei maso uso, queria entende-lo melhor, em vista que não sei o que alguns parâmetros significam. O que ele faz é criar usuário no squid.
Pra isso vc digita ./addproxyuser nome senha 4(level do usuario)

No squid que uso cada usuário tem que estar em um nivel, que é amazenado no arquivo .txt usuarios1 a 4

Gostaria de entender cada linha oque faz por que faz e como faz =) se possivel. obrigado!

#!/bin/sh


if [ -z "$1" ] ||
[ -z "$2" ] ||
[ -z "$3" ]
then
echo "Parâmetros inválidos, use:"
echo " addproxyuser username password level"
exit
fi

if [$3 -lt 0] || [$3 -gt 4]
then
echo "O parâmetro level só pode ser de 0 a 3"
exit
fi

echo "Criando usuário ..."
/usr/bin/htpasswd -b /etc/squid/squid.passwd $1 $2
echo "Colocando usuário no level ..."
echo "$1" >> /etc/squid/grupos/usuarios$3
squid -k reconfigure


  


2. Re: Script criar usuário squid

Daniel Marchi
DMS_

(usa elementary OS)

Enviado em 19/09/2011 - 13:07h

up


3. Re: Script criar usuário squid

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 19/09/2011 - 23:14h

Esta dica pode ajudar no seu caso: http://www.vivaolinux.com.br/dica/Criar-alterar-e-remover-usuarios-no-Squid



4. Re: Script criar usuário squid

Daniel Marchi
DMS_

(usa elementary OS)

Enviado em 20/09/2011 - 10:53h

AprendiNoLinux escreveu:

Esta dica pode ajudar no seu caso: http://www.vivaolinux.com.br/dica/Criar-alterar-e-remover-usuarios-no-Squid


A dúvida não é criar ou não usuários no squid, isso eu sei fazer, a dúvida é na sintaxe do script, o que certos parâmetos e argumento significam pois não manjo muito de shell, e queria entender este script já que o uso regularmente.


5. Re: Script criar usuário squid

Osama Jr.
/bin/laden

(usa Void Linux)

Enviado em 20/09/2011 - 11:56h

1 - if [ -z "$1" ] ...

Verifica se todos os argumentos foram passados ao script.

2 - if [ $3 -lt 0 ] || [ $3 -gt 4 ] ...

Checa se o terceiro paramêtro (o level) está compreendido entre 0 e 4

Obs.: Da forma que tá, ela está incorreta

3 - /usr/bin/htpasswd -b /etc/squid/squid.passwd $1 $2

O utilitário 'htpasswd' (do pacote Apache) inseri no arquivo '/etc/squid/squid.passwd' o login e senha (criptografada) informadas pelo usuário

4 - echo "$1" >> /etc/squid/grupos/usuarios$3

Adiciona no arquivo '/etc/squid/grupos/usuariosX' correspondente o usuário cadastro de acordo com seu 'level'.



6. Re: Script criar usuário squid

Daniel Marchi
DMS_

(usa elementary OS)

Enviado em 20/09/2011 - 13:10h

/bin/laden escreveu:

1 - if [ -z "$1" ] ...

Verifica se todos os argumentos foram passados ao script.

2 - if [ $3 -lt 0 ] || [ $3 -gt 4 ] ...

Checa se o terceiro paramêtro (o level) está compreendido entre 0 e 4

Obs.: Da forma que tá, ela está incorreta

3 - /usr/bin/htpasswd -b /etc/squid/squid.passwd $1 $2

O utilitário 'htpasswd' (do pacote Apache) inseri no arquivo '/etc/squid/squid.passwd' o login e senha (criptografada) informadas pelo usuário

4 - echo "$1" >> /etc/squid/grupos/usuarios$3

Adiciona no arquivo '/etc/squid/grupos/usuariosX' correspondente o usuário cadastro de acordo com seu 'level'.


Obrigado Sr. Osama! Era isso mesmo!
Na sua Obs.: no item 2, poderia me dizer como seria a forma correta?

Valeu
[]'s


7. Re: Script criar usuário squid

Osama Jr.
/bin/laden

(usa Void Linux)

Enviado em 20/09/2011 - 14:53h

O níveis vão de 0 a 3 certo! e a forma utilizada no script:

if [ $3 -lt 0 ] || [ $3 -gt 4 ] ...

Além de validar o 4, valida coisas do tipo: -1, -2 ...

Uma forma de contornar isso seria:


if ! echo "$3" | grep -q "^[0-3]\{1\}$"; then
echo "Informe um nivel de acesso entre 0 e 3 somente!"
exit 1
fi



8. Re: Script criar usuário squid

Daniel Marchi
DMS_

(usa elementary OS)

Enviado em 20/09/2011 - 15:23h

/bin/laden escreveu:

O níveis vão de 0 a 3 certo! e a forma utilizada no script:

if [ $3 -lt 0 ] || [ $3 -gt 4 ] ...

Além de validar o 4, valida coisas do tipo: -1, -2 ...

Uma forma de contornar isso seria:


if ! echo "$3" | grep -q "^[0-3]\{1\}$"; then
echo "Informe um nivel de acesso entre 0 e 3 somente!"
exit 1
fi


Na verdade os niveis são de 0 a 4

Com niveis de 0 a 4 ficaria assim? :
[code]
#!/bin/sh


if ! echo "$3" | grep -q "^[0-4]\{1\}$"; then
echo "Informe um nivel de acesso entre 0 e 4 somente!"
exit 1
fi
if [$3 -lt 0] || [$3 -gt 4]
then
echo "O parâmetro level só pode ser de 0 a 4"
exit
fi

echo "Criando usuário ..."
/usr/bin/htpasswd -b /etc/squid/squid.passwd $1 $2
echo "Colocando usuário no level ..."
echo "$1" >> /etc/squid/grupos/usuarios$3
squid -k reconfigure[/code


9. Re: Script criar usuário squid

Osama Jr.
/bin/laden

(usa Void Linux)

Enviado em 20/09/2011 - 16:01h

Na verdade ficará assim:

#!/bin/sh
#

...

if ! echo "$3" | grep -q "^[0-4]\{1\}$"; then
echo "Informe um nivel de acesso entre 0 e 4 somente!"
exit 1
fi

echo "Criando usuário ..."
/usr/bin/htpasswd -b /etc/squid/squid.passwd $1 $2
echo "Colocando usuário no level ..."
echo "$1" >> /etc/squid/grupos/usuarios$3
squid -k reconfigure[/code




10. Re: Script criar usuário squid

Daniel Marchi
DMS_

(usa elementary OS)

Enviado em 20/09/2011 - 16:09h

Olha, do jeito que eu fiz deu certo, pode exemplificar difereça entre o meu eo seu?


11. Re: Script criar usuário squid

Geraldo Albuquerque
AprendiNoLinux

(usa Ubuntu)

Enviado em 20/09/2011 - 20:53h

Demarchi_ escreveu:

A dúvida não é criar ou não usuários no squid, isso eu sei fazer, a dúvida é na sintaxe do script, o que certos parâmetos e argumento significam pois não manjo muito de shell, e queria entender este script já que o uso regularmente.


tá bom :) Não criemonos cânico. Quando precisar é só avisar. Se souber vou ajudar com prazer. ;)







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts