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? :( -- 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