Sziasztok!
Lenne egy port forward kérdésem:
Adott egy debian woody(tudom régi) 2 hálókártyával. Eth0-on jön az ADSl eth1 osztja szét. Az ADSL fix IP-s
szeretném megoldani, hogy a 80 port egy belső IP-re mutasson:
Az alábbival probálkoztam:
iptables -A FORWARD -d 10.0.0.242 -p tcp --dport 80 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to $kulsoip
Sajnos nem akar menni. Mit rontok el???
- 2317 megtekintés
Hozzászólások
sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -s $kulsoip -o eth0 -j SNAT --to-destination $kulsoip
Bár csak tipp
----
올드보이
http://molnaristvan.eu/
- A hozzászóláshoz be kell jelentkezni
az alábbi mit csinál:
sysctl -w net.ipv4.ip_forward=1
és
a --to-destination-t nem tudja értelmezni
- A hozzászóláshoz be kell jelentkezni
A sysctl bekapcsolja az ip forwardingot, a --to-destination -t meg elírtam, az helyesen --to-source.
Nade muti már a többi rulet is!
iptables-save -el pl.
Lehet még az is, hogy a FORWARD láncon nincs engedve a port a net felől.
Esetleg olvasd el ezt:
http://molnaristvan.eu/2011/01/16/az-en-tuzfal-scriptem/
----
올드보이
http://molnaristvan.eu/
- A hozzászóláshoz be kell jelentkezni
"a --to-destination -t meg elírtam, az helyesen --to-source."
Leginkább nem. Abból ez lenne:
iptables -t nat -A POSTROUTING -s $kulsoip -o eth0 -j SNAT --to-source $kulsoip
Így ugyanarra az IP-re source natolnál, mint ami az eredeti forráscím volt. Tehát az egyik a belső IP kellene hogy legyen. Valamint a kérdező kívülről szeretne bejönni, és nem bentről kimenni. Tehát minden fordítva.
- A hozzászóláshoz be kell jelentkezni
Ez így nagyon nem lesz jó.
iptables -t nat -A PREROUTING -i eth0 -d $kulsoip -j DNAT --to-destination 10.0.0.242
A FORWARD láncban ne felejtsd el a visszirányt sem.
- A hozzászóláshoz be kell jelentkezni
Szia!
Köszi
Pontosan mire gondolsz a visszairánynál?
- A hozzászóláshoz be kell jelentkezni
A 10.0.0.242 TCP/80-as portjáról az internet felé tartó forgalomra, azaz a szervertől a kliens felé menő csomagokra.
- A hozzászóláshoz be kell jelentkezni
Csak gondolom, hogy ha már úgyis osztja a netet, akkor van natolás kifelé menet.
- A hozzászóláshoz be kell jelentkezni
A natolással nincs gond, a DNAT szépen kezeli. Amelyik kapcsolatot beengedte, azt vissza is engedi. Viszont a filter táblában a FORWARD-ban csak egy irányt írtál:
iptables -A FORWARD -d 10.0.0.242 -p tcp --dport 80 -j ACCEPT
Ehhez még kell ennek a fordítottja is:
iptables -A FORWARD -s 10.0.0.242 -p tcp --sport 80 -j ACCEPT
Persze ez egy kicsit "csúnya" megoldás, meg lehet írni a state modul használatával is:
iptables -A FORWARD -p tcp -d 10.0.0.242 --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A FORWARD -p tcp -s 10.0.0.242 --sport 80 -m state --state ESTABLISHED -j ACCEPT
Lehet még cifrázni sokféleképpen.
- A hozzászóláshoz be kell jelentkezni
Amit mondtam értve azalatt, hogy a nat tablában is megvan a megfelelő rész, meg általában az esetek 90%-ban a forward szabályban ki szokták engedni a teljes belső tartományt, nem port alapján szűrve, illetve state alapján. A kimenőbe azért raknék meg egy relatedet is amúgy, ha már. Bár nem értek hozzá.
- A hozzászóláshoz be kell jelentkezni
Azért különösen érdekes ez a tűzfalkérdés, mert egy-egy szabályt kevés esetben lehet önmagában értelmezni, a megelőzőek, valamint az egyéb követelmények ismerete nélkül. Én most csak erre az egy FORWARD-os szabályra reagáltam, és azért, hogy csak ezt a részt kiemelve is működőképes legyen. A saját tűzfalszabály-rendszeredben a kontextusba helyezés rád vár, te ismered. Amit a RELATED-ről írsz, jogos, a port alapú szűrés illetve az állapot kérdése pedig feleadat- és megítélésfüggő dolog. Csak nem akartam litániát írni arról, hogy mi lehet a szerepe a RELATED-nek, milyen összefüggés lehet a már meglévő szabályaiddal. A FORWARD kérdését túlragoztuk, a NAT pedig remélem megy.
- A hozzászóláshoz be kell jelentkezni
igaz
- A hozzászóláshoz be kell jelentkezni
^senior
http://hup.hu/node/98221
- A hozzászóláshoz be kell jelentkezni
Sziasztok!
Alább az iptables -L lista. Továbbra sem érem el kintről a 10.0.0.242-es gépet. Valaki megtenné, hogy összefoglalná mit rontok el igazán?
iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere
DROP tcp -- anywhere anywhere tcp dpt:ssh
DROP udp -- anywhere anywhere udp dpt:ssh
ACCEPT tcp -- localnet/24 anywhere tcp dpt:netbios-ssn
ACCEPT udp -- localnet/24 anywhere udp dpt:netbios-ssn
DROP tcp -- anywhere anywhere tcp dpt:netbios-ssn
DROP udp -- anywhere anywhere udp dpt:netbios-ssn
DROP tcp -- anywhere anywhere tcp dpt:telnet
DROP udp -- anywhere anywhere udp dpt:23
ACCEPT tcp -- localnet/24 anywhere tcp dpt:nntps
ACCEPT udp -- localnet/24 anywhere udp dpt:nntps
ACCEPT tcp -- host-212-92-20-152.wave-net.hu anywhere tcp dpt:nntps
ACCEPT udp -- host-212-92-20-152.wave-net.hu anywhere udp dpt:nntps
ACCEPT tcp -- almos.vein.hu anywhere tcp dpt:nntps
ACCEPT udp -- almos.vein.hu anywhere udp dpt:nntps
ACCEPT tcp -- host-94-248-135-131.kabelnet.hu anywhere tcp dpt:nntps
ACCEPT udp -- host-94-248-135-131.kabelnet.hu anywhere udp dpt:nntps
DROP tcp -- anywhere anywhere tcp dpt:nntps
DROP udp -- anywhere anywhere udp dpt:nntps
Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere 10.0.0.242 tcp dpt:www
ACCEPT tcp -- 10.0.0.242 anywhere tcp spt:www
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT icmp -- anywhere anywhere
- A hozzászóláshoz be kell jelentkezni
A natot is légy szíves:
iptables -t nat -nvL
Valamint a fentit a FORWARD-ra vonatkozóan szebb formában:
iptables -nvL FORWARD
- A hozzászóláshoz be kell jelentkezni
iptables -t nat -nvL:
Chain PREROUTING (policy ACCEPT 47852 packets, 3264K bytes)
pkts bytes target prot opt in out source destination
0 0 DNAT all -- eth0 * 0.0.0.0/0 $kulsoip to:10.0.0.242
Chain POSTROUTING (policy ACCEPT 35946 packets, 2283K bytes)
pkts bytes target prot opt in out source destination
33105 1966K MASQUERADE all -- * * 10.0.0.0/24 0.0.0.0/0
Chain OUTPUT (policy ACCEPT 35949 packets, 2284K bytes)
pkts bytes target prot opt in out source destination
iptables -nvL FORWARD:
Chain FORWARD (policy ACCEPT 2257K packets, 1856M bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT tcp -- * * 0.0.0.0/0 10.0.0.242 tcp dpt:80
0 0 ACCEPT tcp -- * * 10.0.0.242 0.0.0.0/0 tcp spt:80
Köszi előre is
- A hozzászóláshoz be kell jelentkezni
0 0 DNAT all -- eth0 * 0.0.0.0/0 $kulsoip to:10.0.0.242
"Eth0-on jön az ADSl"
Routered van? Ha nincs, akkor a ppp0-on kellene ezt megejteni, nem a fizikai interfészen.
Továbbá előzőleg lemaradt a NAT mögül a protokoll és a port:
iptables -t nat -A PREROUTING -i ppp0 -p tcp -d $kulsoip --dport 80 -j DNAT --to-destination 10.0.0.242
- A hozzászóláshoz be kell jelentkezni
Tökéletesen igazad van, már működik is. Hálás köszönetem a segítőknek...
- A hozzászóláshoz be kell jelentkezni