Nedaří se mi pingnout na venkovní bránu
Napsal: 26 led 2015 02:16
Zdravim, mám problém a potřeboval bych pomoc s jeho lokalizací ...
Moje situace je taková, že jsem přišel k síti, ke které nebyla žádná dokumentace a po mě se žádají jisté úpravy.
- síť jsem zmapoval jak se jen dalo viz topologie: https://drive.google.com/file/d/0B1DnsP ... RTX2s/view
- zjistil jsem, že síť nedisponuje routrem či firewallem síťové prvky tvoří čistě jen swirche a to od různých vendorů.
- o řízení sítě se stará Linux Server jménem Pingl na kterém běží Debian 5
Současné nestavení vypadá takto:
VLAN 1 – 192.168.5.0/24 ----- Admin Vlan (switche)
VLAN 2 – 89.29.92.128/25 ---- Ucitele
VLAN 3 - 89.29.92.0/25 ------- Studenti
VLAN 4 - 192.168.5.0/24 ----- Tiskarny, Servery
VLAN 5 - 82.209.51.112/29 -- Public IT
VLAN 6 - 192.168.32.0/19 ---- Wifi Clients
Ping route
Ping Interface
Ping DHCP
Ping Firewall
No a můj problém ... z Vlan6 se mi nepodaří pingnout na bránu, kterou mi poskytuje PODA 82.209.51.113
(z ostanich sití, jež tam už byli se pingnout dá)
- Vlan6 jsem do přidal já
- interfaces jsem nastavil správně
- DHCP mi funguje
- routování jsem podle mě nastavil správně
- ve firewallu jsem nenašel nic co by tomu bránilo
- podaři se mi pingnout na 82.209.51.115 (eth1 na Pingul), tak do té sítě vidím
- na switchích jsem všude vlan6 přidal
No a já bych potřeboval radu, kde bych měl hledat problém.
- zda je ještě něco co jsem v té síti nenašel třeba jako NATko ... a nebo zda já už mám vše nastavené v pořádku a potřeba aby nestavení provedla PODA na svých zařízeních ... nejsem zrovna linuxový guru a i když se vyznám relativně v sítích tak bych to rád ocenil názor někoho dalšího abych netrávil X hodin hledáním problému tam kde není.
Předem děkuji za pomoc Emp
Moje situace je taková, že jsem přišel k síti, ke které nebyla žádná dokumentace a po mě se žádají jisté úpravy.
- síť jsem zmapoval jak se jen dalo viz topologie: https://drive.google.com/file/d/0B1DnsP ... RTX2s/view
- zjistil jsem, že síť nedisponuje routrem či firewallem síťové prvky tvoří čistě jen swirche a to od různých vendorů.
- o řízení sítě se stará Linux Server jménem Pingl na kterém běží Debian 5
Současné nestavení vypadá takto:
VLAN 1 – 192.168.5.0/24 ----- Admin Vlan (switche)
VLAN 2 – 89.29.92.128/25 ---- Ucitele
VLAN 3 - 89.29.92.0/25 ------- Studenti
VLAN 4 - 192.168.5.0/24 ----- Tiskarny, Servery
VLAN 5 - 82.209.51.112/29 -- Public IT
VLAN 6 - 192.168.32.0/19 ---- Wifi Clients
Ping route
Kód: Vybrat vše
82.209.51.112/29 dev eth1 proto kernel scope link src 82.209.51.115
89.29.92.0/25 dev vlan3 proto kernel scope link src 89.29.92.1
89.29.92.128/25 dev vlan2 proto kernel scope link src 89.29.92.129
192.168.5.0/24 dev vlan4 proto kernel scope link src 192.168.5.1
192.168.32.0/19 dev vlan6 proto kernel scope link src 192.168.32.1
default via 82.209.51.113 dev eth1
Ping Interface
Kód: Vybrat vše
auto eth0 eth1 vlan2 vlan3 vlan4 vlan6
iface eth0 inet static
address 0.0.0.0
netmask 0.0.0.0
iface vlan2 inet static
address 89.29.92.129
netmask 255.255.255.128
vlan_raw_device eth0
iface vlan3 inet static
address 89.29.92.1
netmask 255.255.255.128
vlan_raw_device eth0
iface vlan4 inet static
address 192.168.5.1
netmask 255.255.255.0
vlan_raw_device eth0
iface vlan6 inet static
address 192.168.32.1
netmask 255.255.224.0
vlan_raw_device eth0
iface eth1 inet static
address 82.209.51.115
netmask 255.255.255.248
network 82.209.51.112
broadcast 82.209.51.119
gateway 82.209.51.113
dns-nameservers 62.129.50.20
dns-search ssss.cz
up /usr/local/bin/mpfw
Ping DHCP
Kód: Vybrat vše
#Vlan2 Ucitelsky segment
subnet 89.29.92.128 netmask 255.255.255.128 {
range 89.29.92.135 89.29.92.241;
range 89.29.92.243 89.29.92.254;
option domain-name-servers 89.29.92.129;
option domain-name "ssss.cz";
option routers 89.29.92.129;
option broadcast-address 89.29.92.255;
}
#Vlan3 Studenstky segment
subnet 89.29.92.0 netmask 255.255.255.128 {
range 89.29.92.10 89.29.92.28;
range 89.29.92.30 89.29.92.126;
option domain-name-servers 89.29.92.1;
option domain-name "ssss.cz";
option routers 89.29.92.1;
option broadcast-address 89.29.92.127;
}
#Vlan6 Wifi Clients
subnet 192.168.32.0 netmask 255.255.224.0 {
range 192.168.32.50 192.168.63.254;
option domain-name-servers 192.168.32.1;
option domain-name "ssss.cz";
option routers 192.168.32.1;
option broadcast-address 192.168.63.255;
}
Ping Firewall
Kód: Vybrat vše
# Vase IP adresa a vnejsi rozhrani
INET_IP="82.209.51.115"
INET_IFACE="eth1"
# IP a broadcast adresa a rozhrani vnitrni site
LAN1_IP="89.29.92.129/32"
LAN1_BCAST="89.29.92.255/32"
# LAN1_NET="89.29.92.128/19" # to tu zase naopak chybi
LAN1_IFACE="vlan2"
LAN2_IP="192.168.5.1/32"
LAN2_NET="192.168.5.0/24"
LAN2_BCAST="192.168.5.255/32"
LAN2_IFACE="vlan4"
LAN3_IP="89.29.92.1/32"
LAN3_NET="89.29.92.0/128"
LAN3_BCAST="89.29.92.127/32"
LAN3_IFACE="vlan3"
LAN4_IP="192.168.32.1/32"
LAN4_NET="192.168.32.0/19"
LAN4_BCAST="192.168.63.255/32"
LAN4_IFACE="vlan6"
RDP_PORT="3389"
#PC_IP="89.29.92.211"
PC_GOLEM="192.168.5.40"
RDP_VISKUP="2222"
PC_VISKUP="89.29.92.195"
RDP_MATULOVA="2233"
PC_MATULOVA="89.29.92.166"
# Lokalni loopback rozhrani
LO_IFACE="lo"
LO_IP="127.0.0.1/32"
# Cesta k programu iptables
IPTABLES="/sbin/iptables"
# Inicializace databaze modulu
/sbin/depmod -a
# Zavedeme moduly pro nestandardni cile
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_REJECT
/sbin/modprobe ipt_MASQUERADE
# Modul pro FTP prenosy
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
# Zapneme routovani paketu
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
# rp_filter na zamezeni IP spoofovani
for interface in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo "1" > ${interface}
done
chains=`cat /proc/net/ip_tables_names 2>/dev/null`
for i in $chains; do iptables -t $i -F; done
for i in $chains; do iptables -t $i -X; done
$IPTABLES -t mangle -F
$IPTABLES -F
# Implicitni politikou je zahazovat nepovolene pakety
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
#$I
#
# Retezec PREROUTING v NAT tabulce
#
# Odchozi HTTP pozadavky (na port 80 s vyjimkou lokalniho serveru)
# budou presmerovany na lokalniho squida (na portu 3128) ve funkci
#transparentni proxy cache.
# $IPTABLES -t nat -A PREROUTING -p tcp -i ! $INET_IFACE -d ! $INET_IP --dport 80 -j REDIRECT --to-port 3128
$IPTABLES -t nat -A PREROUTING -p tcp -i $INET_IFACE -d $INET_IP --destination-port $RDP_PORT -j DNAT --to $PC_GOLEM
$IPTABLES -t nat -A PREROUTING -p tcp -i $INET_IFACE -d $INET_IP --destination-port $RDP_VISKUP -j DNAT --to $PC_VISKUP:3389
$IPTABLES -t nat -A PREROUTING -p tcp -i $INET_IFACE -d $INET_IP --destination-port $RDP_MATULOVA -j DNAT --to $PC_MATULOVA:3389
# Presmerujeme port 2222 na port 22 (ssh) stanice uvnitr site
# $IPTABLES -t nat -A PREROUTING -p tcp -d $INET_IP --dport 2222 -j DNAT --to 192.168.1.2:22
#
# Retezec POSTROUTING v NAT tabulce
#
# IP maskarada - SNAT
# NATujeme
$IPTABLES -t nat -A POSTROUTING -s $LAN2_NET -o $INET_IFACE -j SNAT --to $INET_IP
# $IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to $INET_IP
#
# Pridavne retezce pro snazsi kontrolu na rezervovane adresy
#
# Zahazovat a logovat (max. 5 x 3 pakety za hod)
$IPTABLES -N logdrop
$IPTABLES -A logdrop -m limit --limit 5/h --limit-burst 3 -j LOG --log-prefix "Rezervovana adresa: "
$IPTABLES -A logdrop -j DROP
# V tomto retezci se kontroluje, zda prichozi pakety nemaji nesmyslnou IP adresu
$IPTABLES -N IN_FW
$IPTABLES -A IN_FW -s 192.168.0.0/16 -j logdrop # rezervovano podle RFC1918
$IPTABLES -A IN_FW -s 10.0.0.0/8 -j logdrop # ---- dtto ----
$IPTABLES -A IN_FW -s 172.16.0.0/12 -j logdrop # ---- dtto ----
$IPTABLES -A IN_FW -s 96.0.0.0/4 -j logdrop # rezervovano podle IANA
# ... dalsi rezervovane adresy mozno doplnit podle
# http://www.iana.com/assignments/ipv4-address-space
# TOS flagy slouzi k optimalizaci datovych cest. Pro ssh, ftp a telnet
# pozadujeme minimalni zpozdeni. Pro ftp-data zase maximalni propostnost
$IPTABLES -t mangle -A PREROUTING -p tcp --sport ssh -j TOS --set-tos Minimize-Delay
$IPTABLES -t mangle -A PREROUTING -p tcp --dport ssh -j TOS --set-tos Minimize-Delay
$IPTABLES -t mangle -A PREROUTING -p tcp --sport ftp -j TOS --set-tos Minimize-Delay
$IPTABLES -t mangle -A PREROUTING -p tcp --dport telnet -j TOS --set-tos Minimize-Delay
$IPTABLES -t mangle -A PREROUTING -p tcp --sport ftp-data -j TOS --set-tos Maximize-Throughput
#
# Retezec FORWARD
#
#$IPTABLES -A FORWARD -m layer7 --l7proto skypeout -j DROP
#$IPTABLES -A FORWARD -m layer7 --l7proto skypetoskype -j DROP
# Navazovani spojeni ala Microsoft -
# Paket navazuje spojeni, ale nema nastaveny priznak SYN, pryc s nim
$IPTABLES -A FORWARD -i $LAN1_IFACE -j ACCEPT
$IPTABLES -A FORWARD -i $LAN2_IFACE -j ACCEPT
$IPTABLES -A FORWARD -i $LAN3_IFACE -j ACCEPT
$IPTABLES -A FORWARD -i $LAN4_IFACE -j ACCEPT
# Routing zvenku dovnitr pouze pro navazana spojeni (stavovy firewall)
$IPTABLES -A FORWARD -i $INET_IFACE -o $LAN2_IFACE -d $PC_GOLEM -p tcp --destination-port $RDP_PORT -m state --state NEW -j ACCEPT
$IPTABLES -A FORWARD -i $INET_IFACE -o $LAN1_IFACE -d $PC_VISKUP -p tcp --destination-port $RDP_PORT -m state --state NEW -j ACCEPT
$IPTABLES -A FORWARD -i $INET_IFACE -o $LAN1_IFACE -d $PC_MATULOVA -p tcp --destination-port $RDP_PORT -m state --state NEW -j ACCEPT
$IPTABLES -A FORWARD -i $INET_IFACE -o $LAN1_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INET_IFACE -o $LAN2_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INET_IFACE -o $LAN3_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A FORWARD -i $INET_IFACE -o $LAN4_IFACE -m state --state ESTABLISHED,RELATED -j ACCEPT
# Ostatni pakety budou zahozeny, tak je budeme logovat (12 x 5 pkt/hod)
$IPTABLES -A FORWARD -m limit --limit 12/h -j LOG --log-prefix "forward drop: "
#
# Retezec INPUT
#
# Navazovani spojeni ala Microsoft -
# Paket navazuje spojeni, ale nema nastaveny priznak SYN, pryc s nim
$IPTABLES -A INPUT -p tcp ! --syn -m state --state NEW -j DROP
# Portscan s nastavenym SYN,FIN
$IPTABLES -A INPUT -p tcp -i $INET_IFACE --tcp-flags SYN,FIN SYN,FIN -j LOG -m limit --limit 10/m --log-prefix="bogus packet: "
$IPTABLES -A INPUT -p tcp -i $INET_IFACE --tcp-flags SYN,FIN SYN,FIN -j DROP
# Nejprve se zbavime nezadoucich adres
$IPTABLES -A INPUT -i $INET_IFACE -j IN_FW
# Pravidla pro povolene sluzby
# $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 21 -j ACCEPT #FTP server
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 22 -j ACCEPT #SSH server
# $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 25 -j ACCEPT #SMTP server
# $IPTABLES -A INPUT -i $INET_IFACE -p UDP --dport 53 -j ACCEPT #DNS server UDP
# $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 53 -j ACCEPT #DNS server TCP
# $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 80 -j ACCEPT #WWW server
# $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 110 -j ACCEPT #POP3 server
# $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 143 -j ACCEPT #IMAP server
# $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 443 -j ACCEPT #HTTPS server
# $IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 873 -j ACCEPT #rsync server
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport $RDP_VISKUP -j ACCEPT #viskup pc
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport $RDP_MATULOVA -j ACCEPT #matulova pc
# Sluzbu AUTH neni dobre filtrovat pomoci DROP, protoze to muze
# vest k prodlevam pri navazovani nekterych spojeni. Proto jej
# sice zamitneme, ale tak, aby nedoslo k nezadoucim prodlevam.
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 113 -m limit --limit 12/h -j LOG
$IPTABLES -A INPUT -i $INET_IFACE -p TCP --dport 113 -j REJECT --reject-with tcp-reset #AUTH server
# Propoustime pouze ICMP ping
$IPTABLES -A INPUT -i $INET_IFACE -p ICMP --icmp-type echo-request -j ACCEPT
# Loopback neni radno omezovat
$IPTABLES -A INPUT -i $LO_IFACE -j ACCEPT
# Stejne jako pakety z lokalni site, jsou-li urceny pro nas
$IPTABLES -A INPUT -i $LAN1_IFACE -d $LAN1_IP -j ACCEPT
$IPTABLES -A INPUT -i $LAN1_IFACE -d $INET_IP -j ACCEPT
$IPTABLES -A INPUT -i $LAN2_IFACE -d $LAN2_IP -j ACCEPT
$IPTABLES -A INPUT -i $LAN2_IFACE -d $INET_IP -j ACCEPT
$IPTABLES -A INPUT -i $LAN3_IFACE -d $LAN3_IP -j ACCEPT
$IPTABLES -A INPUT -i $LAN3_IFACE -d $INET_IP -j ACCEPT
$IPTABLES -A INPUT -i $LAN4_IFACE -d $LAN4_IP -j ACCEPT
$IPTABLES -A INPUT -i $LAN4_IFACE -d $INET_IP -j ACCEPT
# Broadcasty na lokalnim rozhrani jsou take nase
$IPTABLES -A INPUT -i $LAN1_IFACE -d $LAN1_BCAST -j ACCEPT
$IPTABLES -A INPUT -i $LAN2_IFACE -d $LAN2_BCAST -j ACCEPT
$IPTABLES -A INPUT -i $LAN3_IFACE -d $LAN3_BCAST -j ACCEPT
$IPTABLES -A INPUT -i $LAN4_IFACE -d $LAN4_BCAST -j ACCEPT
# MS klienti maji chybu v implementaci DHCP
$IPTABLES -A INPUT -i $LAN3_IFACE -p udp --dport 67 -j ACCEPT
$IPTABLES -A INPUT -i $LAN4_IFACE -p udp --dport 67 -j ACCEPT
# Pakety od navazanych spojeni jsou v poradku
$IPTABLES -A INPUT -d $INET_IP -m state --state ESTABLISHED,RELATED -j ACCEPT
# Vsechno ostatni je zakazano - tedy logujeme, maxim. 12x5 pkt/hod
$IPTABLES -A INPUT -m limit --limit 12/h -j LOG --log-prefix "INPUT drop: "
#
# Retezec OUTPUT
#
# TOS flagy slouzi k optimalizaci datovych cest. Pro ssh, ftp a telnet
# pozadujeme minimalni zpozdeni. Pro ftp-data zase maximalni propostnost
$IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --sport ssh -j TOS --set-tos Minimize-Delay
$IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --dport ssh -j TOS --set-tos Minimize-Delay
$IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --sport ftp -j TOS --set-tos Minimize-Delay
$IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --dport ftp -j TOS --set-tos Minimize-Delay
$IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --dport telnet -j TOS --set-tos Minimize-Delay
$IPTABLES -t mangle -A OUTPUT -o $INET_IFACE -p tcp --sport ftp-data -j TOS --set-tos Maximize-Throughput
# Povolime odchozi pakety, ktere maji nase IP adresy
$IPTABLES -A OUTPUT -s $LO_IP -j ACCEPT
$IPTABLES -A OUTPUT -s $LAN1_IP -j ACCEPT
$IPTABLES -A OUTPUT -s $LAN2_IP -j ACCEPT
$IPTABLES -A OUTPUT -s $LAN3_IP -j ACCEPT
$IPTABLES -A OUTPUT -s $LAN4_IP -j ACCEPT
$IPTABLES -A OUTPUT -s $INET_IP -j ACCEPT
# Povolime DHCP broadcasty na LAN rozhrani
# $IPTABLES -A OUTPUT -o $LAN1_IFACE -p UDP --dport 68 --sport 67 -j ACCEPT
# Ostatni pakety logujeme (nemely by byt zadne takove)
$IPTABLES -A OUTPUT -j LOG --log-prefix "OUTPUT drop: "
#povoleni WEBSERVERU na PC pani vychodilove 89.29.92.242
$IPTABLES -I FORWARD -j ACCEPT -p tcp -d 89.29.92.242 --dport 80
#povoleni vychodilova na RDP z domu
$IPTABLES -I FORWARD -j ACCEPT -p tcp -s 78.108.152.10 -d 89.29.92.242 --dport 3389
#povoleni PC na 201 301 pro pristup na datovy server
$IPTABLES -t nat -I POSTROUTING -j SNAT -s 89.29.92.62 -d 192.168.5.20 --to 192.168.5.1
$IPTABLES -t nat -I POSTROUTING -j SNAT -s 89.29.92.46 -d 192.168.5.20 --to 192.168.5.1
#povoleni tisku na Prizemi Sharp M236
#Novackova
$IPTABLES -t nat -I POSTROUTING -j SNAT -s 89.29.92.165 -d 192.168.5.38 --to 192.168.5.1
#Povoleni na tiskarnu 192.168.5.30
$IPTABLES -t nat -I POSTROUTING -j SNAT -s 89.29.92.190 -d 192.168.5.30 --to 192.168.5.1
$IPTABLES -t nat -I POSTROUTING -j SNAT -s 89.29.92.166 -d 192.168.5.30 --to 192.168.5.1
$IPTABLES -t nat -I POSTROUTING -j SNAT -s 89.29.92.160 -d 192.168.5.30 --to 192.168.5.1
iptables-save >/usr/local/bin/iptables
No a můj problém ... z Vlan6 se mi nepodaří pingnout na bránu, kterou mi poskytuje PODA 82.209.51.113
(z ostanich sití, jež tam už byli se pingnout dá)
- Vlan6 jsem do přidal já
- interfaces jsem nastavil správně
- DHCP mi funguje
- routování jsem podle mě nastavil správně
- ve firewallu jsem nenašel nic co by tomu bránilo
- podaři se mi pingnout na 82.209.51.115 (eth1 na Pingul), tak do té sítě vidím
- na switchích jsem všude vlan6 přidal
No a já bych potřeboval radu, kde bych měl hledat problém.
- zda je ještě něco co jsem v té síti nenašel třeba jako NATko ... a nebo zda já už mám vše nastavené v pořádku a potřeba aby nestavení provedla PODA na svých zařízeních ... nejsem zrovna linuxový guru a i když se vyznám relativně v sítích tak bych to rád ocenil názor někoho dalšího abych netrávil X hodin hledáním problému tam kde není.
Předem děkuji za pomoc Emp