Kod: Zaznacz cały
subnet 192.168.0.0
netmask 255.255.255.0
{
range 192.168.0.10 192.168.0.60;
default-lease-time 3600;
option domain-name "domena-um";
option domain-name-servers 194.204.159.1, 194.204.152.34;
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
host tomekc { hardware ethernet xx:04:xx:55:xx:xx; fixed-address 192.168.0.10; }
host aniab { hardware ethernet 00:xx:F3:0B:xx:xx; fixed-address 192.168.0.11; }
.
.
.
host LaptopAneta { hardware ethernet xx:25:xx:83:xx:xx; fixed-address 192.168.0.41; }
}
Kod: Zaznacz cały
# wlaczenie w kernelu forwardowania
echo 1 > /proc/sys/net/ipv4/ip_forward
# czyszczenie starych regul
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
# ustawienie polityki dzialania
iptables -P INPUT DROP #input-strumien wchodzacy; drop-blokada
iptables -P FORWARD DROP #forward-pakiety przechodzace miedzy interfejsami
iptables -P OUTPUT ACCEPT #output-wychodzace przepuszczamy
#zezwolenie na laczenie z naszym zewn ip po shh
iptables -A INPUT -i lo -j ACCEPT #pakiety wchodzace na petle zwrotna puszczamy (loopback 127.0.0.1)
iptables -A FORWARD -o lo -j ACCEPT #pakiety miedzy interfejsami petli zwrotnej puszczamy
iptables -A INPUT -s 0/0 -d 192.168.0.1 -p tcp --dport 10000 -j ACCEPT #puszczamy ruch wchodzacy na port 10000 Webmina
iptables -A OUTPUT -s 0/0 -d 192.168.0.1 -p tcp --dport 10000 -j ACCEPT
iptables -A INPUT -s 0/0 -d 192.168.0.1 -p tcp --dport 3306 -j ACCEPT #puszczamy ruch wchodzacy na port 3306 MYSQL
iptables -A OUTPUT -s 0/0 -d 192.168.0.1 -p tcp --dport 3306 -j ACCEPT
iptables -A INPUT -s 0/0 -d 192.168.0.1 -p tcp --dport 22 -j ACCEPT #puszczamy ruch wchodzacy na port 22 (ssh) po tcp
iptables -A OUTPUT -s 0/0 -d 192.168.0.1 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 0/0 -d 192.168.0.1 -p udp --dport 22 -j ACCEPT
iptables -A OUTPUT -s 0/0 -d 192.168.0.1 -p udp --dport 22 -j ACCEPT
#polaczenia nawiazane
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED #utrzymuj stan pakietow wchodzacych
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED #utrzymuj stan pakietow forwardowanych
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED #utrzymuj stan pakietow wychodzacych
#udostepnianie internetu w sieci lokalnej
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE #tworzymy maskarade czyli nat dla sieci
iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT #puszczamy miedzy interfejsami ruch z sieci 192.168.0.0
#Transparent proxying squid ---------------------------------------------------------
iptables -A INPUT -s 192.168.0.0/24 -d 192.168.0.1 -p tcp --dport 3128 -j ACCEPT
iptables -I OUTPUT -s 192.168.0.0/24 -d 192.168.0.1 -p tcp --sport 3128 -j ACCEPT
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-ports 3128
# tomekc
iptables -t nat -A POSTROUTING -s 192.168.0.10 -j MASQUERADE
iptables -A FORWARD -m mac --mac-source xx:xx:xx:xx:xx:xx -j ACCEPT
# aniab
iptables -t nat -A POSTROUTING -s 192.168.0.11 -j MASQUERADE
iptables -A FORWARD -m mac --mac-source xx:xx:xx:xx:xx:xx -j ACCEPT
.
.
.
# LaptopAnety
iptables -t nat -A POSTROUTING -s 192.168.0.41 -j MASQUERADE
iptables -A FORWARD -m mac --mac-source xx:xx:xx:xx:xx:xx -j ACCEPT
Chciałbym, żeby dopóki nie dopiszę adresu MAC karty sieciowej nowoinstalowanego komputera, ten nie miał dostepu do sieci i internetu.