O Caso do 386SX como roteador
Piter PUNK
Neste artigo iremos ensinar como transformar um 386SX com apenas 4MB de RAM em um roteador �til e funcional. � o linux (mais uma vez) salvando a p�tria e dando uso a um computador considerado (por alguns) como in�til.
1. A m�quina
- 386SX
- 4MB de RAM
- 110MB de HD
- Placa de rede NE2000 ISA
- Modem US-Robotics 33600 ISA
2. Instala��o
O Linux utilizado foi o Slackware 7.1, poderia ser o 7.0 tamb�m. Em
geral, � melhor utilizar o kernel 2.0.x por�m, o objetivo desse artigo
� escrever um firewall e existe muito mais documenta��o sobre o ipchains
(da s�rie 2.2.x) do que sobre o ipfwadm (da s�rie 2.0.x). Se voc�
souber usar o ipfwadm, instale o Slackware 3.3 ou 96, voc� ter� um
desempenho melhor.
O primeiro passo da instala��o, � retirar o HD do 386 e colocar em
outro computador mais possante, coloque-o como master da prim�ria.
Insira o CD do Slackware e d� o boot pelo CD-ROM.
N�o existe segredo aqui, eu particionei o meu HD assim:
/ /dev/hda1 102MB
swap /dev/hda2 8MB
e sobrou espa�o no /. Como sobrou espa�o, � mais inteligente fazer
assim:
/ /dev/hda1 90MB
/tmp /dev/hda2 12MB
swap /dev/hda3 8MB
Assim, voc� pode montar a parti��o / como read-only e desligar e ligar
o computador direto, sem a necessidade de um shutdown. Tenha em mente, que
os logs do sistema ter�o que ser desligados ou enviados para outra m�quina,
j� que nesta tudo opera em read-only. Se voc� prefere manter seus logs no
pr�prio roteador, utilize a particao / como rw (ou faca uma /var separada).
Depois do reparticionamento,
inicie o programa de instala��o e siga as instru��es normalmente.
Lembre-se de quando for formatar a parti��o, escolher 1024 bytes por
inode.
Instale as s�ries A e N no modo menu, para que voc� possa retirar tudo
aquilo que n�o for utilizar. Instale apenas o necess�rio para as func�es
de router e firewall. A minha instala��o deu 67MB, mas nada impede
que a sua seja menor. Aten��o! N�o tente detectar a sua placa de rede,
lembre-se que no 386 ser� outra placa! Depois do Linux instalado,
reboote a m�quina (mas n�o devolva o HD para o 386. n�o ainda).
3. Configura��o
Agora, vamos configurar a m�quina. Se voc� seguiu a minha dica de particionamento,
seu /etc/fstab dever� ficar assim:
/dev/hda1 / ext2 ro 1 1
/dev/hda2 /tmp ext2 defaults 1 1
/dev/hda3 swap swap defaults 0 0
none /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0
Se voc� n�o tem parti��es separadas para o /tmp e para o /, n�o coloque
o / como read-only, voc� ter� problemas com isso.
Depois de editar o /etc/fstab, � importante editar o /etc/lilo.conf,
comente as linhas que dizem: prompt e timeout. Rode o lilo. Com estas
altera��es voc� garante que o computador vai iniciar automaticamente.
Tamb�m deve ser editado /etc/rc.d/rc.S, em uma linha em que est� escrito:
/sbin/mount -w -v -n -o remount /
Deve ficar:
/sbin/mount -r -v -n -o remount /
Isto � feito para que o sistema de arquivos / nao seja remontado como para escrita-leitura (assim a gente obriga a ficar apenas leitura).
Como a m�quina em que vamos rodar possui pouqu�ssima mem�ria, � necess�rio
diminuir ao m�ximo a quantidade gasta. Um dos m�todos � deixando-a
com apenas um console virtual. Para fazer isso, edite o /etc/inittab,
onde voc� achar:
c1:12345:respawn:/sbin/agetty 38400 tty1 linux
c2:12345:respawn:/sbin/agetty 38400 tty2 linux
cn:12345:respawn:/sbin/agetty 38400 ttyn linux
Apague todas as linhas deixando apenas a primeira (c1). O pr�ximo passo
� retirar os servidores desnecess�rios editando o /etc/rc.d/rc.inet2,
infelizmente, s� voc� pode saber o que � e o que n�o � necess�rio
no seu computador.
Por �ltimo, edite o /etc/rc.d/rc.modules e comente as seguintes linhas:
if cat /proc/ksyms | grep "\[parport_pc\]" 1> /dev/null 2> /dev/null; then
echo "parport0 is built-in, not loading module" > /dev/null
else
if [ -r /lib/modules/`uname -r`/misc/parport_pc.o ]; then
# Generic setup example:
/sbin/modprobe parport_pc
# Hardware specific setup example (required for PLIP and better
# performance in general):
#/sbin/modprobe parport_pc io=0x378 irq=7
fi
fi
Comente ou apague todas elas... elas s�o respons�veis pelo carregamento
do m�dulo da porta paralela, s� perda de mem�ria. Tamb�m remova as
seguintes linhas:
if cat /proc/ksyms | grep "\[lp\]" 1> /dev/null 2> /dev/null ; then
echo "lp support built-in, not loading module" > /dev/null
else
if [ -r /lib/modules/`uname -r`/misc/lp.o ]; then
/sbin/modprobe lp
fi
fi
Ainda no rc.modules, voc� deve habilitar o suporte para a sua placa
de rede, eu descomentei a linha:
/sbin/modprobe ne io=0x300 irq=7
Certifique-se de que o ppp tamb�m est� sendo carregado. E descomente
as linhas apropriadas sobre os m�dulos do ip masquerading...
/sbin/modprobe ip_masq_irc
/sbin/modprobe ip_masq_ftp
/sbin/modprobe ip_masq_user
Estes s�o os que eu uso, dependendo do que voc� utiliza na internet,
deve descomentar alguns dos outros m�dulos. Agora � s� rodar o ppp-setup
e configurar o seu modem.
Por �ltimo, edite o /etc/rc.d/rc.local e insira as seguintes linhas:
/sbin/ipchains -A forward -j MASQ
ifconfig eth0 down
ppp-on
ifconfig eth0 up
Aten��o! Isso apenas habilita o roteamento e o masquerading! Se voc�
quiser um firewall decente, leia os v�rios HOWTOs escritos sobre esse
assunto!
Devolva o HD para o 386 e ligue-o. Automaticamente ele vai entrar no
Linux e conectar na internet -:) Se voc� instalou o root como read-only,
pode desligar normalmente no power. Caso contr�rio CTRL+ALT+DEL para
desligar.
4. Conclus�o
Agora voc� possui um roteador, e arranjou um (bom) uso para o seu velho 386, com o Linux � assim. Sempre existe algum uso para o seu computador. Esta � apenas a primeira parte de uma s�rie de artigos sobre como ressuscitar micros antigos. Mande sugest�es ou cr�ticas para [email protected]
|