Sziasztok!
Szüleim gépére szeretnék iptables-el tűzfalat csiholni (1 hálókártyájuk van).
A felállás router osztja a netet a szüleim gépére és az enyémre, routeren van tűzfal de egy viszonylag olcsó router tűzfalában annyira nem bízom.
Tehát hogyan oldom meg azt az iptables-el hogy a router és a gép tudjon kommunikálni, és a gépenlévő output szabályrendszer működjön. Ahogy néztem routeren nincsenek korlátozva kimenő portok, bejövő meg ha kell forwardolva lesz, bár torrent az upnpn keresztűl megy, tehát a program kéri a routert hogy nyisson portot legalábbis xp-s gépen (enyémen) ez megy tökéletesen.
Azt szeretném hogy továbbra is routeren keresztűl mennjen minden csak a gépen legyen még egy csomagszűrés is.
Iptables scripteket ollóztam össze, de szinte csak olyat találtam, ahol a gép végzi el a router feladatát, vagy közvetlen megy netre.
Beüzemelve hibásan működik, mindent dropol ping, http, stb.
A scriptet kicsit megformázva és a fontosabb szabályokkal leírva másolom be.
(A az első NET_ID rész azért került kommentbe, mert hiába jó a code az iptables hibát dobott rá.)
A segítségeteket kérem, hogy mit javítsak, vagy mit írjak máshogy.
(router ipje 192.168.1.1, a gépüké 192.168.1.3)
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH
iptables="/sbin/iptables"
#NET_ID=$(route -n | grep '0.0.0.0' | tr -d '\n' | awk '{print $1"/"$3}')
NET_ID=192.168.1.0/24
#####################
# Szabalyok torlese #
#####################
$iptables -P INPUT ACCEPT
$iptables -P OUTPUT ACCEPT
$iptables -P FORWARD ACCEPT
$iptables -F
$iptables -X
$iptables -t nat -F
$iptables -t nat -X
$iptables -t mangle -F
$iptables -t mangle -X
########################
# Uj szabaly keszitese #
########################
$iptables -P INPUT DROP
$iptables -P OUTPUT DROP
$iptables -P FORWARD DROP
## eth0 interface engedelyezese ##
$iptables -A INPUT -s $NET_ID -j ACCEPT
$iptables -A OUTPUT -d $NET_ID -j ACCEPT
#####################
## INPUT szabalyok ##
#####################
## Allows all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0 ##
## loopback -en engedelyezzuk a forgalmat, ami nem loopbacken jon a localhosthoz azt tiltjuk ##
$iptables -A INPUT -i lo -j ACCEPT
$iptables -A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT
## Accepts all established inbound connections ##
## engedelyezzuk befele, ami tolunk szarmazik ##
$iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
## DNS engedve ##
$iptables -A INPUT -p udp --sport 53 -j ACCEPT
## befele jovo ping keres, engedelyezve ##
$iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
## kintrol ftp, ssh hozzaferest engedve ##
$iptables -A INPUT -p tcp -m multiport --dports 20:21,22 -m state --state NEW,ESTABLISHED -j ACCEPT
##################
#====LOGOLAS=====#
##################
$iptables -I INPUT 5 -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
## A serult csomagokat eldobjuk ##
$iptables -A INPUT -m state --state INVALID -j DROP
$iptables -A INPUT -j DROP
######################
## OUTPUT szabalyok ##
######################
## loopback -en engedelyezzuk a forgalmat ##
$iptables -A OUTPUT -o lo -j ACCEPT
## jovahagyott kapcsolatok engedelyezese ##
$iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
## DNS ##
$iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
## kifele meno ping mehet ##
$iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT
## ftp, ssh, http, https mehet ##
$iptables -A OUTPUT -p tcp -m multiport --sports 20:21,22,80,443 -m state --state ESTABLISHED -j ACCEPT
## ntp mehet ##
$iptables -A OUTPUT -p udp --dport 123 -m state --state NEW,ESTABLISHED -j ACCEPT
exit 0