User Tools

Site Tools


informatica:firewall_router_2009

Ordinador firewall-router de la xarxa interna (2009)

Aquesta pàgina conté la descripció del firewall-router instal·lat l'any 2009, i, excepte el preàmbul, el contingut és còpia del que hi havia a router_firewall amb el títol original: Encaminador/Tallafocs (Router/Firewall)

El motiu de copiar aquesta pàgina aquí, quan estic a punt de substituir l'ordinador, és que vull tenir un registre històric dels canvis fets a la configuració de la xarxa del Servei de RMN.

Preàmbul

A finals de 2008 vàrem decidir substituir el firewall-router original, que alhora funcionava també com a servidor de dades, per dos ordinadors: un funcionaria exclusivament com a firewall-router de la xarxa interna, i l'altre faria de servidor del servei i allotjaria els serveis d'Internet del SeRMN.

L'ordinador substituït l'any 2009 era un Tulip Vision Line amb un processador Intel Pentium a 166 MHz que havíem fet servir com a servidor de dades des de 2006. Pel nou firewall-router varem decidir aprofitar un dels ordinadors Hewlett Packard NetServer E60 500 que havien arribat amb els espectròmetres DPX-250 i que havíem decidit substituir per un de més potent. El NetServer E60 500 tenia un processador Intel Pentium III a 500 MHz que ens va semblar tenia unes prestacions suficients per funcionar com a tallafocs.

Pel servidor vàrem optar per comprar un HP Proliant ML110 G5 i instal·lar-ho a la xarxa interna del servei, protegit pel tallafocs. Al nou ordinador es va destinar principalment a funcionar com a servidor de dades (ProFTPD), portal de reserves (Bumblebee), i blog del servei (WordPress).

Descripció

L'ordinador que s'encarrega actualment [NOTA: estem a l'any 2009] de connectar la xarxa interna del SeRMN amb la xarxa de la UAB ja és força obsolet i cada dia està més a prop del seu final. A sobre, no només fa d'encaminador (router) entre ambdues xarxes, sinó que també fa de servidor de dades i gestiona l'accés restringit als espectròmetres, alhora que incorpora un senzill tallafocs (firewall). Per evitar haver de córrer el dia que finalment peti, he decidit substituir-lo per dos ordinadors, un dedicat específicament a fer d'encaminador/tallafocs i un altre que funcionarà com a servidor web, wiki, etcétera, alhora que també donarà accés a les dades als espectròmetres mentre no es posa en marxa un servidor NAS dedicat.

Com a tallafocs tinc previst fer servir un dels ordinadors Hewlett Packard NetServer E60 500 substituïts als espectròmetres DPX-250, i deixar el segon com a reserva i font de peces de recanvi. L'ordinador que es faci servir caldrà actualitzar-lo:

Algunes d'aquestes modificacions no són necessàries per les primeres proves i es poden fer posteriorment, un cop ja estigui en marxa.

M'he de baixar els manuals on-line del NetServer E60 disponibles al website d'Hewlett Packard.

Instal·lació i configuració del M0n0wall

Instal·lació

Configuració

Definir les diferents adreces IP, que hi ha a la WAN.

Enllaços d'interès

  • Altres
    • No sé si serviria pel m0n0wall, però ferm is a tool to maintain complex firewalls, without having the trouble to rewrite the complex rules over and over again. ferm allows the entire firewall rule set to be stored in a separate file, and to be loaded with one command. The firewall configuration resembles structured programming-like language, which can contain levels and lists.

Configuració de xarxa dels servidors

El problema

Ahir (2009-01-29) per la tarda em vaig posar a esbrinar perquè les connexions als servidors virtuals de vegades semblen no funcionar i fins i tot arriben a exhaurir el temps de connexió sense respondre. Em va sorprendre veure que ifconfig -a no donava cap estadística de tràfic per eth0 i que netstat -rn o route mostraven una ruta duplicada. Vaig sospitar que el problema tenia a veure amb això i una cerca al Google ho va confirmar.

A l'enllaç LinuxQuestions.org: Why can I not ping two networks? un usuari plantejava una situació semblant a la nostra. Té dues targetes de xarxa, totes dues amb adreces IP a la mateixa xarxa, eth0 és 192.168.0.2 i eth1 és 192.168.0.99. Quan fa un ping a la segona IP, obté una resposta. Quan ho fa a la primera IP, la resposta és unreachable, però si indica que faci el ping a través d'eth0 llavors sí que obté una resposta. El diagnòstic del problema és que té totes dues targetes assignades a la mateixa xarxa, i que de les dues rutes definides, Linux només fa servir la primera ruta vàlida que troba a la taula de rutes. La solució és que faci servir la màscara de xarxa per assignar un rang d'adreces (xarxa) diferent a cada interfície de forma que no hi hagi duplicitat de rutes a la taula de rutes.

Aquest és exactament el nostre cas, eth0 té assignada la IP 192.168.0.20/255.255.255.0 i eth1 la IP 192.168.0.21/255.255.255.0, i la taula de rutes resultant és,

$ sudo route -n
Password:
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     *               255.255.255.0   U     0      0        0 eth1
192.168.1.0     *               255.255.255.0   U     0      0        0 eth0
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth1

on es pot comprovar la duplicitat de rutes.

La solució

Per resoldre aquest problema, seguint les recomanacions de l'enllaç anterior, he decidit assignar les interfícies a xarxes separades, definint rangs dins de 192.168.0.x, Per això he fet servir una calculadora d'adreces IP disponible a la Internet.

El resultat és una subxarxa 192.168.0.0/25 assignada a eth0 amb el rang d'adreces 192.168.0.1-126

Address:   192.168.0.1           11000000.10101000.00000000.0 0000001
Netmask:   255.255.255.128 = 25  11111111.11111111.11111111.1 0000000
Wildcard:  0.0.0.127             00000000.00000000.00000000.0 1111111
=>
Network:   192.168.0.0/25        11000000.10101000.00000000.0 0000000 (Class C)
Broadcast: 192.168.0.127         11000000.10101000.00000000.0 1111111
HostMin:   192.168.0.1           11000000.10101000.00000000.0 0000001
HostMax:   192.168.0.126         11000000.10101000.00000000.0 1111110
Hosts/Net: 126                   (Private Internet)

i una subxarxa 192.168.0.128/25 assignada a eth1 amb el rang d'adreces 192.168.0.129-254

Address:   192.168.0.128         11000000.10101000.00000000.1 0000000
Netmask:   255.255.255.128 = 25  11111111.11111111.11111111.1 0000000
Wildcard:  0.0.0.127             00000000.00000000.00000000.0 1111111
=>
Network:   192.168.0.128/25      11000000.10101000.00000000.1 0000000 (Class C)
Broadcast: 192.168.0.255         11000000.10101000.00000000.1 1111111
HostMin:   192.168.0.129         11000000.10101000.00000000.1 0000001
HostMax:   192.168.0.254         11000000.10101000.00000000.1 1111110
Hosts/Net: 126                   (Private Internet)

Això ens permetrà mantenir la configuració 192.168.0.1/24 de la interfície de LAN a l'encaminador,

Address:   192.168.0.1           11000000.10101000.00000000 .00000001
Netmask:   255.255.255.0 = 24    11111111.11111111.11111111 .00000000
Wildcard:  0.0.0.255             00000000.00000000.00000000 .11111111
=>
Network:   192.168.0.0/24        11000000.10101000.00000000 .00000000 (Class C)
Broadcast: 192.168.0.255         11000000.10101000.00000000 .11111111
HostMin:   192.168.0.1           11000000.10101000.00000000 .00000001
HostMax:   192.168.0.254         11000000.10101000.00000000 .11111110
Hosts/Net: 254                   (Private Internet)

Configuració final de xarxa de l'encaminador

Aquesta és la configuració de la WAN assignada pel servidor de DHCP a la MAC 00:0e:18:c2:16:e2,

MAC:       00:0e:18:c2:16:e2
Hostname:  sermn.uab.es          (sermn.uab.cat)
Address:   158.109.58.175        10011110.01101101.00111010.1010 1111
Netmask:   255.255.255.240 = 28  11111111.11111111.11111111.1111 0000
Wildcard:  0.0.0.15              00000000.00000000.00000000.0000 1111
=>
Network:   158.109.58.160/28     10011110.01101101.00111010.1010 0000 (Class B)
Broadcast: 158.109.58.175        10011110.01101101.00111010.1010 1111
HostMin:   158.109.58.161        10011110.01101101.00111010.1010 0001
HostMax:   158.109.58.174        10011110.01101101.00111010.1010 1110
Hosts/Net: 14

Aquesta MAC té assignada una segona adreça IP que correspon al hostname oldmrui.uab.cat (quan es faci el trasllat definitiu des de sermn02.uab.cat, el nom es canviarà a mrui.uab.cat),

MAC:       00:0e:18:c2:16:e2
Hostname:  mrui.uab.es           (mrui.uab.cat)
Address:   158.109.58.236        10011110.01101101.00111010.1110 1100
Netmask:   255.255.255.240 = 28  11111111.11111111.11111111.1111 0000
Wildcard:  0.0.0.15              00000000.00000000.00000000.0000 1111
=>
Network:   158.109.58.224/28     10011110.01101101.00111010.1110 0000 (Class B)
Broadcast: 158.109.58.239        10011110.01101101.00111010.1110 1111
HostMin:   158.109.58.225        10011110.01101101.00111010.1110 0001
HostMax:   158.109.58.238        10011110.01101101.00111010.1110 1110
Hosts/Net: 14

Pel que fa a la LAN, aquesta és la configuració,

MAC:       00:50:04:e8:a5:30
Hostname:  sermn.sermn.net
Address:   192.168.1.1           11000000.10101000.00000001 .00000001
Netmask:   255.255.255.0 = 24    11111111.11111111.11111111 .00000000
Wildcard:  0.0.0.255             00000000.00000000.00000000 .11111111
=>
Network:   192.168.1.0/24        11000000.10101000.00000001 .00000000 (Class C)
Broadcast: 192.168.1.255         11000000.10101000.00000001 .11111111
HostMin:   192.168.1.1           11000000.10101000.00000001 .00000001
HostMax:   192.168.1.254         11000000.10101000.00000001 .11111110
Hosts/Net: 254                   (Private Internet)

He configurat l'opció DNS Forwarder Overrides del m0n0wall de forma que pels ordinadors a la LAN

  • el hostname sermn.uab.cat/es es correspon amb la IP 192.168.1.2 (sermnserver.sermn.net), i
  • el hostname oldmrui.uab.cat/es es correspon amb la IP 192.168.1.129 (mruiserver.sermn.net).

Configuració final dels virtual host

L'ordinador on es troben allotjats els servidors virtuals disposa de dues targetes ethernet assignades als servidors sermnserver.sermn.net i mruiserver.sermn.net.

La configuració de sermnserver.sermn.net és la següent,

MAC:       00:e0:7d:84:df:07
Hostname:  sermnserver.sermn.net
Address:   192.168.1.2           11000000.10101000.00000001.0 0000010
Netmask:   255.255.255.128 = 25  11111111.11111111.11111111.1 0000000
Wildcard:  0.0.0.127             00000000.00000000.00000000.0 1111111
=>
Network:   192.168.1.0/25        11000000.10101000.00000001.0 0000000 (Class C)
Broadcast: 192.168.1.127         11000000.10101000.00000001.0 1111111
HostMin:   192.168.1.1           11000000.10101000.00000001.0 0000001
HostMax:   192.168.1.126         11000000.10101000.00000001.0 1111110
Hosts/Net: 126                   (Private Internet)

i la configuració de mruiserver.sermn.net és la següent,

MAC:       00:05:1c:0c:06:b1
Hostname:  mruiserver.sermn.net
Address:   192.168.1.129         11000000.10101000.00000001.1 0000001
Netmask:   255.255.255.128 = 25  11111111.11111111.11111111.1 0000000
Wildcard:  0.0.0.127             00000000.00000000.00000000.0 1111111
=>
Network:   192.168.1.128/25      11000000.10101000.00000001.1 0000000 (Class C)
Broadcast: 192.168.1.255         11000000.10101000.00000001.1 1111111
HostMin:   192.168.1.129         11000000.10101000.00000001.1 0000001
HostMax:   192.168.1.254         11000000.10101000.00000001.1 1111110
Hosts/Net: 126                   (Private Internet)

Taula de rutes

Un cop fets aquests canvis, la taula de rutes que resulta és la següent,

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     0.0.0.0         255.255.255.128 U     0      0        0 eth1
192.168.1.128   0.0.0.0         255.255.255.128 U     0      0        0 eth0
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth1

una comanda alternativa és ip route show.

Resolució d'adreces IP a partir del hostname

El contingut del fitxer /etc/hosts s'ha completat amb les correspondències hostname-adreça IP de la xarxa local,

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
#
127.0.0.1 localhost localhost.localdomain
#
192.168.1.1 sermn.sermn.net
192.168.1.2 cie-58-175b.sermn.net cie-58-175b sermnserver.sermn.net sermnserver
192.168.1.129 mruiserver.sermn.net mruiserver

I el fitxer /etc/host.conf s'ha modificat per indicar que a l'hora de resoldre adreces IP a partir d'un hostname primer s'ha de consultar el fitxer /etc/hosts i, si no es resol, el servidor de noms,

order hosts,bind
multi on

Finalment, aquesta és la configuració

# cat /etc/resolv.conf
search uab.es
nameserver 192.168.1.1

Local hostname

Addicionalment, aquests canvis fan que es pugui obtenir el nom del servidor, tan el nom principal i àlies,

# hostname -a
cie-58-175b  sermnserver.sermn.net  sermnserver

com el FQDN (Fully Qualified Domain Name),

# hostname -f
cie-58-175b.sermn.net

Bibliografia

Enllaços

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
informatica/firewall_router_2009.txt · Last modified: 2020/07/09 12:46 by miquel