Strona 3 z 5

: 25 czerwca 2015, 14:13
autor: pawkrol
Powiedz mi, chyba powinienem zmienić w polityce domyślnej INPUT i FORWARD na DROP? I później dawać przyzwolenia na konkretne porty? Bo chyba tak byłoby bezpieczniej w sieci?
Oczywiście, że tak.


Daj taką regułę, bo już router nasłuchuje na porcie 22.

Kod: Zaznacz cały

iptables -t nat -A PREROUTING -i eth4 -p tcp -d 10.12.0.108 --dport 12345 -j DNAT --to-destination 192.168.3.2:22  
iptables -A FORWARD -p tcp -d 192.168.3.2 --dport 22 -j ACCEPT
Druga reguła jest nie potrzebna bo masz domyślną politykę FORWARD na ACCEPT

Do eagle przez putty będziesz dostawać sie po porcie 12345 i adresie 10.12.0.108

: 25 czerwca 2015, 14:57
autor: piteros
Magia, działa ;)

Ok to pozostało mi zabezpieczyć sieć i to wszystko.
A więc tak, ustawiłem regułę:

Kod: Zaznacz cały

iptables -P FORWARD DROP
a na końcu firewalla dopisałem:

Kod: Zaznacz cały

iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 80 -j ACCEPT
A internetu dalej nie mam w podsieci 192.168.0.0/24 :( (Jak reguła była ACCEPT to oczywiście był)

: 26 czerwca 2015, 09:03
autor: piteros
I takie jeszcze jedno pytanie, czy da się jakoś zobaczyć logi z tego przekierowania SSH z routera na eagla??
To chyba wystarczy?

Kod: Zaznacz cały

iptraf

: 26 czerwca 2015, 09:11
autor: dedito
piteros pisze:I takie jeszcze jedno pytanie, czy da się jakoś zobaczyć logi z tego przekierowania SSH z routera na eagla??
Tak, ustaw odpowiednią regułkę filtra pakietów z celem LOG.

: 26 czerwca 2015, 10:38
autor: piteros
A jak sieć zabezpieczyć, ale tak żebym mógł przeglądać strony. Nabazgrałem trochę ale dalej nic :/

Kod: Zaznacz cały

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

iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A INPUT -s 192.168.0.0/24 -j ACCEPT
iptables -A INPUT -s 192.168.3.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -m multiport -p tcp --dports 22,80,443 -j ACCEPT

#dostep do internetu
iptables -t nat -A POSTROUTING -o eth4 -s 192.168.0.0/24 -j SNAT --to 10.12.0.108


#dostep do DNS
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 192.168.3.2 -p udp --dport 53 -j SNAT --to 192.168.3.1


#dostep http i https
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --sport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --sport 53 -j ACCEPT
iptables -A INPUT -p udp --sport 53 -j ACCEPT


#forward pakietow
iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 53 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.0.0/24 --dport 53 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 137 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.0.0/24 --dport 137 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.3.0/24 --dport 22 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.3.0/24 --sport 22 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.3.0/24 --sport 22 -j ACCEPT


#Przeływ dns w podsieciach
iptables -A INPUT -s 192.168.3.2 -j ACCEPT
iptables -A FORWARD -s 192.168.3.2 -j ACCEPT

: 26 czerwca 2015, 11:10
autor: dedito
Po co regułki ACCEPT dla INPUT skoro cała polityka dla tego łańcucha jest ACCEPT?
Powtarzają się regułki dla połączeń nawiązanych.
Jakieś dziwne regułki dla "#dostep http i https"

: 26 czerwca 2015, 11:30
autor: pawkrol
Jak już wcześniej wspomniałem poczytaj o iptables, bo jak widać nie rozumiesz reguł.

Po co forwardujesz interfejs lo?
Jeśli jak wspomniał @dedito domyślną politykę INPUT masz na Accept, to po co reszta reguł? Tym zrobiłeś poważną lukę w firewallu.
Ponadto jeśli używasz reguł z pamięcią stanu to się ich trzymaj, bo to co zrobiłeś nie ma sensu. Raz używasz raz nie. Poczytaj o stanach połączeń.


Popatrz na te reguły i pomyśl:

Kod: Zaznacz cały

iptables -A INPUT -s 192.168.0.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -m state --state NEW -m multiport -p tcp --dports 22,80,443 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
lub:

Kod: Zaznacz cały

iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
lub:

Kod: Zaznacz cały

iptables -A INPUT -s 192.168.3.0/24 -j ACCEPT
.
.
.
iptables -A INPUT -s 192.168.3.2 -j ACCEPT

Jednym słowem wielki bałagan

: 26 czerwca 2015, 11:52
autor: piteros
Przyznam szczerze, że wpisałem na wiele sposobów te regułki z nadzieją, że cokolwiek zadziała. Stąd taki miks, ale w dalszym ciągu nie mogę uzyskać dostępu do internetu gdy FORWARD jest DROP :/

: 26 czerwca 2015, 11:58
autor: piteros

Kod: Zaznacz cały

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

## Pętla zwrotna ##
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

## Dostep http i https ##
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT

#dostep do internetu
iptables -t nat -A POSTROUTING -o eth4 -s 192.168.0.0/24 -j SNAT --to 10.12.0.108
iptables -t nat -A POSTROUTING -o eth4 -s 192.168.3.0/24 -j SNAT --to 10.12.0.108

#dostep do DNS
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 192.168.3.2 -p udp --dport 53 -j SNAT --to 192.168.3.1

## Ruch z podsieci ##
iptables -A INPUT -s 192.168.0.0/24 -j ACCEPT
iptables -A INPUT -s 192.168.3.0/24 -j ACCEPT

## Ruch z połączeń nawiązanych ##
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

## Przekazywanie pakietów ##
iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 80 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 53 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.0.0/24 --dport 53 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 137 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.0.0/24 --dport 137 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.3.0/24 --dport 22 -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.3.0/24 --sport 22 -j ACCEPT
iptables -A FORWARD -p udp -s 192.168.3.0/24 --sport 22 -j ACCEPT

## Przekazywanie ruchu z połączeń nawiązanych ##
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

## Zezwolenie na ruch wychodzący - inicjowanie połączenia ##
iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

: 26 czerwca 2015, 12:25
autor: pawkrol
W takim razie włącz logowanie łańcucha Forward i zobacz czemu nie działa.

Ponadto takie pytanie:

Jeśli serwer DNS dla sieci 192.168.0.0/24 jest pod adresem 192.168.3.2. To jak owy serwer ma wysłać dalej zapytanie gdy mu na to nie pozwalasz?