Iptables, brak dosŧ

Masz problemy z siecią bądź internetem? Zapytaj tu
Awatar użytkownika
Bastian
Member
Posty: 1424
Rejestracja: 30 marca 2008, 16:09
Lokalizacja: Poznañ

Post autor: Bastian »

Kod: Zaznacz cały

#dopuszczony ruch z sieci zewnętrznej
iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT #ssh
iptables -A INPUT -i eth0 -p tcp --dport 21 -j ACCEPT #ftp
iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT #www

A gdzie:

Kod: Zaznacz cały

-m state --state NEW
ramsi1986
Posty: 17
Rejestracja: 17 kwietnia 2011, 21:45

Post autor: ramsi1986 »

Bastian pisze:

Kod: Zaznacz cały

#dopuszczony ruch z sieci zewnętrznej
iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT #ssh
iptables -A INPUT -i eth0 -p tcp --dport 21 -j ACCEPT #ftp
iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT #www

A gdzie:

Kod: Zaznacz cały

-m state --state NEW

A po co? Jak

Kod: Zaznacz cały

 -j ACCEPT
dopuszcza wszystkie rodzaje pakietów jak leci. Nawet te oznaczone jako

Kod: Zaznacz cały

 INVALID
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Seba_Fan pisze: ale DNS chciałbym stosować 192.168.43.1 a nie dostawcy, z komputerów lokalnych.
Ustaw zatem w konfiguracji DHCP ten adres dla adresów DNS a na maszynie o IP 192.168.43.1 zainstaluj pakiet bind9 i skonfiguruj jako "cache DNS".
Seba_Fan
Posty: 20
Rejestracja: 14 maja 2011, 15:01

Post autor: Seba_Fan »

Teraz mam tak i nie wiem, czy tak zostawić, czy może to zmienić?

Kod: Zaznacz cały

subnet 192.168.43.0 netmask 255.255.255.0 {
    # domyślnie przydzielamy adresy 192.168.1.100-199:
    #range 192.168.43.100 192.168.43.199;
   range 192.168.43.10 192.168.43.199;

# na jeden dzień
    default-lease-time 86400;
    # poinformujmy że hosty będą korzystać z domeny tutaj wpis
    option domain-name "jjjj.pl";
    # niech używają naszego routera jako serwera DNS:
    option domain-name-servers 88.200.100.10;
    option routers 192.168.43.1;
    # i dodatkowe info:
    option subnet-mask 255.255.255.0;
    option broadcast-address 192.168.43.255;
Awatar użytkownika
Bastian
Member
Posty: 1424
Rejestracja: 30 marca 2008, 16:09
Lokalizacja: Poznañ

Post autor: Bastian »

Teraz masz:

Kod: Zaznacz cały

dopuszczony ruch z sieci zewnętrznej
iptables  -A INPUT -i eth0 -p TCP --dport 22 -j ACCEPT #ssh
iptables -A INPUT -i eth0  -p TCP --dport 21 -j ACCEPT #ftp
iptables -A INPUT -i eth0 -p TCP --dport 80  -j ACCEPT #www
iptables -A INPUT -i eth0 -p tcp --dport 80 -m state --state  NEW -j ACCEPT

Przy takim ustawieniu całe conntrack jest Ci w ogole niepotrzebne
Seba_Fan
Posty: 20
Rejestracja: 14 maja 2011, 15:01

Post autor: Seba_Fan »

Nie wiem dokładnie o czym do mnie teraz napisałeś. Sieć, nie jest dobrze mi znana. Grunt, że teraz działa. Chyba, że pokażesz mi przykład, będzie mi łatwiej.
Awatar użytkownika
Bastian
Member
Posty: 1424
Rejestracja: 30 marca 2008, 16:09
Lokalizacja: Poznañ

Post autor: Bastian »

Wykorzystujesz moduł state do filtrowania pakietów, wpuszczając pakiety powiązane i te z już ustanowionych połączeń. W porządku. Ale dalej i tak przepuszczasz wszystko na wybranych portach nie patrząc czy pakiet stanowi nowe połączenie czy nie. W dodatku w jednej linii przepuszczasz wszystko co wchodzi na port 80 a w następnej linii dajesz dla tej samej reguły NEW co jest bezsensu bo żaden pakiet nie będzie miał szansy z niej skorzystać.
Seba_Fan
Posty: 20
Rejestracja: 14 maja 2011, 15:01

Post autor: Seba_Fan »

OK mam teraz tak, to co mam zmienić co dodać?

Kod: Zaznacz cały

iptables -F
iptables -F -t nat
iptables -F -t mangle

# ustawienie polityki dzialania
iptables -P INPUT  DROP
iptables -P FORWARD ACCEPT
iptables -P OUTPUT  ACCEPT

#wpuszczamy wszystko na interfejsie lokalnym
iptables -A INPUT  -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT

# polaczenia nawiazane
iptables -A INPUT -j ACCEPT -m  state --state ESTABLISHED,RELATED

#dopuszczony ruch z sieci wewnętrznej
iptables -I  INPUT -i eth1 -j ACCEPT


#dopuszczony ruch z sieci zewnętrznej
iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT #ssh
iptables -A INPUT -i eth0 -p tcp --dport 21 -j ACCEPT #ftp
iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT #www
iptables -A INPUT -i eth0 -p tcp --dport 5900 -j ACCEPT #VNC

iptables -A INPUT -p icmp -j ACCEPT #ping
Awatar użytkownika
Bastian
Member
Posty: 1424
Rejestracja: 30 marca 2008, 16:09
Lokalizacja: Poznañ

Post autor: Bastian »

Kod: Zaznacz cały

iptables -A INPUT -i eth0 -p tcp --dport 22 -m state --state NEW -j ACCEPT #ssh
iptables -A INPUT -i eth0 -p tcp --dport 21 -m state --state NEW -j ACCEPT #ftp
iptables -A INPUT -i eth0 -p tcp --dport 80 -m state --state NEW -j ACCEPT #www
iptables -A INPUT -i eth0 -p tcp --dport 5900  -m state --state NEW -j ACCEPT
Seba_Fan
Posty: 20
Rejestracja: 14 maja 2011, 15:01

Post autor: Seba_Fan »

Dziękuję, później sobie go zapiszę.
Dzięki :)


Myślę, że temat już można zamknąć, chyba wszystko już zostało powiedziane, jak też widać każdy ma inną koncepcję jak powinien wyglądać firewall.

Dziękuję wszystkim za zainteresowanie i pomoc.
ODPOWIEDZ