Vamos inicialmente acessar a pasta em que o arquivo atual de configuração do kernel se encontra:

root@proxy:~ # uname -a
FreeBSD proxy.sig.grancursos.com.br 9.2-RELEASE FreeBSD 9.2-RELEASE #0 r255898: Thu Sep 26 22:50:31 UTC 2013 [email protected]:/usr/obj/usr/src/sys/GENERIC amd64
root@proxy:~ # cd /usr/src/sys/amd64/co
compile/ conf/
root@proxy:~ # cd /usr/src/sys/amd64/co
compile/ conf/
root@proxy:~ # cd /usr/src/sys/amd64/conf/
root@proxy:/usr/src/sys/amd64/conf # ls
DEFAULTS GENERIC GENERIC.hints Makefile NOTES XENHVM
root@proxy:/usr/src/sys/amd64/conf #

Conforme visualizaram no comando “uname -a”, o arquivo de configuração GENERIC foi usado para a compilação deste kernel no dia 26 de setembro de 2013 às 22h50.

Para que o arquivo de configuração GENERIC não seja alterado, vamos criar um outro nome de arquivo de configuração específico para esta instalação:

root@proxy:/usr/src/sys/amd64/conf # cp GENERIC FWGRANSIG
root@proxy:/usr/src/sys/amd64/conf #

Escolhi o nome “FWGRANSIG” porque eu utilizarei este servidor para configurar o servidor de firewall de uma empresa chamada Gran Cursos (a qual é minha cliente).

Agora vamos editar o arquivo de configuração:

root@proxy:/usr/src/sys/amd64/conf # pico FWGRANSIG

Alterar o nome GENERIC para FWGRANSIG, conforme imagem abaixo:

FreeBSD Kernel - Arquivo de configuração

Conforme imagem abaixo, após SMP, adicione as seguintes linhas:

Regras do firewall IPFW ao Kernel FreeBSD

# Configuracoes firewall.
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_FORWARD
options IPFIREWALL_VERBOSE_LIMIT=100
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPFILTER
options IPFILTER_LOG
options IPDIVERT
options DUMMYNET
# Fim das opcoes para o firewall.

Salve o arquivo.

Digite o seguinte comando após salvar o arquivo:

root@proxy:/usr/src/sys/amd64/conf # cd /usr/src/
root@proxy:/usr/src # make buildkernel KERNCONF=FWGRANSIG

Início da recompilação do kernel

O novo kernel terá sido recompilado após chegarmos à seguinte imagem abaixo (o processo demorou 20 minutos neste servidor):

Compilação concluída do kernel do FreeBSD 9.2

Agora vamos instalar o novo kernel compilado com o comando:

root@proxy:/usr/src # make installkernel KERNCONF=FWGRANSIG

Instalando novo kernel do FreeBSD 9.2

Pronto! Novo kernel instalado. Agora temos o ipfw habilitado e regras pré-definidas para uso do natd + squid + rinetd.

Após reiniciar a máquina, verfique se o novo kernel foi instalado com o seguinte comando:

root@proxy:/home/rodrigo # uname -a
FreeBSD proxy.sig.grancursos.com.br 9.2-RELEASE FreeBSD 9.2-RELEASE #1: Thu Oct 24 01:33:13 BRST 2013 [email protected]:/usr/obj/usr/src/sys/FWGRANSIG amd64
root@proxy:/home/rodrigo #

Enfim, como puderam visualizar, o novo kernel ‘FWGRANSIG’ foi compilado no dia 24 de outubro de 2013 às 1h33.

 

Author

Rodrigo Calado é sócio-fundador e CTO do Gran Cursos Online. Graduado em Gestão da Tecnologia da Informação, pós-graduando em Governança de TI pela Universidade Católica de Brasília e cursou MBA em Gestão e Empreendedorismo pela FGV. Possui convicta paixão pela área de tecnologia, educação digital, concursos públicos e empreendedorismo.

Write A Comment