====== Configuração de Rede ======
==== Sobre a Rede ====
Por padrão o SliTaz executa, no momento do boot, um cliente DHCP (udhcpc) na interface //eth0//. Se a sua placa de rede for identificada como sendo de interface eth0 e se você usar um roteador, sua conexão provavelmente estará funcionando. O DHCP é configurado dinamicamente: a cada boot o cliente requisita do servidor DHCP um novo endereço IP, o qual é integrado ao roteador ou a outro computador. Se for necessária a utilização de um IP estático, pode-se editar diretamente os arquivos de configuração ou usar a aba //Network// no menu //Ferramentas do Sistema// -> //SliTaz Panel//. Em um terminal ou no console Linux você pode listar todas as interfaces de rede disponíveis com o comando //ifconfig// seguido da opção //-a//:
$ ifconfig -a
Para mostrar a tabela de roteamento de IP do Kernel, você pode usar o comando //route// sem nenhum argumento:
$ route
O arquivo de configuração geral de rede é o ///etc/network.conf//. Ele pode ser graficamente configurado na aba //Network// do Slitaz Panel ou editado diretamente pelo administrador //root//.
===== Netbox - Configure a rede (SliTaz 4.0) =====
O Netbox é um pequeno aplicativo GTK+ que configura a interface de rede usando DHCP ou um endereço IP estático. As abas podem ser usada para iniciar/parar conexões e mudar automaticamente o valor dos arquivos de sistema. Ele provê uma aba geral de sistema pela qual pode-se editar diretamente os arquivos de configuração de rede, e abas para configurar nomes de usuário e senhas para conexões PPP/PPPoE. Servidores como SSH, DHCP, PXE e DNS também podem ser configurados por este aplicativo e é possível criar a própria rede privada virtual (VPN) utilizando-se as ferramentas disponíveis.
{{en:handbook:image:netbox.png}}
Pode-se iniciar o netbox a partir do menu das ferramentas do sistema ou pelo terminal:
$ subox netbox
===== Wifibox - Utilitário Gráfico para Configuração de Redes Sem Fio (SliTaz 4.0 e 5.0 Weekly)=====
O Wifi-box é uma interface para configurar uma conexão de rede (Wifi, WLAN ou Wireless). A aba "Networks" mostra uma lista de redes disponíveis, para conectar a uma delas basta um duplo clique sobre o nome da rede. Se a rede é segura, uma chave de acesso será então solicitada.
{{en:handbook:image:wifibox.png}}
A aba "Favorites" permite configurar as redes preferidas. Uma vez que a rede tenha sido adicionada, pode-se clicar duas vezes sobre o nome da rede para iniciar a conexão. A aba "Configuration" permite configurar a conexão manualmente usando configurações avançadas como o modo (mode) ou canal (channel). A aba "Drivers" permite configurar a placa de rede; há 3 opções:
* A placa é suportada diretamente pelo kernel por meio de um módulo.
* A placa precisa de um módulo e de um firmware não livre que pode ser instalado automaticamente pela ferramenta de auto-detecção (tazhw).
* A placa não é suportada pelo Linux e drivers para o Windows devem ser instalado pelo gerenciador de drivers para Windows (tazndis).
Pode-se executar o wifi-box via terminal:
# wifi-box
===== /etc/hostname - Nome do Host =====
O arquivo ///etc/hostname// configura o nome da máquina. Ele é carregado durante a inicialização do sistema com o comando 'hostname', sem argumentos este comando retorna o nome atual da máquina:
$ hostame
Para mudar o nome de host, pode-se usar o comando echo ou um editor de texto disponível no SliTaz (como root). Exemplo usando o comando //echo// e com o nome de máquina //kayam//:
# echo "kayam" > /etc/hostname
===== /etc/network.conf =====
O arquivo ///etc/network.conf// é responsável pela configuração da rede no SliTaz. Sua sintaxe é simples e pode-se editar seu conteúdo com um editor de texto como o Nano. É utilizado pelo script ///etc/init.d/network.sh// para configurar a interface de rede no momento do boot.
===== IP Dinâmico - Cliente DHCP udhcpc =====
O cliente DHCP udhcpc fornecido pelo Busybox usa o arquivo ///usr/share/udhcpc/default.script// para obter um endereço IP automaticamente durante o boot. Suporta várias opções que podem ser listadas pela opção //--help//:
# udhcpc --help
Para desabilitar o udhcpc na eth0 ou modificar a interface (por exemplo, eth1), deve-se editar o arquivo ///etc/network.conf// e atribuir o valor "no" para a variável DHCP:
# Dynamic IP address.
# Enable/disable DHCP client at boot time.
DHCP="no"
===== IP Estático - Usando um endereço específico =====
Pode-se especificar um endereço IP fixo a ser configurado durante o boot atribuindo o valor "yes" à variável STATIC:
# Static IP address.
# Enable/disable static IP at boot time.
STATIC="yes"
Para a configuração funcionar, deve-se especificar um endereço IP, a máscara de rede, gateway padrão e servidor DNS primário a ser utilizado. Exemplo:
# Set IP address, and netmask for a static IP.
IP="192.168.0.6"
NETMASK="255.255.255.0"
# Set route gateway for a static IP.
GATEWAY="192.168.0.1"
# Set DNS server. for a static IP.
DNS_SERVER="192.168.0.1"
===== Rotas estáticas =====
Rotas estáticas podem ser adicionadas a qualquer momento pelo comando //route add//:
route add -net 192.168.20.0 netmask 255.255.255.0 gw 192.168.21.2
A rota estática vai permanecer ativa até que ocorra o próximo reinício do sistema.
Para torná-la permanente, adicione-a ao script ///etc/init.d/local.sh//.
===== Conexão PPPoE em modo-kernel =====
Conexão PPPoE em modo-Kernel necessita de 2 arquivos. O primeiro arquivo é o ///etc/ppp/options// no qual você deve especificar seu login:
plugin rp-pppoe.so
name
noipdefault
defaultroute
mtu 1492
mru 1492
lock
Você também deve configurar o arquivo ///etc/ppp/pap-secrets// ou o ///etc/ppp/chap-secrets//:
# client server secret IP addresses
"seu_login" * "sua_senha"
O arquivo de configuração ///etc/resolv.conf// será automaticamente carregado. Terminada a configuração, você pode conectar-se à internet com o comando pppd:
# pppd eth0
Em um sistema instalado você pode iniciar o pppd a cada boot usando o script de inicialização local: ///etc/init.d/local.sh//
===== Habilite uma conexão ADSL- PPPoE com rp-pppoe =====
Para configurar um protocolo ADSL via PPPoE, o SliTaz fornece o utilitário rp-pppoe. Usar pppoe-setup permite uma rápida configuração da rede. Se você usar DHCP é fica mais simples ainda, em decorrência de o servidor de seu provedor de acesso encarregar-se de tudo. Se você não possuir DHCP, deve primeiro desabilitar seu uso via a opção DHCP="no" do arquivo de configuração ///etc/network.conf//. Deve-se notar que para modificar os arquivos de configuração e os logs do sistema você deve primeiro tornar-se root. Para instalar e mudar a variável DHCP com o Nano (ctrl + x para salvar & sair):
$ su
# tazpkg get-install rp-pppoe
# nano /etc/network.conf
=== Configure sua internet com pppoe-setup ===
Para iniciar a configuração de sua conexão PPPoE, deve-se primeiro abrir o Xterm ou o console Linux e executar //pppoe-setup// para então começar a responder as seguintes questões:
# pppoe-setup
- Informe seu nome de usuário. Por favor note que este é o nome de usuário que você utiliza para comunicar-se com seu provedor de acesso.
- Interface de internet: o padrão é eth0 ao menos que você possua mais de uma. Neste caso haverá eth1, eth2, etc. Geralmente teclar ENTER é suficiente.
- Se você possuir um link ADSL permanente responda //yes//, do contrário responda //no// (resposta padrão).
- Especifique o DNS primário e secundário de seu provedor de acesso (você precisa pedir essa informação).
- Entre com a senha com a qual você se comunica com seu provedor de acesso (será necessário informá-la duas vezes).
- Escolha as configurações de firewall dependendo de seu hardware. Se você possuir um roteador você pode teclar 1 ou 2. Na dúvida, tecle 1.
==== Inicie e pare a conexão ====
Ainda usando a linha de comando, simplesmente digite //pppoe-start// para iniciar a conexão. Após alguns segundos o sistema informará que você está conectado. Se ele mostrar uma mensagem como TIMED OUT você deve ter configurado incorretamente a conexão ou ela pode estar defeituosa. Por favor verifique a fiação e repita a instalação desde o início.
Para iniciar a conexão:
# pppoe-start
Para parar a conexão, digite:
# pppoe-stop
Para verificar o status da conexão:
# pppoe-status
===== Instale um driver de placa de rede =====
Caso haja a necessidade de um driver de placa de rede e você não sabe o seu nome, pode-se utilizar o comando //lspci// para encontrar sua placa e então o comando //modprobe// para carregar o módulo correspondente. No modo Live você pode usar a opção de boot do SliTaz //modprobe=modules// para carregar automaticamente módulos do Kernel. Para obter uma lista de todos os drivers de placa de rede disponíveis, mostrar placas PCI eth e carregar um módulo:
# modprobe -l | grep drivers/net
# lspci | grep [Ee]th
# modprobe -v module_name
Em um sistema já instalado você só precisa adicionar o nome do módulo à variável LOAD_MODULES em ///etc/rcS.conf// para carregar seu módulo a cada boot.
===== Gerencie o Firewall (firewall) usando o Iptables =====
O SliTaz fornece um firewall básico em que as regras de segurança do Kernel são executadas no momento do boot e as regras do Iptables estão desabilitadas por padrão. Pode-se ativar/desativar isto no momento da inicialização usando-se o arquivo de configuração ///etc/firewall.conf//.
O script de firewall padrão inicia-se com suas próprias diretivas para o Kernel, isto é, redirecionamentos ICMP, roteamento fonte, logs para endereços não resolvidos e filtros spoof. O script então executa as regras definidas na função iptables_rules() do arquivo de configuração ///etc/firewall.conf//.
O firewall usa o Iptables, que consiste em dois arquivos, o ///etc/firewall.conf// e o ///etc/init.d/firewall// - você não precisa modificá-los. Note que o Iptables possui diversas opções, para maiores informações veja a documentação oficial disponível online: www.netfilter.org/documentation/.
==== Inicie, pare e reinicie o firewall ====
O script ///etc/init.d/firewall// permite a você iniciar/reiniciar, parar ou mostrar o status do firewall. A opção de reinicio é geralmente usada para testar novas regras adicionadas após a edição do arquivo de configuração. Exemplo:
# /etc/init.d/firewall restart
==== Habilite/desabilite o firewall no momento do boot ====
Para habilitar/desabilitar opções específicas do Kernel defina "yes" ou "no" na variável KERNEL_SECURITY= :
# Enable/disable kernel security at boot time.
KERNEL_SECURITY="yes"
E para ativar/desativar as regras do iptables, é necessário modificar a variável IPTABLES_RULES= :
# Enable/disable iptables rules.
IPTABLES_RULES="yes"
==== Adicione, remova ou modifique regras do iptables ====
Na parte inferior do arquivo de configuração ///etc/firewall.conf// você encontra uma função chamada iptables_rules(). Esta função contem todos os comandos do iptables executados quando o firewall é iniciado. Para remover uma regra, é recomendável apenas comentar a linha correspondente com #. Não é recomendável deixar a função totalmente vazia: se você quiser desabilitar as regras do iptables apenas adicione "no" à variável IPTABLES_RULES= no arquivo de configuração.
Abaixo um exemplo usando as regras do iptables. Aqui permitimos somente conexões ao host local e à rede local, sendo que as portas 80, 22 e 21 são usadas pelo servidor web, pelo servidor SSH e pelo servidor FTP, respectivamente. Todas as outras conexões de entrada e saída são recusadas - note que esta é uma configuração bem restritiva.
# Netfilter/iptables rules.
# This shell function is included in /etc/init.d/firewall.sh
# to start iptables rules.
#
iptables_rules()
{
# Drop all connections.
iptables -P INPUT DROP
iptables -P OUTPUT DROP
# Accept all on localhost (127.0.0.1).
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# Accept all on the local network (192.168.0.0/24).
iptables -A INPUT -s 192.168.0.0/24 -j ACCEPT
iptables -A OUTPUT -d 192.168.0.0/24 -j ACCEPT
# Accept port 80 for the HTTP server.
iptables -A INPUT -i $INTERFACE -p tcp --sport 80 -j ACCEPT
iptables -A OUTPUT -o $INTERFACE -p tcp --dport 80 -j ACCEPT
# Accept port 22 for SSH.
iptables -A INPUT -i $INTERFACE -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -o $INTERFACE -tcp --sport 22 -j ACCEPT
# Accept port 21 for active FTP connections.
iptables -A INPUT -i $INTERFACE -p tcp --dport 21 -j ACCEPT
iptables -A OUTPUT -i $INTERFACE -p tcp --sport 21 -j ACCEPT
}