Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2010-10-26 19:24:29

  Pablik - Użytkownik

Pablik
Użytkownik
Zarejestrowany: 2010-10-21

Blokada na nieznane adresy MAC

Witam mam udostępniony internet w sieci i skonfigurowany serwer DHCP, oto konfiguracja :
/etc/network/interfaces

Kod:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
        address 83.19.28.220
        netmask 255.255.255.248
        gateway 83.19.28.217
        network 83.19.28.0
        broadcast 83.19.28.255

auto eth1
iface eth1 inet static
address 10.0.0.1
netmask 255.0.0.0

/etc/init.d/firewall

Kod:

# 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
iptables -t mangle -F
iptables -t mangle -X

# ustawienie domyslnej polityki
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

# utrzymanie polaczen nawiazanych
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED

# udostepniaie internetu w sieci lokalnej
iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -j MASQUERADE
iptables -A FORWARD -s 10.0.0.0/8 -j ACCEPT

/etc/dhcp3/dhcpd.conf

Kod:

ddns-update-style none;
option domain-name-servers 194.204.159.1, 194.204.152.34;
default-lease-time 600;
max-lease-time 7200;


subnet 10.0.0.0 netmask 255.0.0.0 {
                option subnet-mask 255.0.0.0;
                option routers 10.0.0.1;
                option broadcast-address 10.0.0.255;


        ignore unknown-clients;

        #Olga
        host P102_1 {
                hardware ethernet 00:03:0D:84:30:6A;
                fixed-address 10.1.2.1;
        }

        #Basia
        host P102_2 {
                hardware ethernet 00:03:0D:82:82:41;
                fixed-address 10.1.2.2;
        }

        # i tak jeszcze z 10 hostów
}

Wszystko pięknie działa, lecz teraz chciałem ustawić tak żeby internet był dostępny dla tych hostów z listy DHCP np.
- jak ktoś się podepnie i wpisze poprawne adresy z palca to zęby nie miał dostępu do internetu.
- jak ktoś jest na liście DHCP i wpisze sobie z palca poprawny adres to żeby nie miał dostępu do internetu .

Proszę o pomoc

Offline

 

#2  2010-10-26 19:45:14

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: Blokada na nieznane adresy MAC

Na przykład tak:
Zamiast:

Kod:

iptables -A FORWARD -s 10.0.0.0/8 -j ACCEPT

reguły dla hostów:

Kod:

iptables -A FORWARD -s 10.1.2.2 -m mac --mac-source 00:03:0D:82:82:41 -j ACCEPT

- to dla Basi.

A Basię ode mnie pozdrów i wycałuj  bardzo gorąco :D

To by było na tyle
;-)

Ostatnio edytowany przez Jacekalex (2010-10-27 16:20:36)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#3  2010-10-26 20:03:09

  Pablik - Użytkownik

Pablik
Użytkownik
Zarejestrowany: 2010-10-21

Re: Blokada na nieznane adresy MAC

mam jeszcze jedno pytanko jak dokonam zmiany w pliku /etc/init.d/firewall a ten plik dodałem do uruchamiania się przy sracie poleceniem "update-rc.d firewall defaults 20"
to będzie  uruchamiał się zmieniony firewall czy ten stary ??

Ostatnio edytowany przez Pablik (2010-10-26 20:11:34)

Offline

 

#4  2010-10-26 20:44:24

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: Blokada na nieznane adresy MAC

Po każdej zmianie odpal skrypt, a potem sprawdź przez

Kod:

 sudo iptables -L -n

czy wszystko ustawione jak należy.


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#5  2010-10-26 21:10:45

  Pablik - Użytkownik

Pablik
Użytkownik
Zarejestrowany: 2010-10-21

Re: Blokada na nieznane adresy MAC

mam ustawione tak :

Kod:

# 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
iptables -t mangle -F
iptables -t mangle -X

# ustawienie domyslnej polityki
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

# utrzymanie polaczen nawiazanych
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -I FORWARD -s 10.0.0.3 -m mac --mac-source 00:30:4F:79:9A:03 -j ACCEPT
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED

# udostepniaie internetu w sieci lokalnej
iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -j MASQUERADE
iptables -A FORWARD -s 10.0.0.0/8 -j ACCEPT

po uruchomieniu tego skryptu /etc/init.d/firewall
i wykonaniu polecenia "iptables -L -n"

Kod:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  10.0.0.3             0.0.0.0/0           MAC 00:30:4F:79:9A:03
ACCEPT     all  --  10.0.0.0/8           0.0.0.0/0

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

dalej puszcza wszystko "ACCEPT     all  --  10.0.0.0/8           0.0.0.0/0" coś źle zrobiłem czy trzeba go przewalić ?

Ostatnio edytowany przez Pablik (2010-10-26 21:11:43)

Offline

 

#6  2010-10-26 22:09:50

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: Blokada na nieznane adresy MAC

Amen

skopiuj ten skrypt do

Kod:

/usr/local/sbin

odpal z palca poleceniem

Kod:

sudo  firewall

i podlinkuj go do folderu /etc/network/if-up.d - np:

Kod:

ln -s /usr/local/sbin/firewall  /etc/network/if-up.d/firewall

Możesz też zrobić  w /etc/init.d/firewall, wtedy zostaw tam wpis:

Kod:

#!/bin/bash
exec /usr/local/sbin/firewall
exit 0

A poza tym - widzę, że o Linuxie pojęcia nie masz.
Na początek podstawy: http://qref.sourceforge.net/Debian/reference/index.pl.html

Ostatnio edytowany przez Jacekalex (2010-10-26 22:12:20)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#7  2010-10-27 19:18:44

  Pablik - Użytkownik

Pablik
Użytkownik
Zarejestrowany: 2010-10-21

Re: Blokada na nieznane adresy MAC

No dodałem te wpisy do /etc/init.d/firewall i co mi to dało ??

Kod:

#!/bin/bash
exec /usr/local/sbin/firewall

# 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
iptables -t mangle -F
iptables -t mangle -X

# ustawienie domyslnej polityki
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

# utrzymanie polaczen nawiazanych
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED

# udostepniaie internetu w sieci lokalnej
iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -j MASQUERADE
iptables -A FORWARD -s 10.0.0.0/8 -j ACCEPT
exit 0

Bawiłem się trochę z tym firewall'em i wykombinowałem coś takiego

Kod:

# 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
iptables -t mangle -F
iptables -t mangle -X

# ustawienie domyslnej polityki
iptables -P INPUT ACCEPT
#iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

# utrzymanie polaczen nawiazanych
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
#iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED

# udostepniaie internetu w sieci lokalnej
iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -j MASQUERADE
iptables -I FORWARD -s 10.0.0.3 -m mac --mac-source 00:30:4F:79:9A:03 -j ACCEPT
#iptables -A FORWARD -s 10.0.0.0/8 -j ACCEPT

i dla tego firewala niby puszcza neta tylko dla hosta 10.0.0.3 tak ??

Kod:

Server:/home/pablik# iptables -L -n
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  10.0.0.3             0.0.0.0/0           MAC 00:30:4F:79:9A:03

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED

ale mino tego wszystkie hosty mają internet ;(

Ostatnio edytowany przez Pablik (2010-10-27 19:22:50)

Offline

 

#8  2010-10-27 19:21:22

  milyges - inż.

milyges
inż.
Skąd: Gorlice/Kraków
Zarejestrowany: 2006-04-09
Serwis

Re: Blokada na nieznane adresy MAC

# ustawienie domyslnej polityki
iptables -P INPUT ACCEPT
#iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

Chain FORWARD (policy ACCEPT)

Reszte chyba sobie sam dopowiesz...

A jakby nie:
iptables -P FORWARD DROP

I odkomentuj: iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED

Offline

 

#9  2010-10-27 19:30:44

  Pablik - Użytkownik

Pablik
Użytkownik
Zarejestrowany: 2010-10-21

Re: Blokada na nieznane adresy MAC

ok działa wielkie dzięki za pomoc ;)

Offline

 

#10  2010-10-27 20:10:57

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: Blokada na nieznane adresy MAC

Kod:

exec /usr/local/sbin/firewall

ta linia w pliku /etc/init.d/firewall - wywołuje skrypt znajdujący się w folderze /usr/local/sbin.
Po niej w /etc/init.d/firewall powinno być tylko exit 0 i NIC WIĘCEJ.
A w /usr/local/sbin tworzysz plik o nazwie firewall, wklejasz tam skrypt do firewalla, nadajesz uprawnienia (chmod 755) i GOTOWE.

Potem, żeby sprawdzić, czy działa - uruchamiasz skrypt poleceniem

Kod:

 sudo -u root  firewall

i sprawdzasz, czy zadziałało, czy jest jakiś błąd - wszystko napisze w terminalu po wydaniu komendy.
I napisz może, co robi taki skrypt (swoimi słowami):

Kod:

#!/bin/bash

EXT=eth0
INT1=vboxnet0
INT2=eth1
# dla karty zewnętrznej - internet
ADRES=<adres-ip>
MASKA=<maska-ip>
BRAMA=<brama-adres>

export EXT
export INT1
export INT2
export ADRES
export MASKA
export BRAMA

echo " Uruchamiam firewalla............................................."


echo "# ignorowanie ICMP echo request wysylanych na adres rozgloszeniowy" 

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

echo "128" >> /proc/sys/net/ipv4/ip_default_ttl

echo "# ochrona przed SYN flood" 

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


echo "# refuse source routed packets"  

echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route


echo "1" > /proc/sys/net/ipv4/conf/all/secure_redirects
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter

echo "# logowanie pakietow z nieprawidlowych adresow "

echo "0"> /proc/sys/net/ipv4/conf/all/log_martians
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "# Konfigurowanie zapory..................................................." 

echo "# Czyszczenie tablic......................................................"




iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT 
iptables -I OUTPUT -j ACCEPT
iptables -I INPUT -i lo -d 127.0.0.0/8 -j ACCEPT
iptables -A OUTPUT -o lo -s 127.0.0.0/8 -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p udp  -f -i $EXT -j DROP
iptables -I INPUT -s 192.168.56.0/24 -i vboxnet0 -j ACCEPT


iptables -A INPUT -p udp -i $EXT -m state --state NEW -j REJECT --reject-with icmp-host-unreachable
iptables -A INPUT -p tcp -i $EXT  -m state --state NEW -j REJECT --reject-with tcp-reset

iptables -A INPUT -p udp -i $INT1 -m state --state NEW -j REJECT --reject-with icmp-host-unreachable
iptables -A INPUT -p tcp -i $INT1  -m state --state NEW -j REJECT --reject-with tcp-reset

iptables -A INPUT -p udp -i $INT2 -m state --state NEW -j REJECT --reject-with icmp-host-unreachable
iptables -A INPUT -p tcp -i $INT2  -m state --state NEW -j REJECT --reject-with tcp-reset

echo "# Konfiguracja reguł gotowa.................................................."

echo "# Konfiguracja Sieci.................................................."

echo 'nameserver 127.0.0.1' >/etc/resolv.conf
echo 'nameserver 208.67.220.220' >>/etc/resolv.conf
echo 'nameserver 208.67.222.222' >>/etc/resolv.conf
echo 'nameserver 8.8.8.8' >>/etc/resolv.conf
echo 'nameserver 8.8.4.4' >>/etc/resolv.conf

ifconfig $EXT down
ifconfig $INT1 down
ifconfig $INT2 down
ifconfig $EXT hw ether 00:19:d1:ed:40:ee
ifconfig $INT1 hw ether 00:59:d1:ed:40:ee
ifconfig $INT2 hw ether 00:69:d1:ed:40:ee
ifconfig $EXT $ADRES netmask $MASKA
ifconfig $EXT up 
route add default gw $BRAMA $EXT
ifconfig $INT1 192.168.1.1 netmask 255.255.255.0
ifconfig $INT2 192.168.2.1 netmask 255.255.255.0
route add --net 192.168.56.0/24 netmask 255.255.255.0 dev $INT1
route add --net 192.168.1.0/24 netmask 255.255.255.0 dev $INT2
ifconfig $INT1 up
ifconfig $INT2  up
iptables -t nat -A POSTROUTING -o $EXT -s 192.168.0.0/16 -j MASQUERADE
iptables -t nat -A POSTROUTING -o $EXT -s 192.168.56.0/24 -j MASQUERADE
iptables -A FORWARD -s 192.168.0.0/16 -j ACCEPT
iptables -A FORWARD -s 192.168.56.0/24 -j ACCEPT
echo "# Konfiguracja Sieci Gotowa"

To by było na tyle
;-)

Ostatnio edytowany przez Jacekalex (2010-10-27 20:11:58)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)