| HOEDOE ik een dedicated gateway/firewall opzetten? |
|
auteur: Maurice, geplaatst: 2001-09-16, laatste update: 2001-09-16, populariteit:     19900+ |
|
Linux is ontzettend handig om van je i386 of hoger een gateway/firewall te maken. Hoewel handig, het kan in ieder geval. Je moet toch het een en ander weten over ipchains, masquerading, portforwarding, etc. En ook al denk je alles onder controle te hebben, voordat je het weet heb je een poort teveel open staan en wordt je system gecrackt.
Zie ook de volgende artikelen:
Firewall en Masquerading (kabelmodem) HOEDOE
Portblocking (My Way) HOEDOE
Basis Security HOEDOE
Maar hoe zet je nu WEL gemakkelijk een gateway/firewall op onder Linux?
1. Newbies
A gateway is a network point that acts as an entrance to another network , in dit geval Internet.
A firewall is a set of related programs, located at a network gateway server, that protects the resources of a private network from users from other networks.
Bron: http://www.whatis.com
Kortom, de gateway zorgt dat elke computer binnen je netwerk Internet op kan, en de firewall zorgt er voor dat 'Internet' niet jouw netwerk op kan. In een schema ziet dit er als volgt uit:
Op de computers binnen in het netwerk hoef je alleen maar je gateway op te geven (dus niks geen proxies e.d.) en een of meer DNS servers:
More terms:
ISP - Internet Service Provider
DNS - Domain Name Service (Server)
DHCP - Dynamic Host Control Protocol
WINS - Windows Internet Name Service (Server)
client - (usually in this manual) computer connected to local network
NAT - Network Address Translation
2. Gratis Cisco router!
Gratis Cisco router? Daar kan ik kort over zijn. Ga naar http://www.freesco.org en download daar de laatste Freesco versie.
FREESCO (stands for FREE ciSCO) is a free replacement for commercial routers supporting up to 3 ethernet/arcnet/token_ring/arlan network cards and up to 2 modems.
Why should you use Freesco?
- Ease of use - it's insanely easy to set up
- Thoroughly documented - it's more or less self contained, read one doc and you're off and running
- Like most players in this field, it runs off one floppy
- FreeSco runs in as little as 6 Mb RAM.
- Unique Web Control Panel
- Freesco is the easiest to use, one disk Linux system available
Freesco is dus een Linux distributie die op 1 diskette past (dus je hebt geen harddisk nodig!) en heeft dedicated gateway/firewall functionaliteiten... Het is zelfs configureerbaar via het web, op je LAN... (op WAN kan ook, maar da's dus niet veilig).
Features
De features van Freesco:
-Bridge mode
-Firewalling and Network Address Translation (dus portforwarding, handig als er een webserver of ftp-server op een andere computer in het netwerk draait).
-DNS Server
-DHCP Server
-HTTP Server (public and control purpose)
-Telnet server (only one connection per time)
-Print Server
-Remote Access Server (up to 2 modems)
-Time Server (altijd de juiste tijd)
Overige benodigdheden
Freesco zul je ondertussen wel gedownload hebben. Behalve Freesco heb je het volgende nodig voor een probleemloze installatie:
- CPU - any 386 or better
- FPU - not required
- RAM - min (with swap) 6 MB, normal (on the edge between swap/no swap) 8 MB, recommended 16 MB
- FDD - 1.44 MB
- HDD - not required for 8-16 MB RAM system, but recommended (for swap and for future extensions)
- Ethernet adapter(s) - 3COM509, 3COM595, 3COM905, Realtek NE2000 compatible, Realtek NE2000 PCI compatible, ISA/PCI NE2000 compatible supported out of box. Many more other adapters supported via additional drivers you have to add manually from supplementary pack (it's easy, just choose appropriate driver and drop it in a:\router\drv directory).
- Modem(s). Beware of winmodems, they will not work with FREESCO. If you have old 386/486 computer w/o FIFO'ed COM ports it's recommended to use internal modems as they come with built-in fast FIFO'ed port.
- Some brains
- TCP/IP networking knowledge (a must)
Mijn configuratie
- Amd 486DX5/133
- 16MB EDO RAM
- FDD
- @home PCI netwerk kaart (onder linux met 'tulip' module)
- Kloon netwerk kaart (onder linux met 'ne' module)
3. Configuratie voor kabelmodem
In dit hoofdstuk leg ik uit hoe je een gateway maakt voor @HOME. Dit zal niet veel verschillen van andere kabel-ISP's. Ik maak overigens alleen gebruik van de volgende features van Freesco:
- HTTP portforwarding (website op andere computer)
- FTP portforwarding (ftpsite op andere computer)
- DHCP client (voor door @HOME toegewezen IP, dus niet DHCP server)
- Telnet server
- Time server
Ik run uit gemakzucht Freesco vanaf diskette. Dit heeft geen negatieve gevolgen voor de snelheid t.o.v. installatie op harddisk, m.u.v. het booten. Tijdens het opstarten wordt alles namelijk naar het RAM gekopieerd.
Als je Freesco hebt gedownload maak je er een diskette van (make_fd.bat). Je stopt dit schijfje in je PC die je als gateway/firewall gaat gebruiken en boot het met 'setup'. Nu kan de lol beginnen...
Verzamel gegevens
Verzamel eerst de gegevens die je nodig hebt:
- Netwerkkaart IRQ's en IO adressen
- IP-adres van je @HOME gateway
- DNS servers van @HOME
- De door @HOME toegewezen computer naam (bv. cp55532-b)
- De netmask
Configuratie
In de handleiding op Freesco.org is het stukje over '4.5 Cable Modem-to-Ethernet router' niet ingevuld. Maar geen nood: met '4.4 Ethernet-to-Ethernet router' kom je heel ver. Ik zal proberen in dezelfde stijl als de documentatie verder te gaan. Tussen de [vierkante haakjes] staan de waarden die ik eerder al ingevuld had.
Three steps of setup:
1) choose router type and set it up
2) change advanced settings
3) save config, exit and reboot system
|
Kies 1, kies hierna
Host name, very useful in case of getting IP address via
DHCP client (for instance when connected to @HOME)
711 Hostname of this computer [cp55532-b]?
|
Vul hier de naam in die je van @HOME gekregen hebt, ga hier niet zelf iets verzinnen en vul niet het hele domeinnaam in. Deze naam wordt o.a. gebruikt bij het uitdelen van IP-adressen met DHCP...
Domain for your local network. Do not enter your ISP's domain
here, this should be a domain which doesn't exist on the internet.
People using some cable/dsl providers may need to add their ISP's
domain to the client machine(s) domain suffix search order.
712 Domain name [local.net]?
|
Vul hier je lokale domeinnaam in, verzin maar iets.
Autodetect modems now ? y/n [y]? n
8xx How many network interface cards do you have (1-3) [ ]? 2
Enter the I/O port and IRQ of any ISA network cards here. I/O
addresses must begin with 0x. PCI network cards ignore these
settings so both should be set to 0.
811 I/O port address of 1st ethernet card [0x6000]?
812 IRQ line of 1st ethernet card [11]?
821 I/O port address of 2nd ethernet card [0x240]?
822 IRQ line of 2nd ethernet card [10]?
|
Dit is het moeilijkste gedeelte: de netwerkkaarten aan de gang krijgen. Let op dat 'first' network interface de interface is, waar het kabelmodem op aan zit gesloten. Dit is namelijk de enige interfaces die een dynamische IP (DHCP client) kan hebben.
When connected to the internet in ethernet router mode, 1st network
interface is the one which must go to the internet connection. By
default this is eth0, but you can change it here.
720 Use DHCP client to configure 1st network interface y/n [y]?
721 Interface name of 1st network, eth0/eth1/eth2 etc [eth1]?
724 IP address of 1st network interface [212.120.87.24]?
725 Network mask [255.255.252.0]?
IP range for DHCP server, '-' - disable DHCP service on this interface.
Example: 192.168.168.100 192.168.168.200
NOTE: DHCP daemon eats memory for this pool, so be realistic
and don't reserve too many addresses. Dont include freesco's
own address in this range.
726 IP range [ ]?
731 Interface name of 2nd network eth1/eth0:1/eth2 etc [eth0]?
732 IP address of 2nd network interface [192.168.0.254]?
733 Network mask [255.255.255.0]?
IP range for DHCP server, '-' - disable DHCP service on this interface.
Example: 192.168.168.100 192.168.168.200
NOTE: DHCP daemon eats memory for this pool, so be realistic
and don't reserve too many addresses. Dont include freesco's
own address in this range.
734 IP range [ ]?
|
Vul bij network mask van de eerste interface de netmask van @HOME in, bij de tweede netmask de netmask van je interne netwerk. Bij IP range vul je een '-' in.
411 Enable caching DNS server y/s/n [n]?
421 Enable DHCP server y/s/n [n]?
431 Enable public HTTP server y/s/n [n]?
441 Enable time server and router control via HTTP y/s/n [s]?
442 Control HTTP server IP port [82]?
443 Host Time server address, '-' - disable time service [www.clock.org]?
444 Time offset to UTC(GMT) [+0100]?
451 Enable Print Server(s) y/s/n [n]?
46 Enable telnet server y/s/n [s]?
|
We willen geen DNS server, geen DHCP server en geen publieke webserver (die draait bij mij nl. op een andere PC, dat wordt straks met portforwarding opgelost). We willen wel de time server en router control via het web, maar alleen op het internet netwerk! Printserver hebben we ook niet nodig, telnet server wel, maar ook alleen lokaal.
14 Savers - screen(min),hdd(x5 sec) 0 -off [120]?
15 Swap file size in Megabytes (on boot device). 0 - disable ? 0
13 Do you want to enable extra modules/programs y/n [y]? n
16 Log sizes in bytes. syslog,logins_log [50000,5000]?
|
Wat settinkjes, niet spannend.
911 Host gateway (if exists, otherwise - '-') [212.120.84.1]?
912 Primary DNS address (usually your provider's DNS) [213.51.129.67]?
913 Secondary DNS address (otherwise - '-') [213.51.129.68]?
914 ISP http proxy address, (otherwise '-') [ ]? -
|
De host gateway is de door @HOME gegeven gateway, vul ook de @HOME DNS servers hier in. Proxy is niet nodig.
4. Portforwarding configuratie
Portforwarding heb je nodig als je op een computer binnen het netwerk bijvoorbeeld een FTP of WEB-server hebt draaien die je aan de buitenwereld beschikbaar wilt stellen. Kort door de bocht: met portforwarding wordt verkeer op een bepaalde poort doorgestuurd naar een bepaalde computer in het netwerk.
Port forwarding.
If you have any WWW/FTP/Mail/Telnet/etc servers in your local network
you can make them worldwide visible, i.e. export them.
You must know protocol (tcp or udp), IP address and port of this server
Format : t|u,External_Port,Local_IP_addr/Local_port
Example: you want to export local www server which is on port 80
on computer with IP addr 192.168.168.3, and you want to make
it worldwide visible on port 81.
Solution: t,81,192.168.168.3/80
NOTE: the internal machine you port forward to must have freesco as its
default gateway. Also you cannot access the port forwarded machine from
your internal network by its external address.
47 Do you want to export services y/n [ ]? y
Now edit port forward list, then save it and exit by pressing:
+ or then
#_47x._
#_
#_tcp|udp,incoming_port,local_computer_IP_addr/port
#_
#_Example:_t,80,192.168.168.2/80
#_this_will_open_worldwide_web_server_on_local_computer_192.168.168.2
#_
#_Example:_t,21,192.168.168.3/21
#_this_will_open_worldwide_ftp_server_on_local_computer_192.168.168.2
#_
#_Comment_must_be_on_separate_line_start_with_"#_"_and_should_not_have_spaces
t,80,192.168.0.1/80
t,21,192.168.0.1/21
|
In bovenstaand voorbeeld wordt poort 80 naar poort 80 op computer 192.168.0.1 geforward, hetzelfde voor poort 21.
Passwords
Vergeet niet om van root en admin de wachtwoorden te wijzigen. 'admin' is het useraccount voor de control web-page.
30. root (console)
31. Control HTTP
|
De control web-page is te vinden op http://192.168.0.254:82 (vervang IP met IP van je Freesco router).

Tags Linux  How-to`s  
 Copyright © 1999-2008 Maurice de Bijl Dit artikel is gepubliceerd op 2001-09-16
|
Reacties op dit artikel Er zijn nog geen reacties geplaatst op dit artikel. Je kunt de eerste zijn.
Reactie toevoegen Een reactie toevoegen is simpel en registratie is niet nodig!Je IP-adres wordt gelogd, maar niet gepubliceerd, alle reacties hebben een E-mail bevestiging nodig en worden stuk voor stuk gemodereerd. Misbruik wordt niet getolereerd. Naderhand wijzigen van je reactie is niet mogelijk
|  |
 |