Προς το περιεχόμενο

Internet Sharing in RED HAT 9.0


gabrielkrnl

Προτεινόμενες αναρτήσεις

  • Απαντ. 42
  • Δημ.
  • Τελ. απάντηση

Meta apo poly psaximo sto net giati eixa to idio provlhma katafera apo howto's kai egrapsa to parakatw opou doulepse poly kala se SuSE Linux.

An thes dokimase to, kanto exec kai ekteleseto san root.

 

echo "Firewall Starting"

 

EXTERNAL="ppp0"

INTERNAL="eth0"

echo " External Interface: $EXTERNAL"

echo " Internal Interface: $INTERNAL"

 

echo "Loading modules"

 

echo "Verifying that all modules are ok"

/sbin/depmod -a

 

echo "ip_tables"

/sbin/insmod ip_tables

 

echo "ip_conntrack"

/sbin/insmod ip_conntrack

 

#Loading full FTP tracking

#

echo "ip_conntrack_ftp"

/sbin/insmod ip_conntrack_ftp

 

 

#Loading full IRC tracking

#

echo "ip_conntrack_irc"

/sbin/insmod ip_conntrack_irc

 

echo "iptable_nat"

/sbin/insmod iptable_nat

 

echo "ip_nat_ftp"

/sbin/insmod ip_nat_ftp

 

echo "Done loading modules"

 

#Enable IP forwarding

#

echo "Enabling forwarding"

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

 

echo "Enabling DynamicAddr"

echo "1" > /proc/sys/net/ipv4/ip_dynaddr

 

#IPTABLES RULES

#

echo "Clearing any rules and setting new"

iptables -P INPUT ACCEPT

iptables -F INPUT

iptables -P OUTPUT ACCEPT

iptables -F OUTPUT

iptables -P FORWARD DROP

iptables -F FORWARD

iptables -t nat -F

 

echo "Allow all connections OUT and only existing and related ones IN"

iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A FORWARD -i $INTERNAL -o $EXTERNAL -j ACCEPT

iptables -A FORWARD -j LOG

 

echo "Enabling SNAT (MASQUERADE) functionality on $EXTERNAL"

iptables -t nat -A POSTROUTING -o $EXTERNAL -j MASQUERADE

 

echo "Firewall finished"

 

Elpizw na voithisa 8)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Netdamn , ama deis sto proigoumeno page akrivws to idio script exoun xrisimopoihsei ta paidia. To problem mallon einai allou. To berdema apla ginete sta dyo ethernet pou xrisimopoiountai , ena gia to adsl kai ena allo pou paei sto switch.

 

ChrisAce, menoume konta opote borw ama 8es na perasw mia volta na to doume mazi giati den ginete douleia apo to forum. Eida to PM , tha ta poume sto til

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Πωπω, λείπω και χάνω τα καλύτερα :D

Λοιπόν παίδες, για κάντε ένα paste την έξοδο της /sbin/route από το linuxόκουτο καλού κακού (αν και μάλλον δεν είναι πρόβλημα routing, αφού το Linux βλέπει net), καθώς και την έξοδο της /sbin/ifconfig -a.

Επίσης, απ' ότι είδα στο script που χρησιμοποιείτε, έχετε δηλώσει ως external interface το eth0. Αν χρησιμοποιείτε PPPoE (πράγμα που γίνεται με όσα DSL modems ξέρω - αν και δεν είναι πολλά :P ), πρέπει να δηλώσετε το ppp0 ως external interface για το masquerade και όχι το eth0!

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Makari...

 

Loipon auta pou zhthse o apoikos... :)

>eth0      Link encap:Ethernet  HWaddr 00:40:C7:2D:E8:8D
         inet addr:192.168.254.254  Bcast:192.168.254.255  Mask:255.255.255.0
         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
         RX packets:258 errors:0 dropped:0 overruns:0 frame:0
         TX packets:263 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:100
         RX bytes:232615 (227.1 Kb)  TX bytes:60616 (59.1 Kb)
         Interrupt:10 Base address:0xa800

eth1      Link encap:Ethernet  HWaddr 00:50:FC:78:D7:F6
         inet addr:192.168.0.5  Bcast:192.168.0.255  Mask:255.255.255.0
         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
         RX packets:76 errors:0 dropped:0 overruns:0 frame:0
         TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:100
         RX bytes:7151 (6.9 Kb)  TX bytes:1728 (1.6 Kb)
         Interrupt:5 Base address:0xc000

lo        Link encap:Local Loopback
         inet addr:127.0.0.1  Mask:255.0.0.0
         UP LOOPBACK RUNNING  MTU:16436  Metric:1
         RX packets:1533 errors:0 dropped:0 overruns:0 frame:0
         TX packets:1533 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:0
         RX bytes:104180 (101.7 Kb)  TX bytes:104180 (101.7 Kb)

ppp0      Link encap:Point-to-Point Protocol
         inet addr:62.169.212.202  P-t-P:62.169.255.4  Mask:255.255.255.255
         UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
         RX packets:234 errors:0 dropped:0 overruns:0 frame:0
         TX packets:234 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:3
         RX bytes:225934 (220.6 Kb)  TX bytes:53644 (52.3 Kb)

 

 

to 2o pou zhthse elpizo na einai auto... :(

>Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
62.169.255.4    *               255.255.255.255 UH    0      0        0 ppp0
192.168.0.0     *               255.255.255.0   U     0      0        0 eth1
192.168.254.0   *               255.255.255.0   U     0      0        0 eth0
169.254.0.0     *               255.255.0.0     U     0      0        0 eth1
127.0.0.0       *               255.0.0.0       U     0      0        0 lo
default         62.169.255.4    0.0.0.0         UG    0      0        0 ppp0

 

Ti lete? :(

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

xm auto pou leei o apoikos einai:

 

>    Diafrafoume ta iptables kai epanafora sta default settings tou....
  iptables --flush   
  iptables --table nat --flush
  iptables --delete-chain   
  iptables --table nat --delete-chain

 

Meta bazoume thn ppp0 os external ....

Tropos 1:

 

>
  iptables --table nat --append POSTROUTING --out-interface ppp0 -j MASQUERADE
  iptables --append FORWARD --in-interface eth0 -j ACCEPT 
  echo 1 > /proc/sys/net/ipv4/ip_forward 

 

Tropos2:

 

>
iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to 192.168.254.254
echo 1 > /proc/sys/net/ipv4/ip_forward 

 

dialekste :PPPP

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Θα έλεγα "Τρόπος 1". Αυτό που χρειάζεσαι είναι IP Masquerading και όχι Static NAT, και αυτό γιατί έχεις δυναμική IP (εκτός αν τα έχεις σκάσει χοντρά για στατική). Ωστόσο ο τρόπος 1 όπως τον έχεις γράψει μάλλον δεν πρόκειται να παίξει, θέλει κάποιες αλλαγές:

 

Λοιπόν:

>
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
iptables -A FORWARD -i eth1 -o ppp0  -j ACCEPT
iptables -A FORWARD -i ppp0 -m state --state ESTABLISHED,RELATED -j ACCEPT
echo "1" > /proc/sys/net/ipv4/ip_forward

 

That should do the trick! Ωστόσο καλύτερο είναι να αλλάξεις απλά στο σκριπτάκι που έκανες paste τη γραμμή EXTIF="eth0" σε EXTIF="ppp0" (όπως άλλωστε σου λέει στο σχόλιο) και να το ξανατρέξεις.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

xm tora mperdeutika...

 

Loipon leo na kano to ekseis:

 

>Diafrafoume ta iptables kai epanafora sta default settings tou.... 
  iptables --flush    
  iptables --table nat --flush 
  iptables --delete-chain    
  iptables --table nat --delete-chain 

 

kai meta to

>iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE 
iptables -A FORWARD -i eth1 -o ppp0  -j ACCEPT 
iptables -A FORWARD -i ppp0 -m state --state ESTABLISHED,RELATED -j ACCEPT 
echo "1" > /proc/sys/net/ipv4/ip_forward 

 

 

H sundesh adsl den einai static....

 

Apoikos einai sosta na ta kano etsi me thn seira pou ta egrapsa?

 

Giati prin kaname auta pou grafei o gabriel alla anti gia ton 1o tropo ebala ton 2o... kai den epaikse.. :(

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ναι, αν τα κάνεις έτσι μάλλον θα παίξει (δεν το έχω δοκιμάσει πρόσφατα, πάει καιρός από τότε που χρειαζόμουν masquerading και τα έχω ψιλοξεχάσει, αν δε δουλέψει όμως εδώ είμαστε ;) ). Ο 2ος τρόπος προφανώς δεν έπαιξε, γιατί αν δεις είχε ως target το SNAT (-j SNAT) και όχι το MASQUERADE (-j MASQUERADE). Το SNAT αναφέρεται σε static network address translation, κοινώς το χρησιμοποιείς μόνο αν έχεις static ip και αυτό που κάνει είναι ότι αλλάζει τις κεφαλίδες των πακέτων για και τα κάνει να φαίνονται σαν να προέρχονται όλα από την ίδια, συγκεκριμένη διεύθυνση. Η διεύθυνση αυτή ορίζεται με το --to 192.168.254.254, το οποίο όμως είναι εντελώς λάθος για δύο λόγους:

 

  • Έπρεπε να είναι --to-source και όχι --to σκέτο
  • Η IP δίπλα πρέπει να είναι η public IP που έχεις στο Internet, και όχι η IP του εσωτερικού δικτύου (γι' αυτό δεν παίζει με dynamic IP, διότι πρέπει να γνωρίζεις την IP σου εκ των προτέρων). Αν δώσεις --to-source 192.168.254.254 θα κάνεις μία τρύπα στο νερό, γιατί κανένας internet router δεν κάνει route τα πακέτα από διευθύνσεις 192.168.xxx.xxx (είναι reserved B-Class network).

 

Επομένως ξεχάστε το SNAT και παίξτε με Masq.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

to ekana restart to iptables...

 

auta grafei mesa tora..

>Table: filter
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere           
ACCEPT     all  --  anywhere             anywhere           state RELATED,ESTABLISHED 

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
Table: nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
MASQUERADE  all  --  anywhere             anywhere           

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Λοιπόν, δοκίμασα αυτά που πρότεινα παραπάνω και δουλεύουν!

 

Έχε υπ' όψιν σου ότι ούτως ή άλλως οι κανόνες του iptables δεν είναι persistent, δηλαδή χάνονται στο reboot. Δεν έπρεπε όμως να κάνεις επανεκκίνηση, διότι πιθανότατα φόρτωσε εκ νέου όποιους κανόνες φορτώνει πάντα. Κάνε τα flush και delete και στο καπάκι, χωρίς επανεκκίνηση, δώσε αυτά που σου έγραψα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.


  • Δημιουργία νέου...