2013/8/23 Marcelo Gondim <gon...@bsdinfo.com.br>: > Em 23/08/13 17:06, Patrick Tracanelli escreveu: >> >> Em 23/08/2013, às 14:28, Leonardo Augusto <lalin...@gmail.com> escreveu: >> >>> 2013/8/23 Nilton OS <jnilti...@gmail.com>: >>>> Em 23 de agosto de 2013 13:48, Patrick Tracanelli < >>>> eks...@freebsdbrasil.com.br> escreveu: >>>> >>>>> O apache não roda como root. Ele roda como usuario e grupo declarados no >>>>> httpd.conf (por default www:www) >>>>> >>>>> No entanto ele INICIA como root pra fazer bind na tcp/80 e depois faz >>>>> setuid pro usuário configurado (por default www:www) >>>>> >>>>> Se voce quer um nível de segurança que impeça até mesmo esse binding como >>>>> root você tem que esquecer do Unix como você está acostumado, esquecer do >>>>> controle de acesso DAC que é o default do POSIX e assumir um comportamento >>>>> Trusted (TrustedBSD). >>>>> >>>>> Nesse caso você precisa usar o MAC Portacl (kldload mac_portacl), colocar >>>>> no MAC todas as portas do sistema como portas privilegiadas (seria o ideal >>>>> mas ao menos da 0-1023), e no DAC dizer que nenhuma porta é privilegiada >>>>> (modificando o portrange high e jogando pra 0). Nesse momento você >>>>> esqueceu >>>>> o controle de acesso DAC e passou a usar o MAC >>>>> >>>>> Ai voce vai no MAC e diz que o usuário www pode fazer binding no socket 80 >>>>> do protocolo tcp. Por exemplo: >>>>> >>>>> sysctl -w security.mac.portacl.rules=uid:80:tcp:80 >>>>> >>>>> Pronto. >>>>> >>>>> Se você quiser pode até fazer o Root ter que pedir benção pro kernel antes >>>>> de ouvir em portas baixas (suser_exempt=0), mas por padrão apenas o acima >>>>> já atende. >>>>> >>>>> Apesar de eu acreditar que você não queira isso e ser algo mais simples, >>>>> como seu apache por algum motivo estranho estar rodando como UID 0, caso >>>>> em >>>>> que voce avalia o motivo. >>>>> >>>>> Por último e fica a dica, mais importante que com que usuário o Apache >>>>> roda, é você prover isolamento de credenciais se seu ambiente for >>>>> configurado. >>>>> >>>>> Com o MPM ITK no Apache você pode facilmente fazer cada VirtualHost rodar >>>>> com um usuário diferente; pode fazer cada contexto Directory executar com >>>>> uma permissão diferente. Se seu ambiente for shared avalie isso antes de >>>>> pensar em ir pra MAC pois é um tremendo diferencial pra segurança. E ai >>>>> você pode ir pra outros componentes (MLS/LOMAC/BIBA/BSD_EXTENDED) pra >>>>> apoiar por MAC as credenciais atribuídas via DAC no sujeito rodando o >>>>> processo. >>>>> >>>>> Abraços. >>>>> >>>>> Em 23/08/2013, às 13:12, Leonardo de Souza <freebsd.leona...@gmail.com> >>>>> escreveu: >>>>> >>>>>> Tem alguma maneira de fazer o apache iniciar automaticamente como usuario >>>>>> comum pelo /rc.conf. Ou seja para que eu tenha mais segurança em meu >>>>>> servidor apache não quero que ele rode como root. >>>>>> ------------------------- >>>>> >>>> >>>> Patrick Tracanelli, deu uma aula para esse humilde aprendiz. >>>> >>>> Obrigado >>>> >>>> -- >>>> .............................................................................. >>>> *Nilton OS* | linuxpro.com.br <http://www.linuxpro.com.br> >>>> >>>> *"Não são os grandes homens que transformam o mundo, mas sim os fracos nas >>>> mãos de um grande Deus."* >>> Complicou tudo isso sim... ehehe >>> <fun> >>> MAC = aquele computador da apple ? >>> DAC = Digital analog converter ? >>> </fun> >> Po foi o melhor que deu pra responder hehehe :( >> >> Como eu não sei se a dúvida é o simples (www:www), trusted ou outra coisa, >> tentei responder os 3, o simples, o trusted e o outro (isolamento) hehehe. >> Provavelmente é o primeiro caso ne? :( >> >> > Po Patrick assim você acaba com o cérebro do Carabina rsrsrsrsrs o mac > BIBA é bem interessante HaHaHaHaH lembro dele no curso SEE. > > []'s > Gondim > -------------------------
eheh tava zuando.. muito boa a resposta, que não vale apenas para apache, e sim para qualquer daemon que da bind em porta tcp, interessante.. E está é de parabéns por mostrar as possibilidades acerca do tema. []´s ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd