[+] W

Masz problemy z siecią bądź internetem? Zapytaj tu
coolturka
Posty: 61
Rejestracja: 30 września 2008, 00:08

[+] Włączenie iptables ogranicza dostęp do samby

Post autor: coolturka »

Witam.

Mam na Debianie zainstalowaną sambę. Wszystko dobrze działało w obydwie strony, udostępnianie plików i drukarka.
Gdy włączyłem też iptables, samba działa, ale już nie do końca sprawnie. Mianowicie na komputerze z Windowsem dalej widzę wszystko co udostępnia samba, czyli pliki i drukarkę, ale na Debianie nie widzę tego co jest udostępnione na Windowsie. Debian informuje komunikatem:

Kod: Zaznacz cały

Niestety, nie można wyświetlić całej zawartości: grupa_robocza.
Spędziłem nad tym problemem ponad dzień i nic. Przejrzałem sporo odnośników w Google i fora i nic. Nie mam pojęcia co jest nie tak z firewallem, bo gdy go wyłączę wszystko wraca do normy. Oto kod mojego firewalla:

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
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

iptables -A OUTPUT -m state -p icmp --state INVALID -j DROP
# odblokowany localhost
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT

# odblokowana samba
iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 137 -m state --state NEW -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 138 -m state --state NEW -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 139 -m state --state NEW -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 445 -m state --state NEW -j ACCEPT
# polaczenia nawiazane
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# udostepniaie internetu w sieci lokalnej
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j MASQUERADE
iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -s 192.168.2.0/24 -j ACCEPT
Będę wdzięczny za każdą pomoc i sugestie co do tego.
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Re: Włączenie iptables ogranicza dostęp do samby

Post autor: mariaczi »

coolturka pisze:

Kod: Zaznacz cały

# udostepniaie internetu w sieci lokalnej
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j MASQUERADE
iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -s 192.168.2.0/24 -j ACCEPT
Będę wdzięczny za każdą pomoc i sugestie co do tego.
Dopisłabym tu jeszcze

Kod: Zaznacz cały

iptables -A FORWARD -d 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -d 192.168.2.0/24 -j ACCEPT
Pzdr.
coolturka
Posty: 61
Rejestracja: 30 września 2008, 00:08

Post autor: coolturka »

I dalej nic. Dodanie tych dwóch regułek nie pomogło. Widzę nazwę komputera z Windowsem, ale nie mogę "wejść" do niego. Na pewno są tu użytkownicy, którzy korzystają z samby i iptables, jak u was to wygląda?
Awatar użytkownika
grzesiek
Junior Member
Posty: 932
Rejestracja: 06 stycznia 2008, 10:41
Lokalizacja: Białystok

Post autor: grzesiek »

A zmień tutaj na 455, i po co tu ten NEW...

Kod: Zaznacz cały

iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 445 -m state --state NEW -j ACCEPT 
Ogólnie nie podobają mi się Twoje reguły - powinny być bardziej szczegółowe!
coolturka
Posty: 61
Rejestracja: 30 września 2008, 00:08

Post autor: coolturka »

Upraszczam jak tylko mogę, by samba mi chodziła jak należy. Dodanie portu 455 też nie pomogło. Jakieś inne jeszcze propozycje ktokolwiek ma? Dzięki.
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Zerknij TU i zwróć uwagę na kolejność reguł iptables.
Awatar użytkownika
grzesiek
Junior Member
Posty: 932
Rejestracja: 06 stycznia 2008, 10:41
Lokalizacja: Białystok

Post autor: grzesiek »

A spróbuj dodać

Kod: Zaznacz cały

iptables -A INPUT -p tcp -s 192.168.1.0/24 --dport 111 -j ACCEPT
iptables -A INPUT -p udp -s 192.168.1.0/24 --dport 111 -j ACCEPT
można też

Kod: Zaznacz cały

iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT
jeżeli ufasz swojej sieci.
coolturka
Posty: 61
Rejestracja: 30 września 2008, 00:08

Post autor: coolturka »

mariaczi, zajrzałem na tą stronę i nawet skopiowałem kod firewalla stamtąd i nic. Grzesiek, dodanie portu 111 też nic nie dało. Zezwolenie na cały ruch z lanu pomogło, ale nie na tym to polega, nie po to chcę zbudować firewalla. Sieć lan bezpieczna niby jest, ale tego do końca być pewnym nie można, sam pewnie wiesz jak bywa. Obecnie firewall wygląda tak:

Kod: Zaznacz cały

# czyszczenie starych regul
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
iptables -F INPUT
iptables -P INPUT DROP
iptables -A INPUT -i lo -j ACCEPT

# zezwalamy na już nawiązane połączenia
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A INPUT -p tcp -s 192.168.2.0/24 --dport 111 -j ACCEPT
iptables -A INPUT -p udp -s 192.168.2.0/24 --dport 111 -j ACCEPT
iptables -A INPUT -s 192.168.2.0/24 -p udp --dport 138 -m state --state NEW -j ACCEPT
iptables -A INPUT -s 192.168.2.0/24 -p udp --dport 138 -m state --state NEW -j ACCEPT
iptables -A INPUT -s 192.168.2.0/24 -p tcp --dport 139 -m state --state NEW -j ACCEPT
iptables -A INPUT -s 192.168.2.0/24 -p tcp --dport 445 -m state --state NEW -j ACCEPT


# udostepniaie internetu w sieci lokalnej
echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j MASQUERADE

iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -s 192.168.2.0/24 -j ACCEPT
iptables -A FORWARD -d 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -d 192.168.2.0/24 -j ACCEPT
Już mi ręce opadają.
Awatar użytkownika
grzesiek
Junior Member
Posty: 932
Rejestracja: 06 stycznia 2008, 10:41
Lokalizacja: Białystok

Post autor: grzesiek »

Dam Ci prostą i skuteczną rade. Zdejmujesz firewall, odpalasz tcpdump albo Wireshark i patrzysz z czego to połączenie korzysta a czego to ty nie uwzględniłeś. Możesz nawet taki dump tutaj wrzucić to popatrzę.
I już widzę, że Ci się porty już pomyliły, miałeś 137 i 138.
Spróbuj jeszcze ten state NEW wywalić, ale wątpie.
Co do ruchu w sieci lokalnej ja przepuszczam, i tak mam ich wszystkich w DHCP po MAC pospisywanych. Firewall broni ściany zewnętrznej, jak to dobrze działa to po co zakładać barierę na ścianę wewnętrzną, no ale dobra. Czekam na logi połączeń.
coolturka
Posty: 61
Rejestracja: 30 września 2008, 00:08

Post autor: coolturka »

Odpaliłem tego tcpdump:

Kod: Zaznacz cały

22:16:32.798516 IP 192.168.2.1.50842 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:34.730525 IP 192.168.2.1.52131 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:36.702584 IP 192.168.2.1.57798 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:41.186546 IP 192.168.2.1.39681 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:41.462519 IP 192.168.2.1.39681 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:41.738459 IP 192.168.2.1.39681 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:43.670501 IP 192.168.2.1.38927 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:43.946453 IP 192.168.2.1.38927 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:44.222451 IP 192.168.2.1.38927 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:46.174563 IP 192.168.2.1.47012 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:46.174972 IP 192.168.2.3.netbios-ns > 192.168.2.1.47012: NBT UDP PACKET(137): QUERY; POSITIVE; RESPONSE; UNICAST
22:16:46.450449 IP 192.168.2.1.47012 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:46.450774 IP 192.168.2.3.netbios-ns > 192.168.2.1.47012: NBT UDP PACKET(137): QUERY; POSITIVE; RESPONSE; UNICAST
22:16:46.726479 IP 192.168.2.1.47012 > 192.168.2.255.netbios-ns: NBT UDP PACKET(137): QUERY; REQUEST; BROADCAST
22:16:46.726931 IP 192.168.2.3.netbios-ns > 192.168.2.1.47012: NBT UDP PACKET(137): QUERY; POSITIVE; RESPONSE; UNICAST
Oczywiście zmieniłem podwójny wpis 138 na 137 i dalej nic.
ODPOWIEDZ