Avatar billede nogetfx Nybegynder
31. december 2004 - 01:34 Der er 6 kommentarer og
1 løsning

Iptables til router

jeg har en maskine, der står som router/DHCP, med 3 netkort. Men pt. døjer jeg med at få hul igennem. Jeg kan pinge fra pc til linux-router og fra router til ASDL-router. Men ikke fra PC til ADSL router og derfor intet hul..

PC -------------- LINUX ------------------------- ADSL
192.168.10.254    192.168.10.1
                  192.168.20.1   
                  10.0.0.2                        10.0.0.1
(Håber det giver en opfattelse af netværket)

Route-script:
!/bin/sh

WAN='10.0.0.2'
LAN='192.168.10.0/24'
SERV='192.168.20.0/24'

WAN_NIC = 'eth1'
LAN_NIC = 'eth2'
SERV_LAN = 'eth0'

echo 0 > /proc/sys/net/ipv4/ip_forward

/sbin/iptables -t nat -F
/sbin/iptables -F
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P INPUT ACCEPT

        /sbin/iptables -t nat -A POSTROUTING -s $LAN -d ! $LAN -j SNAT --to $WAN
      /sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
        /sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

echo 1 > /proc/sys/net/ipv4/ip_forward
Avatar billede langbein Nybegynder
31. december 2004 - 01:59 #1
Dette er jo sånn sett "riktig" for en "firewall" som skal stå helt åpen:

Route-script:
!/bin/sh

WAN='10.0.0.2'
LAN='192.168.10.0/24'
SERV='192.168.20.0/24'

WAN_NIC = 'eth1'
LAN_NIC = 'eth2'
SERV_LAN = 'eth0'

echo 0 > /proc/sys/net/ipv4/ip_forward

/sbin/iptables -t nat -F
/sbin/iptables -F
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P INPUT ACCEPT

Dette sikrer at man i prinsipp kan "pinge" gjennom:

echo 1 > /proc/sys/net/ipv4/ip_forward


Dette gir ingen større mening i forhold til det som står over, ettersom firewall allerede står åpen:

/sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
/sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

Regelen for en delt internettforbindelse / nat inneholder sannsynligvis syntaksfeil:
/sbin/iptables -t nat -A POSTROUTING -s $LAN -d ! $LAN -j SNAT --to $WAN

Skal forsøke å finne et alternativ for denne ..
Avatar billede langbein Nybegynder
31. december 2004 - 02:00 #2
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
Avatar billede langbein Nybegynder
31. december 2004 - 02:03 #3
Route-script:
!/bin/sh

WAN='10.0.0.2'
LAN='192.168.10.0/24'
SERV='192.168.20.0/24'

WAN_NIC = 'eth1'
LAN_NIC = 'eth2'
SERV_LAN = 'eth0'

echo 1 > /proc/sys/net/ipv4/ip_forward

# Load some kernel modules (for sikkerhets skyld)
modprobe ip_nat_ftp
modprobe ip_conntrack_ftp


/sbin/iptables -t nat -F
/sbin/iptables -F
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P INPUT ACCEPT

iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

Skulle gi full gjennomgang pluss delt internettforbindelse.

Begrensninger i trafikk lages vha filtering rules etter at forbindelsen har kommet opp å kjøre.
Avatar billede nogetfx Nybegynder
31. december 2004 - 02:30 #4
genialt.. hehe

Min plan var også bare at få hul og mere jeg får læst om skidtet, jo mere kan jeg lukke den ned og forwarde osv..

Takker og godt nytår...
Avatar billede nogetfx Nybegynder
31. december 2004 - 02:31 #5
Lige et sidste spm.. Når jeg har lavet ændringer i mit script, kan jeg så ikke se dem ved at loade scriptet igen, elelr skal man stoppe det på en eller anden måde først..?

/Lars
Avatar billede langbein Nybegynder
31. december 2004 - 02:41 #6
Det skal i prinsipp gå ann å liste status for firewall slik:

"iptables -L" og "iptables -t nat -L"

Erfaringen min er imidlertid at denne listingen ikke blir helt nøyaktig for litt kompliserte firewalls, men den gir jo en pekepinne.

Man behøver ellers ikke å stoppe det gamle scriptet på noen måte.
Disse to setningene flusher ut det gamle:

/sbin/iptables -t nat -F (Flusher nat tabellen)
/sbin/iptables -F (Flusher input/output chain.)

Hvis man går surr i det hele eller det blir uforutsette problemer så kan man bare reboote maskinen, så er det hele borte. Så lenge man kjører script på denne måten så er det ikke den store rissiko.

Takker ellers for points !
Avatar billede langbein Nybegynder
31. december 2004 - 02:44 #7
Hvis man ønsker å gjøre et script "permanent" så kan man for eksempel kalle det fra filen /etc/rc.d/rc.local Da vil det loades automatisk ved booting.

Jo godt nytt år !
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester