[FUG-BR] Off-Topic: Recomendação de livro sobre ZFS

2015-07-10 Por tôpico Edinilson - ATINET
Caros amigos, sei que é um off-topic, mas gostaria de recomendar um livro a 
todos aqueles que estão querendo iniciar ou se aprofundar no ZFS e, como eu, 
já está cansado de pegar uma dica aqui e outra ali, tudo espalhado.


O livro é:
FreeBSD Mastery: ZFS (IT Mastery)  [1]

Gostei bastante pois o livro traz um exemplo atrás do outro, com várias 
formas de se utilizar o ZFS, os prós e os contras de cada situação.


obs: Só para constar, o Allan Jude foi um dos que escreveram o man page do 
ZFS.


[]´s

Edinilson

[1] http://www.amazon.com/gp/product/0692452354


ATINET
Tel Voz: (0xx11) 4412-0876
http://www.atinet.com.br 


-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Ajuda com Sudoers

2015-07-10 Por tôpico Patrick Müller
Valeu pelas dicas vou fazer novos testes e fazer as alterações sugeridas.

Assim q tiver um resulto volto a postar.

Abraço

2015-07-10 12:36 GMT-03:00 Patrick Tracanelli :

>
> > On 10/07/2015, at 09:46, Patrick Müller 
> wrote:
> >
> > Bom dia galera
> >
> > Estou precisando de uma ajuda para configurar uma permissão de sudo.
> >
> > Tenho um script A com as seguintes permissões ---s--x—x que recebe como
> > parâmetro um outro script B com permissão rwsrwxrwx, até aí está
> > funcionando bem.
> >
> > O script A tem o seguinte conteúdo
> >
> > #!/bin/sh
> >
> > chown -R root /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/$1
> >
> > chmod 4777 /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/$1
> >
> >
> >
> > O script B tem o seguinte conteúdo
> >
> > #!/bin/sh
> >
> > echo senha | pw mod user usuario -h 0
> >
> >
> >
> > Bem simples para a troca de senha.
> >
> >
> >
> > Na configuração do sudoers eu tenho
> >
> >
> >
> > Funciona, mas pelos meus critérios de segurança é péssimo.
> >
> > www ALL=(ALL) NOPASSWD: /bin/sh
> >
> >
> >
> > Acredito que para o que eu quero seria uma opção melhor, mesmo ainda
> sendo
> > um grande risco para segurança.
> >
> > #www ALL=(ALL) NOPASSWD: /bin/sh  /caminho/scriptA.sh
>
> A simples mudança do PATH antes da execução fará com que chown e chmod
> seja qualquer coisa que o “atacante” deseje. Então sempre que for fazer
> shell script mais critico, se acostume a usar PATH completo pros comandos,
> /usr/sbin/chown, /bin/chmod, etc. Declarar seu próprio PATH no corpo do
> script também não resolve ja que o ambiente pertence ao escopo do usuário e
> ele faz o que bem entender, redefine, destroi, ignora.
>
> Faz o seguinte, no sudores coloque sempre o caminho completo pros comandos
> que quer permitir e controle os argumentos pro comando. Ou seja
> aparentemente você não quer liberar  /usr/sbin/chown quer liberar apenas:
>
> /usr/sbin/chown -R root /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/[A-z]*
>
> Teste exatamente o que quer liberar e coloque uma regex esperta
> controlando os argumentos variáveis :P Abuse da negação no sudo, se for o
> caso:
>
> /usr/sbin/chown -R root
> /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/[A-z]*,  !/usr/sbin/chown -R
> root /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/nao_pode
>
> Nunca libere o seu shell script como um todo, ao invés disso o shell
> script deve usar o sudo, e por sua vez path completo, ignorando/dispensando
> o PATH existente:
>
> #!/bin/sh
> unset PATH
> /usr/local/bin/sudo /usr/sbin/chown -R root
> /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/algumacoisa
>
> Se quiser ter ainda mais controle, faça o usuário www fazer ssh pra
> localhost e libere no sudo a execução pra esse outro usuário:
>
> #!/bin/sh
> unset PATH
> ssh -i /caminho/pra/chave sudouser@localhost "/usr/local/bin/sudo
> /usr/sbin/chown -R root
> /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/algumacoisa”
>
> Você tem mais controle, tem auditabilidade, pode impor limites no ssh,
> controle de acesso, pode usar chave com passphrase e o ssh-agent pra
> permitir a automação do processo, só sendo necessário digitar o passphrase
> quando subir o serviço httpd por exemplo, vai juntar 2 fatores de
> autenticação (ter a chave e saber o passphrase), enfim melhora o ambiente
> consideravelmente e seu controle. Mas você pode achar demais “tudo isso” só
> pra permitir um chown e um chmod ;) Se avaliar que a criticidade não é
> tanta, esqueça o ssh e faz o resto, da foco na declaração explícita do que
> você quer e não quer liberar no sudoers.
>
> O proprio man sudoers tem mais exemplos nessa linha de liberar regex
> explicitamente e bloquear exceções à regex:
>
>   peteHPPA = /usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd
> root
>
>  %opers  ALL = (: ADMINGRP) /usr/sbin/
>
> Boa diversão :D
>
>
>
>
>
> >
> >
> >
> > Quem puder avaliar os riscos disso e me ajudar eu já agradeço.
>
>
>
>
>
> --
> Patrick Tracanelli
>
> FreeBSD Brasil LTDA.
> Tel.: (31) 3516-0800
> 316...@sip.freebsdbrasil.com.br
> http://www.freebsdbrasil.com.br
> "Long live Hanin Elias, Kim Deal!"
>
> -
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Ajuda com Sudoers

2015-07-10 Por tôpico Patrick Tracanelli

> On 10/07/2015, at 09:46, Patrick Müller  wrote:
> 
> Bom dia galera
> 
> Estou precisando de uma ajuda para configurar uma permissão de sudo.
> 
> Tenho um script A com as seguintes permissões ---s--x—x que recebe como
> parâmetro um outro script B com permissão rwsrwxrwx, até aí está
> funcionando bem.
> 
> O script A tem o seguinte conteúdo
> 
> #!/bin/sh
> 
> chown -R root /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/$1
> 
> chmod 4777 /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/$1
> 
> 
> 
> O script B tem o seguinte conteúdo
> 
> #!/bin/sh
> 
> echo senha | pw mod user usuario -h 0
> 
> 
> 
> Bem simples para a troca de senha.
> 
> 
> 
> Na configuração do sudoers eu tenho
> 
> 
> 
> Funciona, mas pelos meus critérios de segurança é péssimo.
> 
> www ALL=(ALL) NOPASSWD: /bin/sh
> 
> 
> 
> Acredito que para o que eu quero seria uma opção melhor, mesmo ainda sendo
> um grande risco para segurança.
> 
> #www ALL=(ALL) NOPASSWD: /bin/sh  /caminho/scriptA.sh

A simples mudança do PATH antes da execução fará com que chown e chmod seja 
qualquer coisa que o “atacante” deseje. Então sempre que for fazer shell script 
mais critico, se acostume a usar PATH completo pros comandos, /usr/sbin/chown, 
/bin/chmod, etc. Declarar seu próprio PATH no corpo do script também não 
resolve ja que o ambiente pertence ao escopo do usuário e ele faz o que bem 
entender, redefine, destroi, ignora.

Faz o seguinte, no sudores coloque sempre o caminho completo pros comandos que 
quer permitir e controle os argumentos pro comando. Ou seja aparentemente você 
não quer liberar  /usr/sbin/chown quer liberar apenas:

/usr/sbin/chown -R root /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/[A-z]*

Teste exatamente o que quer liberar e coloque uma regex esperta controlando os 
argumentos variáveis :P Abuse da negação no sudo, se for o caso:

/usr/sbin/chown -R root /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/[A-z]*,  
!/usr/sbin/chown -R root /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/nao_pode

Nunca libere o seu shell script como um todo, ao invés disso o shell script 
deve usar o sudo, e por sua vez path completo, ignorando/dispensando o PATH 
existente:

#!/bin/sh
unset PATH
/usr/local/bin/sudo /usr/sbin/chown -R root 
/www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/algumacoisa

Se quiser ter ainda mais controle, faça o usuário www fazer ssh pra localhost e 
libere no sudo a execução pra esse outro usuário:

#!/bin/sh
unset PATH
ssh -i /caminho/pra/chave sudouser@localhost "/usr/local/bin/sudo 
/usr/sbin/chown -R root 
/www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/algumacoisa”

Você tem mais controle, tem auditabilidade, pode impor limites no ssh, controle 
de acesso, pode usar chave com passphrase e o ssh-agent pra permitir a 
automação do processo, só sendo necessário digitar o passphrase quando subir o 
serviço httpd por exemplo, vai juntar 2 fatores de autenticação (ter a chave e 
saber o passphrase), enfim melhora o ambiente consideravelmente e seu controle. 
Mas você pode achar demais “tudo isso” só pra permitir um chown e um chmod ;) 
Se avaliar que a criticidade não é tanta, esqueça o ssh e faz o resto, da foco 
na declaração explícita do que você quer e não quer liberar no sudoers.

O proprio man sudoers tem mais exemplos nessa linha de liberar regex 
explicitamente e bloquear exceções à regex:

  peteHPPA = /usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd root

 %opers  ALL = (: ADMINGRP) /usr/sbin/

Boa diversão :D





> 
> 
> 
> Quem puder avaliar os riscos disso e me ajudar eu já agradeço.





--
Patrick Tracanelli

FreeBSD Brasil LTDA.
Tel.: (31) 3516-0800
316...@sip.freebsdbrasil.com.br
http://www.freebsdbrasil.com.br
"Long live Hanin Elias, Kim Deal!"

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


[FUG-BR] Ajuda com Sudoers

2015-07-10 Por tôpico Patrick Müller
Bom dia galera

Estou precisando de uma ajuda para configurar uma permissão de sudo.

Tenho um script A com as seguintes permissões ---s--x—x que recebe como
parâmetro um outro script B com permissão rwsrwxrwx, até aí está
funcionando bem.

O script A tem o seguinte conteúdo

#!/bin/sh

chown -R root /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/$1

chmod 4777 /www/src_www.lamce.ufrj.br_ssl/sistemav3/pws/$1



O script B tem o seguinte conteúdo

 #!/bin/sh

echo senha | pw mod user usuario -h 0



Bem simples para a troca de senha.



Na configuração do sudoers eu tenho



Funciona, mas pelos meus critérios de segurança é péssimo.

www ALL=(ALL) NOPASSWD: /bin/sh



Acredito que para o que eu quero seria uma opção melhor, mesmo ainda sendo
um grande risco para segurança.

#www ALL=(ALL) NOPASSWD: /bin/sh  /caminho/scriptA.sh



Quem puder avaliar os riscos disso e me ajudar eu já agradeço.
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd