SafeGroup

Pełna wersja: Konfiguracja iptables
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Stron: 1 2
Od jakiegoś czasu męczę się z konfiguracją. Opierając się na jednym z poradników mam takie reguły.
#Wyczyść istniejące reguły, nie chcemy narobić bałaganu
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT

#Odrzucenie ruchu wchodzącego
iptables -P INPUT DROP

#Odrzucenie ruchu przekazującego
iptables -P FORWARD DROP

#Akceptacja ruchu wychodzącego. Zakładamy, że ruch który wychodzi od nas jest bezpieczny.
iptables -P OUTPUT ACCEPT

#Akceptacja ruchu na loopback, nasze usługi muszą mieć możliwość wzajemnie się komunikować.
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT

#Akceptujemy pakiety powiązane z danymi których wysłanie zainicjowane było przez nasz serwer (to co my nawiązujemy jest bezpieczne)
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED

#Otwieramy porty dla usług, które mają być dostępne dla świata. Np. http
# iptables -A INPUT -p PROTOKÓŁ --dport NUMER PORTU -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

1. Po co dodatkowo otwierać port 80, skoro bez tego wpisu http działa bez problemu (przynajmniej dotychczas)?
2. Skaner online pokazuje mi, że ten port jest zamknięty. Co zrobić, aby go otworzyć?
Jestem w to cienki, ale poczytaj dobrze co masz w przypisach. Odnośnie pierwszego pytania to działa ponieważ port 80 jest otwierany przez tą regułę:
Kod:
Akceptujemy pakiety powiązane z danymi których wysłanie zainicjowane było przez nasz serwer (to co my nawiązujemy jest bezpieczne)
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED

Jeśli zainicjowałeś ruch na porcie 80 to jest on otwarty puki na nim odbywa się też ruch od Ciebie. Otwierając port otwierasz go i jest on zawsze otwarty.
Nie jestem w stanie powiedzieć czy prawidłowo masz reguły, bo ja kiedyś ustawiłem swój firewall i zapomniałem o nim. U siebie mam otwarty tylko 63001 port na torrenta, a reszta otwiera się sama Smile
Dzięki za wyjaśnienie, ale nadal nie rozumiem dlaczego skanery pokazują, że jest zamknięty, skoro według reguły powinien być otwarty.
Pokaż co da wynik polecenia:
Kod:
sudo iptables -L
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT all--anywhere anywhere
ACCEPT all--anywhere anywhere state RELATED,ESTABLISHED
ACCEPT tcp--anywhere anywhere tcp dpt:http

Chain FORWARD (policy DROP)
target prot opt source destination
ACCEPT all--anywhere anywhere
ACCEPT all--anywhere anywhere state RELATED,ESTABLISHED

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Nie ma że port 80 jest otwarty. Jak nie znajdziesz odpowiedzi to poczekaj jak wrócę na Linuksa, a wstawię co mam u siebie.
Czytając to rozumiem, że ta reguła otwiera port
#Otwieramy porty dla usług, które mają być dostępne dla świata. Np. http
# iptables -A INPUT -p PROTOKÓŁ --dport NUMER PORTU -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

Skoro port nie jest otwarty, co to oznacza?
ACCEPT tcp -- anywhere anywhere tcp dpt:http
Źle na to patrzysz, to jest w polityce DROP dla przychodzących -> odrzuć.
Wcześniej tego nie zauważyłem. Poczekam aż wrzucisz co masz u siebie, a w tym czasie poszukam rozwiązania.
Tak mam otwarty port 63001 jak widać dla pewności dla przychodzących i wychodzących, więc może spróbuj podobnie:
Kod:
# rtorrent /dom-nat /ghnet
iptables -A INPUT -p tcp --destination-port 63001 -j ACCEPT
iptables -A OUTPUT -p tcp --source-port 63001 -j ACCEPT

Wklejenie tutaj mojego firewalla to trochę lipa, bo nawet nie mam bladego pojęcia czy dobrze działa, nikt nigdy obeznany mi go nie sprawdzał.
Zrobiłem tak, ale brak rezultatu - port nadal zamknięty.
Meo napisał(a):Zrobiłem tak, ale brak rezultatu - port nadal zamknięty.

Rozumiem, że po każdej wprowadzonej zmianie przeładowujesz skrypt?
Kod:
sudo /etc/init.d/firewall restart

Ja mam skrypt dodany do init.d i tak muszę po każdej zmianie go przeładować aby wczytał na nowo ustawienia.
Skrypt przeładowuje ./iptables.rules. Po wpisaniu iptables -L są zmiany.

Używałem tego poradnika

[Aby zobaczyć linki, zarejestruj się tutaj]

Tak wygląda mój firewall, a składałem go dość długo, ostrzegam nie sugeruj się nim bo nie daje pewności:
[malware] #!/bin/sh

# czyszczenie reguł
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X

# wstępna ochrona
# ochrona przed atakiem typu Smurf
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
# nie akceptujemy pakietow "source route" (zmieniaja tablice routingu)
echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route
# nie przyjmujemy pakietow ICMP redirect, ktore moga zmienic nasza tablice routingu
echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects
# wlaczamy ochrone przed blednymi pakietami ICMP error
echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
# ochrona przed spoofingiem -kazdy interfejs sieciowy bedzie przyjmowal
# tylko te pakiety ktore znajduja sie w tablicy routingu
echo "1" > /proc/sys/net/ipv4/conf/all/rp_filter
# wlacza logowanie dziwnych (spoofed, source routed, redirects) pakietow
echo "1" > /proc/sys/net/ipv4/conf/all/log_martians
#Blokada przed atakami typu SYN FLOODING
echo "1" > /proc/sys/net/ipv4/tcp_syncookies

# Polityka bezpieczeństwa
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

# Reguły firewalla
# akceptacja pakietów przychodzących z połączeń nawiązanych.
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
# akceptacja pakietów przekierowanych z połączeń nazwiązanych.
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
# przychodzące lokalne pakiety
iptables -A INPUT -i lo -j ACCEPT

# rtorrent /dom-nat /ghnet
iptables -A INPUT -p tcp --destination-port 63001 -j ACCEPT
iptables -A OUTPUT -p tcp --source-port 63001 -j ACCEPT

#----------------------------------------------------#
# Blokujemy nowe polaczenia bez ustawionej flagiSYN
iptables -A INPUT -p tcp ! --syn -m conntrack --ctstate NEW -j DROP

# sprawdzamy fragmenty pakietow
iptables -A INPUT -f -j DROP

# blokada pakietow podobnych do prob ataku xmms
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP

# blokujemy puste pakiety
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP

# blokujemy fragmenty pakietow i metode Xmas treeSYN,FIN i SYN,RST
iptables -A INPUT -p ip -f -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL ACK,RST,SYN,FIN -j DROP
iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP

#reguly zabezpieczajace przed Anti-spoofingiem
iptables -A INPUT -s 200.200.200.200 -j DROP
iptables -A INPUT -s 192.168.0.0/24 -j DROP
iptables -A INPUT -s 127.0.0.0/8 -j DROP
iptables -A INPUT -s 0.0.0.0/8 -j DROP
iptables -A INPUT -s 10.0.0.0/8 -j DROP
iptables -A INPUT -s 172.16.0.0/12 -j DROP
iptables -A INPUT -s 224.0.0.0/3 -j DROP

# Uniemożliwianie pingowanie mnie
iptables -A INPUT -p icmp -j DROP[/malware]
Prawie jak malware, mam nadzieję, że możesz podejrzeć Smile
Dzięki, na szczęście mogę go zobaczyć. Jak dojdę dlaczego nie można otworzyć ego portu to napisze. Jeszcze jedno pytanie. Gdyby port 80 był całkowicie zamknięty to żadne strony by mi się nie wczytywały?
Meo napisał(a):Dzięki, na szczęście mogę go zobaczyć. Jak dojdę dlaczego nie można otworzyć ego portu to napisze. Jeszcze jedno pytanie. Gdyby port 80 był całkowicie zamknięty to żadne strony by mi się nie wczytywały?

Tak bo to http.
To chyba skanery są w błędzie, bo innego wytłumaczenia nie mam, skoro wszystko działa.

Konto usunięte

A czy łączysz się bezpośrednio, czy jesteś za NATem (np. router)?
Pamiętaj, że w tym drugim wypadku skaner nie skanuje Ciebie, a element brzegowy Twojej sieci.
lukasamd napisał(a):A czy łączysz się bezpośrednio, czy jesteś za NATem (np. router)?
Pamiętaj, że w tym drugim wypadku skaner nie skanuje Ciebie, a element brzegowy Twojej sieci.

Słuszna uwaga, całkowicie o tym zapomniałem, a sam przecież w takie sytuacji jestemWall
Mój komputer komputer łączy się bezpośrednio po kablu, a reszta urządzeń poprzez router.
Stron: 1 2