Strona 1 z 1

IPTABLES udostepnieniem portu przez dwa komputery

: 06 lipca 2010, 11:32
autor: roomas
Witam wszystkich.

Sytuacja jest następująca
Załącznik schemat maly.jpg nie jest już dostępny
Na serwerze DMZ zainstalowana jest aplikacja, która korzysta z portu 2638 TCP, chciałbym teraz udostępnić tą aplikacje dla LAN-u gdzie użytkownicy będą korzystać z niej.

Niby to wszystko proste ale nie daję rady.

Wrzucam zawartość iptables na maszynach.

Iptables na serwerze DMZ:

Kod: Zaznacz cały

#!/bin/sh

#ochrona przed atakiem Smurf
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
#nie akceptujemy pakietow "source route"
echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route
#nie akceptujemy pakietow ktore moga zmienic tablice rutingu
echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects
#Ochrona przed blednymi komunikatami ICMP error
echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
#Logowanie dziwnych pakietow (spoofed, source routed, redirects)
#echo "1" > /proc/sys/net/ipv4/conf/all/log_martians

iptables -F
iptables -t nat -F
iptables -X
iptables -t nat -X
iptables -P FORWARD DROP
iptables -P INPUT DROP

#secure
#iptables -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
iptables -A INPUT -f -j DROP
#iptables -A INPUT -s 172.16.0.0/12 -j DROP
#iptables -A INPUT -s 10.0.0.0/8 -j DROP
iptables -A INPUT -s 224.0.0.0/4 -j DROP
iptables -A INPUT -s 240.0.0.0/5 -j DROP
#iptables -N syn-flood
#iptables -A INPUT -p tcp --syn -j syn-flood
#iptables -A syn-flood -m limit --limit 1/s --limit-burst 6 -j RETURN
#iptables -A syn-flood -m limit --limit 1/s --limit-burst 6 -j LOG --log-level de
#iptables -A syn-flood -j DROP

# reguly glowne
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -s localhost -j ACCEPT
iptables -A INPUT -s 127.0.0.1/255.0.0.0 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT


#dostep 
iptables -A INPUT -s 82.177.4.224/255.255.255.224 -m multiport -p tcp --dport www,443 -j ACCEPT
iptables -A INPUT -s 192.168.1.0/255.255.255.0 -m multiport -p tcp --dport ssh,2638 -j ACCEPT
iptables na PIX (to jest linux dla jasności)

Kod: Zaznacz cały

#!/bin/sh

modprobe ip_nat_ftp
echo "1" > /proc/sys/net/ipv4/ip_forward
ip addr add 82.177.4.226/27 dev eth0
ip addr add 82.177.4.227/27 dev eth0
ip addr add 82.177.4.228/27 dev eth0

#ochrona przed atakiem Smurf
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
#nie akceptujemy pakietow "source route"
echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route
#nie akceptujemy pakietow ktore moga zmienic tablice rutingu
echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects
#Ochrona przed blednymi komunikatami ICMP error
echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
#Logowanie dziwnych pakietow (spoofed, source routed, redirects)
#echo "1" > /proc/sys/net/ipv4/conf/all/log_martians



iptables -F
iptables -t nat -F

iptables -P INPUT DROP

iptables -A FORWARD -j ACCEPT
iptables -A INPUT -s localhost -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT

#Polaczenia z internetem
#iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#SSH z LAN
iptables -A INPUT -i eth1 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -j DROP



#DMZ
#iptables -A FORWARD -i eth2 -o eth0 -j ACCEPT
#iptables -A FORWARD -i eth0 -o eth2 -j ACCEPT
#iptables -A FORWARD -i eth1 -o eth2 -j ACCEPT

iptables -t nat -A PREROUTING -i eth0 -d 82.177.4.226 -j DNAT --to-destination 192.168.1.2
iptables -t nat -A PREROUTING -i eth0 -d 82.177.4.227 -j DNAT --to-destination 192.168.1.3
iptables -t nat -A PREROUTING -i eth0 -d 82.177.4.228 -j DNAT --to-destination 192.168.1.4
iptables -t nat -A POSTROUTING -s 192.168.1.2 -o eth0 -j SNAT --to-source 82.177.4.226
iptables -t nat -A POSTROUTING -s 192.168.1.3 -o eth0 -j SNAT --to-source 82.177.4.227
iptables -t nat -A POSTROUTING -s 192.168.1.4 -o eth0 -j SNAT --to-source 82.177.4.227



#Wlaczenie FORWARD i NAT dla LAN
#iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
iptables -A POSTROUTING -t nat -s 172.16.1.2 -o eth0 -j SNAT --to-source 82.177.4.230
iptables -A POSTROUTING -t nat -s 172.16.1.10 -o eth0 -j SNAT --to-source 82.177.4.230
iptables -A POSTROUTING -t nat -s 172.16.1.0/255.255.255.0 -o eth2 -j SNAT --to-source 192.168.1.1
I iptables na bramce:

Kod: Zaznacz cały

#!/bin/sh
route add default gw 172.16.1.1


#wyl odpowiedzi na pingi
#echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
#ochrona przed atakiem Smurf
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
#nie akceptujemy pakietow "source route"
echo "0" > /proc/sys/net/ipv4/conf/all/accept_source_route
#nie akceptujemy pakietow ktore moga zmienic tablice rutingu
echo "0" > /proc/sys/net/ipv4/conf/all/accept_redirects
#Ochrona przed blednymi komunikatami ICMP error
echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
#Logowanie dziwnych pakietow (spoofed, source routed, redirects)
#echo "1" > /proc/sys/net/ipv4/conf/all/log_martians

iptables -F
iptables -t nat -F
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -A FORWARD -p icmp -j ACCEPT
iptables -A INPUT -s localhost -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT

#Polaczenia z internetem (punktg)
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#Udostepnienie portu lokalnego serwera czasu NTPD
iptables -A INPUT -i eth1 -p udp --dport ntp -j ACCEPT


#Dostep dla sieci 10.10.0.0/16 do serwera w DMZ
[B]iptables -A FORWARD -s 10.10.0.0/255.255.0.0 -d 192.168.1.3 -p tcp --dport 2638 -i eth1 -j ACCEPT
iptables -A FORWARD -s 192.168.1.3 -d 10.10.0.0/255.255.0.0 -p tcp --sport 2638 -i eth1 -j ACCEPT[/B]
Będę wdzięczny za sprawdzenia tej konfiguracji.

P
ozdrawiam serdecznie.