[FUG-BR] FreeBSD no Amazon Web Services.

Adiel de Lima Ribeiro adiel.netadmin em gmail.com
Quarta Dezembro 7 18:18:43 BRST 2016


On 12/07/2016 03:07 PM, Paulo Henrique wrote:
> Sugestão e duvidas ao longo do e-mail:
Respostas abaixo das sugestões e dúvidas.
Se precisar algo mais específico, só falar.
Obrigado.
>
> Em 7 de dezembro de 2016 11:39, Adiel de Lima Ribeiro <
> adiel.netadmin em gmail.com> escreveu:
>
>> Grupo, bom dia!
>> Peço licença para uma pequena divulgação.
>> Customizei a imagem padrão do FreeBSD no AWS feita pelo Colin Percival.
>> Utilizei a versão 10.3 64 bits.
>> Estou aberto a críticas e sugestões.
>> Quem se interessar, basta entrar em contato, estou a disposição.
>> Obrigado.
>>
>> Descrição da minha AMI no AWS:
>>
>> Foram removidas várias opções desnecessárias do kernel, ele foi otimizado
>> para o XEN.
>> O kernel padrão de 500MB foi reduzido para 70MB.
>>
> Foi removido suporte de hardware apena ou também removeu parte de 
> options de recursos do sistema como o TrustedBSD Framework, GEOM 
> Framework e NETGRAPH ?
Foram removidos os 2, a maioria foi suporte a HW.
No caso das opções, removi coisas como UFS ACL e NFS, no caso do GEOM, 
removi o GEOM RAID.
O TrustedBSD Framework permaneceu.
O NetGraph eu não adicionei.

> No caso da plataforma TrustedBSD, qual foi a politica utilizada e 
> quais locais a politica dos conteiners afeta ?
No caso do TrustedBSD deixei o OPTIONS MAC.
> Como está a configuração dos semaphores SYSV no kernel customizado ? 
Está padronizada.
> Qual opção de firewall ( PF ou IPFW ) que foi configurado no kernel 
> ?Foi adicionado suporte a enfileiramento de pacotes, QOS com DUMMYNET 
> ou ALTQ ? 
Deixei o PF, sem suporte a DUMMYNET e ALTQ.
>> Consulte o /home/ec2-user/CUSTOM e execute o comando uname -a para maiores
>> detalhes.
>>
>> Foi adicionado um segudo disco a VM para o particionamento e otimização do
>> acesso.
>> Foram utilizadas as opções sync e journaling nos discos para evitar
>> inconsistência e perda de dados.
>> O /usr foi configurado como apenas leitura, para evitar modificações nos
>> binários do sistema operacional.
>> Foi feita a separação do /usr/local de /usr, para permitir a instalação de
>> aplicativos numa partição exclusiva para eles.
>> Foi feita a separação do /var/log de /var, para evitar paradas do sistema
>> por causa do esgotamento da partição /var com logs.
>> Foi feita a separação do /home de /, para evitar paradas do sistema por
>> causa do esgotamento da raíz do sistema com dados de usuários ou do sistema.
>> Foi feita a separação de /tmp numa partição exclusiva para arquivos
>> temporários.
>>
>> Sugestão, montar o sistema de arquivos temporários em memoria.
Gostei, mas qual seria o ganho real disso no AWS?
> Também aconselho a separar o diretorio /usr/ports em uma partição dedicada,
> principalmente devido ao fato do distfiles oculparem muito espaço em disco.
Esqueci de mencionar, há a partição separada /usr/ports.
> Quanto ao tipo de sistema de arquivos, por mais confipavel que o UFS2 do
> FreeBSD vem se mostrando ao longo dos ultimos 23 anos o ZFS possui vários
> recursos que superam muito qualquer outro FS atualmente, adcionar a opção
> de utilizar ele no lugar do UFS2 merece ser melhor analisada.
Sim, claro. Mas no caso, as opções de HA ou recuperação de desastre que 
o ZFS oferece, eu configuro em nível de VM no AWS.
Por isso mesmo desabilitei opções do kernel como RAID por exemplo.
>
>> Foi utilizada a flag noexec em /var, /var/log e /tmp para aumentar a
>> segurança do sistema.
>> Foi criada a partição /srv, a qual permitirá armazenar os arquivos
>> específicos de servidor e uma fácil expansão da partição caso necessário,
>> foi atribuída a flag nosuid nesta partição.
>> Para mais detalhes, consulte o /etc/fstab e execute o comando mount.
>>
>> Foi desabilitada a opção padrão de login via ssh com certificado e sem
>> senha, sua porta padrão foi modificada
>> de 22 para 65535, foram feitas outras modificações para evitar ataques e
>> permitir login com usuário e senha.
>> Apenas membros do grupo ssh tem o direito de fazer login via ssh, o
>> usuário ec2-user pertence ao grupo ssh.
>> Para mais informações, consulte o /etc/ssh/sshd_config e execute o comando
>> netstat -an como root.
>>
>> Foram desabilitados alguns daemons na inicialização do sistema, isso fez
>> com que somente a porta ssh 65535 fique
>> aberta, esperando por conexões.
>> A data e hora do servidor são definidas via ntp, utilizando-se os
>> servidores oficiais do Brasil.
>> Consulte o /etc/rc.conf para maiores detalhes.
>>
>> O sistema foi configurado de forma que apenas o usuário root tem permissão
>> de visualizar todos os processos e conexões.
>> Consulte o /etc/sysctl.conf para maiores informações e execute o comando
>> ps aux ou netstat -an como um usuário comum,
>> por exemplo, com o usuáio ec2-user.
>>
>> A auditoria do sistema foi refinada.
>> Foram utilizadas flags em arquivos críticos de log, para evitar a
>> aduteração ou perda deles.
>> Para maiores detalhes consulte o /etc/syslog.conf e execute o comando ls
>> -lo /var/log.
>>
>> As permissões padrão do sistema foram melhoradas de forma que apenas o
>> usuário root tem acesso aos arquivos modificados aqui.
>> O mesmo se aplica ao arquivo /etc/crontab, apenas o usuário root tem
>> acesso a ele.
>> O umask padrão foi modificado de 022 para 077 para os usuários e para o
>> root, de forma que apenas eles tem acesso aos dados criados por eles. Para
>> maiores detalhes, consulte o /etc/login.conf e o comando umask.
>>
>> Recomendo já ajustar o locale do sistema e também editar o skell e ajustar
> o locale do usuário para UTF-8.
Pode ser feito!
>> Foi criado um um diretório scripts dentro de /root para armazenar scripts
>> administrativos.
>>
>> Foi scriado um script update_hostname.sh, que remapeia o ip atribuido pelo
>> DHCP ao nome do host.
>> Foi atribuida a flag schg a este script.
>>
>> Foi criado um script update_hostname dentro de /etc/rc.d, que é chamado
>> pelo script update_hostname.sh dentro de /root/scripts.
>>
>> Foi deletado o diretorio /boot/kernel.old.
>>
>> Foi atribuida a flag schg em todo o /boot.
>>
>> Foi removido o /usr/src.
>>
>> Foi removido o /usr/obj.
>>
>> As customizações feitas aqui modificaram o sistema operacional de forma
>> que ele ficou mais seguro, mais estável, mais rápido e com um conjunto
>> mínimo de opções necessárias ao funcionamento dele.
>> Tudo isso Out Of The Box, melhorando a experiência dos usuários de FreeBSD
>> no Amazon Web Services.
>> Aproveitem!
>>
>> --
>> Adiel de Lima Ribeiro
>> Consultor de TI
>> (31) 9-8961-5984
>> MCSA (Microsoft Certified Systems Administrator)
>> Pós Graduação em Administração de Redes Linux
>> facebook.com/bsdworld
>>
>> -------------------------
>> Histórico: http://www.fug.com.br/historico/html/freebsd/
>> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>>
> Att. Paulo Henrique.
>


-- 
Adiel de Lima Ribeiro
Consultor de TI
(31) 9-8961-5984
MCSA (Microsoft Certified Systems Administrator)
Pós Graduação em Administração de Redes Linux
facebook.com/bsdworld



Mais detalhes sobre a lista de discussão freebsd