FreeBSD

30 de setembro de 2016

Arquivo /etc/rc.conf

Mais artigos de »
Escrito por: Leonardo Souza
Tags:

Arquivo /etc/rc.conf

O arquivo /etc/rc.conf é o principal arquivo de configuração do FreeBSD. Nas versões anteriores do sistema ele era chamado de /etc/sysconfig. Na prática, ele é um Shell Script que possui como principal função definir a configuração do seu sistema, ou seja, o que ele precisa fazer ao iniciar. A cada nova versão do sistema este arquivo pode sofrer alterações, porém a maioria das informações permanecem relevantes.

 As versões modernas do deste arquivo possui uma configuração relativamente simples, se compara as presentes nas primeiras versões do sistema. Para se ter ideia, este arquivo não era criado automaticamente pelo sistema. Dessa forma, após a instalação do sistema, o administrador precisava criar este arquivo e editá-lo de acordo com as premissas declaradas em outros arquivos como o /etc/defaults/rc.conf e o /etc/rc.conf.local.

O arquivo /etc/rc.conf possui centenas de opções (cláusulas) que podem ser utilizadas e que definem as principais configurações do sistema. Veremos agora as principais destas cláusulas:




A cláusula “hostname”

A cláusula “hostname” é a opção que define o nome do host, ou seja, o computador. É por este nome que o computador será identificado e referenciado na rede em que está inserido. Assim, para definir o nome do computador como “servidor”, basta inserir a seguinte linha no /etc/rc.conf:

hostname=”servidor”

A cláusula “ifconfig”

A cláusula “ifconfig” define as configurações relativas ao IP do host. Essa opção é extremamente importante, pois sem estas configurações um computador não consegue interagir com outros computadores em rede. Por padrão, existem duas possibilidades para se realiza estas configurações: configurá-las manualmente ou obter estas configurações de forma dinâmica.

Por meio da configuração manual o administrador do sistema define IP, máscara e endereço de broadcast de forma manual. Por outro lado, configurar o sistema para obter estas informações de forma dinâmica, permitirá que o host receba estes valores através de um servidor DHCP.

Sendo assim, para definir as configurações básicas de IP por meio cláusula “ifconfig” podemos inserir o seguinte no arquivo /etc/rc.conf:

Para definir manualmente:

ifconfig_ed0=”inet 172.20.20.20 netmask 255.255.255.0 broadcast 172.20.20.255″

Para definir o host para adquirir estas configurações de um servidor DHCP:

Ifconfig_ed0=”DHCP”

Nesta entradas a expressão “ed0″ referencia o nome da interface de rede, inet especifica o IP da máquina, netmask define a máscara de sub-rede e broadcast determina o endereço de broadcast da interface.

A cláusula moused

A cláusula “moused” configura um driver de mouse e permitem seu uso por meio do cursor. Máquinas que possuem ambiente gráfico configurados devem ter esta cláusula ativada.

moused_enable=”YES”

A cláusula usbd

Nas versões mais antigas do sistema, esta cláusula era necessária para ativar o Serial Bus ou USB daemon Universal, responsável pela conectividade de dispositivos USB no sistema. Se por algum motivo for necessário iniciar este serviço, podemos fazê-lo inserindo a seguinte linha no arquivo /etc/rc.conf:

usbd_enable=”YES”

Cláusula ntpd

Existem diversas formas de manter a hora de um host sincronizado com a de “servidor de horas”, seja pelo ntpdate, ntpd ou outro qualquer. Esta cláusula permite que o host utilize o protocolo ntpd para isso.

Para ativar este recurso insira a seguinte linha no arquivo /etc/rc.conf:

ntpd_enable=”YES”

Cláusula SSHD

O SSH, ou Secure Shell, é o Daemon que permite um acesso remoto a um host, por meio de uma conexão segura. Para habilitar este recurso para o computador inicie o serviço durante o boot, insira a seguinte linha no arquivo /etc/rc.conf:

sshd_enable=”YES”

Cláusula nfs_client

Este recurso permite utilizar um host como cliente do serviço NFS, que permite acessar remotamente compartilhamentos realizados na rede por meio do protocolo NFS. Para habilitar este recurso insira a seguinte linha no arquivo /etc/rc.conf:

nfs_client_enable=”YES”

Cláusula nfs_server

Este recurso permite utilizar um host como servidor NFS em uma rede. Isso significa que habilitando-o o host poderá compartilhar diretórios com outros dispositivos da rede utilizando o protocolo NFS. Para habilitar este recurso insira a seguinte linha no arquivo /etc/rc.conf:

nfs_server_enable=”YES”

Cláusula defaultrouter

Os computadores conectados em rede trocam informações com os outros da mesma rede continuamente. Para que consigam se comunicar com outros computadores de outras redes eles precisam de um “router”, dispositivo da rede capaz de realizar a comunicação entre redes distintas. Esta opção permite informar qual é o router padrão do host, ou seja, o dispositivo da rede que irá ser consultado em caso de não saber por onde seguir para enviar informações para o destino correto.

Para configurar um host como router padrão, insira a seguinte linha no arquivo /etc/rc.conf:

defaultrouter=”172.20.20.1″

Obs. Entre aspas deve ser informado o IP ou nome do host que será o router padrão.

Cláusula gateway

Este recurso permite que o sistema encaminhe pacotes para outros computadores na rede. Dessa forma, se a tabela de roteamento estiver devidamente configurada o computador funcionará como um gateway de rede para outros dispositivos, ou seja, poderá receber e encaminhar pacotes para outros dispositivos.

Para habilitar este recurso insira  a seguinte linha no arquivo /etc/rc.conf:

gateway_enable=”YES” # Set to YES if this host will be a gateway.

Cláusula firewall_enable

Esta opção permite habilitar o firewall no FreeBSD. Dessa forma, ao iniciar o sistema carrega todas as regras especificadas no script de firewall. Para habilitar o firewall na inicialização insira a seguinte linha no arquivo /etc/rc.conf:

firewall_enable=”YES”

Cláusula firewall_type

Esta opção define o tipo de firewall será habilitado no sistema. As opções são:

Open: permite a passagem de todo o tráfego.

Client: protege apenas esta máquina.

Simple: protege toda a rede.

Closed: bloqueia todo o tráfego IP, permite apenas o loopback.

Workstation: protege o equipamento utilizando apenas regras stateful.

UNKNOWN: desativa as regras do firewall.

Para utilizar esta opção insira uma linha do seguinte modelo: firewall_type=”tipo_do_firewall”:

firewall_type=”open”

Cláusula firewall_script

Esta opção define o arquivo que contem as regras do firewall habilitado e onde ele se encontra. O padrão é /etc/rc.firewall. Esta cláusula de ser utilizada no seguinte modelo:  firewall_script=”nome_do_arquivo”.

firewall_script=”/etc/ipfw.rules”

Cláusula powerd

Por meio desta opção é possível habilitar o controle das opções de energia no FreeBSD. Para habilitar este recurso insira a seguinte linha no arquivo /etc/rc.conf:

powerd_enable=”YES”

Inicialização de serviços

O arquivo /etc/rc.conf é o responsável também por inicializar serviços e programas que desejamos iniciar juntamente com o sistema. Isso significa que ao instalar um software no sistema, a forma ideal para configurá-lo para iniciar com o boot é inserindo uma entrada no sistema. Abaixo listamos alguns exemplos de inicialização de serviços no boot:

apache24_enable=”YES”

Esta opção inicializa o Daemon do Apache juntamente com o sistema.

samba_enable=”YES”

esta opção habilita o Daemon do Samba para iniciar o juntamente com o boot do sistema.

ftpd_enable=”YES”

esta opção habilita o Daemon do serviço FTP para iniciar juntamente com o sistema.

named_enable=”YES”

Esta opção habilita o Daemon do serviço DNS, servidor de nomes, para iniciar juntamente com o boot do sistema.

 squid_enable=”yes”

Esta opção habilita o Daemon do Squid para iniciar com o boot do sistema.

Considerações Finais

O aquivo /etc/rc.conf é um dos principais arquivos de configuração do FreeBSD, existem dezenas de opções que podem ser configuradas nele, porém apresentamos neste artigo apenas as principais. Para mais informações, consultar a página de manual do arquivo /etc/rc.conf no link https://www.freebsd.org/cgi/man.cgi?rc.conf(5).

Espero que o conteúdo tenha sido útil, em caso de dúvidas utilize os comentários.






Sobre o Autor

Foto de perfil de Leonardo Souza
Leonardo Souza
Bacharel em Informática, pós graduado em Segurança de Redes de Computadores e analista de Segurança da Informação. Entusiasta de Segurança da Informação e usuário FreeBSD, porém sem xiismo.




0 Comments


Seja o Primeiro a Comentar!


You must be logged in to post a comment.