Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Cześć,
Moje zmagania z routerem i łączem NETIA dalej trwają.
Problem polega na tym, że
Mam modem światłowodowy do którego jest przypisany IP. Urządzenie na drugim końcu czyli router mam mieć ip 80.50.X.XXX.
To wszystko jest tak a adresy IP mam 16 z puli 195.205.121.XXX.
Problem jest w tym, że router ma 2 karty sieciowe i jak zew karcie przypiszę IP 80.50.X.XXX , a drugą podepnę do lan-u to host 195.205.121.XXX przestaje działać w sieci zewnętrznej.
Mam pytanie czy do tej głównej karty mam dopisać te IP 195.205.121.XXX , na których obecnie coś mi działa i jak to przekierować na tą drugą kartę nat by omijało moją sieć wewnętrzną. Jakieś VLAN muszę porobić.
Kurcze strasznie to zamotane i już zgłupiałem kompletnie jak to zrobić.
Będę wdzięczny za pomoc jeśli ktoś coś zrozumiał.
Offline
* co rozumiesz przez "przestaje działać w sieci zewnętrznej"?
* pokaz wykik komendy route -n
* czy forward pakietow w /proc wlaczony?
* rozumiem ze chcesz miec: modem_swiatlowodowy ---(siec polaczeniowa 80.50.X.XXX)--- router_linux --- hosty z adresacja 195.205.121.XXX, jezeli inaczej to opisz dokladnie jak to ma wygladac ...
Offline
Ma to wyglądać tak,
Jeszcze nic nie zrobiłem bo przeraża mnie to :)
Jestem początkującym, adminem a firma która pożyczyła nam router CISCO chce go zabrać. Do tej pory Oni robili wszystko, aj wpinałem sobie serwery w odpowiedniego SWITH i nadawałem ip i działa.
internet MODEM Światłowodowy ----> 80.50.4.XX5-----> ->ETH0 ROUTER 80.50.4.XX6 ETH1
------>195.205.121.XXX
-------> LAN WEW
Tak to mniej więcej ma wyglądać. Teraz są borobione jakieś VLAN 30 na router CISCO, ale jego już nie będzie.
Problem w tym jaki IP ustawić na ETH1?
Czy można zrobić jakieś VLANY jak?
Jak przekierować zapytania kierowane na 195.205.121.XXX ?
Troszkę iptables znam, ale jakoś kompletnie tego nie widzę
Ostatnio edytowany przez redelek (2009-06-29 14:38:36)
Offline
redelek - istawiasz tp tak
----- WAN 80.50.X.XXX. [router] LAN 195.205.121.XXY.----
na routerze
iptables -A FORWARD -s 195.205.121.XXX/28 -j ACCEPT iptables -A FORWARD -d 195.205.121.XXX/28 -j ACCEPT
Komputerom w lan przyposujesz adresy 195.205.121.XXZ ustawiasz brame na 195.205.121.XXX pamietaj o ustawieniu komputera w lanie poprawnej maski 255.255.255.240
gdzie:
195.205.121.XXX - adres sieci
195.205.121.XXY - 1 adres IP do wykorzystania
195.205.121.XXZ - adres IP przypisany kompowi w lan kolejny
Offline
Docelowo tak ma to wyglądać.
Ostatnio edytowany przez redelek (2009-06-29 16:47:19)
Offline
co do lanu wewnetrznego to na eth1 przypisujesz po prostu 2 adresy ip - jeden z puli prywatnej drugi z 195.205.121.XXX (komenda ip addr add)
jezeli chcesz mozesz robic vlany ale do tego nie sa one potrzebne ...
Offline
A podpowiesz na czym robi się VLAN ?
Offline
vconfig ... troche wiecej - http://www.opcode.eu.org/sieci_komputerowe_uslugi/# … serwer:switch
Offline
Hej,
Walczę i nie za bardzo rozumiem jedną rzecz.
Tak jak już wspomniałem wcześniej mam magiczne połączenie z modemem i ślęczę nad tym problemem.
Mam 3 łańcuchy INPUT FORWARD OUTPUT i POSTROUTING ( tego łańcucha nie widzę jak zrobię sobie iptables -L ale oki nie o niego chodzi )
Dodałem sobie 2 łańcuchy żebym miał łatwiej do wyszukiwania
LAN i WAN. Dodałem je
iptables -N LAN iptables -N WAN
No dobra wszystko pięknie, teraz zaczyna się zabawa
Do łańcucha LAN chcę dodać porty, które mogą wychodzić i wchodzić
iptables -A LAN -s 0/0 -p tcp --dport 80 -j ACCEPT iptables -A LAN -s 0/0 -p udp --dport 80 -j ACCEPT iptables -A LAN -s 0/0 -p udp --dport 53 -j ACCEPT iptables -A LAN -s 0/0 -p tcp --dport 443 -j ACCEPT iptables -A LAN -s 0/0 -p tcp --dport 20 -j ACCEPT iptables -A LAN -s 0/0 -p tcp --dport 21 -j ACCEPT iptables -A LAN -s 0/0 -p tcp --dport 6000:6500 -j ACCEPT itd 465,25,993,995,110,22,8074,54534
To mają być porty dostępne dla użytkowników czyli wszyscy z sieci mogą wychodzić na takie porty na świat i wszyscy.
Dodaję wpis do forward i POSTROUTING
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 10.0.1.0/24 -j MASQUERADE
Teraz mam kilka pytanka
1. Gdzie i jak podłączyć łańcuch LAN ? ( do łańcucha OUTPUT ?)
2. Jak ustawić POSTROUTING, żeby nie maskował mi IP Publicznych ?
3. Gdzie i jak podłączyć łańcuch WLAN? ( do łańcucha INPUT ?)
Przepraszam, ale nie radzę sobie i potrzebują pomocy
Offline
redelek napisał(-a):
Mam 3 łańcuchy INPUT FORWARD OUTPUT i POSTROUTING ( tego łańcucha nie widzę jak zrobię sobie iptables -L ale oki nie o niego chodzi )
bo go masz w tabeli nat ktora nie jest domyslnie pokazywana aby go obejrzec robisz iptables -t nat -L
redelek napisał(-a):
1. Gdzie i jak podłączyć łańcuch LAN ? ( do łańcucha OUTPUT ?)
to co ma byc przepuszczane (do sieci za routerem lub z niej) ustawiasz w lancuch FORWARD (nie OUTPUT/INPUT) z odpowiednimi -s -d
redelek napisał(-a):
2. Jak ustawić POSTROUTING, żeby nie maskował mi IP Publicznych ?
podana regulka z -s 10.0.1.0/24 wydaje sie wystarczajaca (adresacja publiczna sie na nia nie zalapuje)
redelek napisał(-a):
3. Gdzie i jak podłączyć łańcuch WLAN? ( do łańcucha INPUT ?)
nie napisales co to za lancuch ...
Offline
O rany, to jak podłączyć łańcuch LAN do FORWARD ?
WLAN - to nazwa łańcucha dla publicznych IP które mam z puli 195.121.205.
W nim też będą ograniczenia co do łączenia się z serwerami na odpowiednich portach to znaczy , że on też ma być w FORWARD podpięty ?
Jak zrobić POSROUTING, żeby nie Maskował mi publicznych adresów IP ?
Offline
POSTROUTING tak jak napisales ...
ruch dio tych lancuchow musisz kierowac w oparciu o odpowiednie -s / -d z FORWARD ...
masz zrzuty konfigu z bardzo podobnej sytuacji 89.171.95.144/28 - siec publiczna routowana, 213.134.140.16/30 - siec polaczeniowa, 192.168.0.0/16 - sieci prawatne
root@furtka:/home/rrp# iptables -L POSTROUTING -n -t nat Chain POSTROUTING (policy ACCEPT) target prot opt source destination SNAT !esp -- 192.168.0.0/16 0.0.0.0/0 to:213.134.140.18
root@furtka:/home/rrp# iptables -L FORWARD -n Chain FORWARD (policy ACCEPT) target prot opt source destination ACCEPT all -- 192.168.0.0/16 89.171.95.144/28 ACCEPT all -- 89.171.95.144/28 192.168.0.0/16 ACCEPT all -- 89.171.95.144/28 0.0.0.0/0 ACCEPT all -- 0.0.0.0/0 89.171.95.144/28 ACCEPT all -- 192.168.1.0/24 0.0.0.0/0 ACCEPT all -- 0.0.0.0/0 192.168.1.0/24 ACCEPT all -- 192.168.2.0/24 0.0.0.0/0 ACCEPT all -- 0.0.0.0/0 192.168.2.0/24 DROP all -- 0.0.0.0/0 0.0.0.0/0
root@furtka:/home/rrp# ip addr show dev eth1 2: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:01:02:df:93:a3 brd ff:ff:ff:ff:ff:ff inet 213.134.140.18/30 brd 213.134.140.19 scope global eth1 root@furtka:/home/rrp# ip addr show dev eth0 3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:e0:4c:65:02:23 brd ff:ff:ff:ff:ff:ff inet 89.171.95.146/28 brd 89.171.95.159 scope global eth0 inet 192.168.0.146/16 brd 192.168.255.255 scope global eth0 inet 192.168.0.1/16 brd 192.168.255.255 scope global secondary eth0 inet6 2001:16b0:1002::1/48 scope global valid_lft forever preferred_lft forever inet6 2001:16b0:1002::145/48 scope global valid_lft forever preferred_lft forever inet6 2001:16b0:1002::146/48 scope global valid_lft forever preferred_lft forever inet6 fe80::2e0:4cff:fe65:223/64 scope link valid_lft forever preferred_lft forever
Offline
najprościej moim zdaniem to robisz tak:
ustawiasz 2 interfejsy do sieci za routerem np eth1 192.168.1.0/24 i eth2 10.0.0.0/28, eth1 to interfejs do sieci LAN a eth2 do dawania publicznych ip, z sieci 192.168.1.0/24 robisz nat, a z sieci 10.0.0.0/28 routing na publiczne ip ustawione na interfejsie wan routera (aliasy lub vlany - jak wolisz), poniżej przykład jak przypisywać zewnętrzne ip na przykładzie aliasu:
ifconfig eth0:1 195.205.121.129 broadcast 195.205.121.143 netmask 255.255.255.240 up ip route add 195.205.121.129 via 10.0.0.1 Na komputerze klienta przypisujemy ip 195.205.121.129, maske 255.255.255.240, bramke 10.0.0.1: ifconfig eth0 195.205.121.129 netmask 255.255.255.240 broadcast 195.205.121.143 up route add default gw 10.0.0.1
Ostatnio edytowany przez siarka2107 (2009-07-10 12:59:23)
Offline
BERCIK a mogę do Ciebie jakoś napisać e-mail bo zrobimy bardzo długiego posta :)
Offline
mozesz napisac maila ... mozemy tez zrobic dlugiego posta bo temat routingu publicznych ip i tak powraca co pewien czas ...
Offline
No dobra to załapałem co nieco.
Na razie zabawa tkwi w LAN.
Wiem , że na swoim routerku muszę do ETH1 dopisać 3 IP i to powinno zadziałać.
Dodam reguły PREROUTING i POSTROUTING i to powinno załatwić mi publiczne IP.
Wracając do lanu. Ustawiłem sobie tak
echo 1 > /proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -o eth0 -s 10.0.1.0/24 -j MASQUERADE
Śmiga jak szalone. Problem w tym, że nie chcę by użytkownicy korzystali z wszystkich portów
Dodaję łańcuch LAN
iptables -N LAN
w nim mam tylko to na razie
iptables -A LAN -s 0/0 -p tcp --dport 22 -j ACCEPT iptables -A LAN -s 0/0 -p tcp --dport 80 -j ACCEPT
Podpinam to pod łańcuch OUTPUT bo rozumiem, że to jest właśnie ten łańcuch z którego wychodzi wszystko na zewnątrz
iptables -A OUTPUT -j LAN
Zmieniam polisę łańcucha na DROP i lipa nic mi nie działa wszystko jest zablokowane.
Odwrotnie też nie ma efektu najpierw podłączam łańcuch LAN a potem cały OUTPUT DROP.
Wiem, że jestem "upierdliwy", ale chciałbym to zrobić raz a dobrze. Ma ktoś do mnie jeszcze cierpliwość ?:)
Ostatnio edytowany przez redelek (2009-07-13 14:45:14)
Offline
redelek napisał(-a):
Podpinam to pod łańcuch OUTPUT bo rozumiem, że to jest właśnie ten łańcuch z którego wychodzi wszystko na zewnątrz
1. pisalem ze nie INPUT/OUTPUT tylko FORWARD
2. jako ze jestes zielony w iptablesie baw sie bez tworzenia wlasnych lancuchow tylko wstawiaj reguly do lancuchow standardowych ...
3. obejrzyj i zrozum - http://xkr47.outerspace.dyndns.org/netfilter/packet … et_flow10.png
Offline
Mam błąd wczytywania strony:(
Chciałem dodać łańcuch żeby od samego początku było ładnie i przejrzyście :(
Offline
Walczę i walczę cały czas.
Dałem FORWARD -P DROP to zablokowało mi dojście do internetu dal wszystkich komputerów.
Teraz mam problem bo ani
-I FORWARD -s 10.0.1.0/24 -p tcp --dport 80 -j ACCEP
ANI
-A FORWARD -s 10.0.1.0/24 -p tcp --dport 80 -j ACCEP
Nadal nie uruchamia połączenia na www dlaczego ?
Jak FORWARD mam na DROP i dam tak
iptables -I FORWARD -i eth1 -d 10.0.1.0/24 -j DROP iptables -A FORWARD -i eth1 -s 10.0.1.0/24 -j ACCEPT iptables -A FORWARD -i eth0 -d 10.0.1.0/24 -j ACCEPT
To działa pięknie tylko wszystkie porty mam dla użytkowników otwarte a mi nie o to chodzi
Ostatnio edytowany przez redelek (2009-07-13 17:28:30)
Offline
musisz zezwolic na przychodzenie polaczen do LAN oraz na wychodzenie na wskazane porty ... czyli
iptables -A FORWARD -s 10.0.1.0/24 -p tcp --dport 80 -j ACCEPT iptables -A FORWARD -d 10.0.1.0/24 -j ACCEPT
jako ze tamta stronka chyba faktycznie lezy to wrzucilem do mnie http://www.n17.waw.pl/~rrp/TMP/packet_flow10.png
Offline
Dzięki Tobie widać już światełko w TUUUUNELU, który jeszcze jest BAAAARDZO DŁUGI
Zrobiłem już sobie taki skrypt
#!/bin/bash ### ZMIENNE WAN="eth0" LAN="eth1" IPWAN="80.50.4.146" IPWAN2="" IPWAN3="" IPLAN="10.0.1.1" CLAN="10.0.1.0/24" F="/sbin/iptables" M="/sbin/modprobe" TIM="1800" COUNT="3" ## PODSTAWOWA USTAWIENIA ZAWSZE WCZYTYWANE $M ip_tables $M ip_nat_ftp $M iptable_filter $M ip_conntrack_ftp # 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 # KOCHANY FORWARD echo 1 > /proc/sys/net/ipv4/ip_forward case "$1" in "stop") $F -F $F -t nat -F $F -P FORWARD ACCEPT $F -P INPUT ACCEPT $F -P OUTPUT ACCEPT echo "Firewall stopped ..." ;; "start") echo "Configure the firewall started ..." ################# # BLOKUJEMY WSZYSTKO # ################# $F -P INPUT DROP $F -P OUTPUT ACCEPT $F -P FORWARD DROP #### wlaczenie loopback $F -A INPUT -i lo -j ACCEPT $F -A OUTPUT -o lo -j ACCEPT $F -A FORWARD -o lo -j ACCEPT ## --- INPUT ---- #już nawiązanych (ESTABLISHED) połączeń. $F -A INPUT -i $WAN -m state --state ESTABLISHED,RELATED -j ACCEPT # ODBLOKOWUJEMY USLUFI #ICM ODPORNE NA ATAK $F -A INPUT -p icmp -j ACCEPT $F -A INPUT -p icmp --icmp-type echo-request -m limit --limit 2/s -j ACCEPT $F -A INPUT -p ICMP -s 0/0 --icmp-type 8 -j DROP $F -A INPUT -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT # HTTP #$F -A INPUT -s 0/0 -p tcp --dport 80 -j ACCEPT $F -A INPUT -s $CLAN -p tcp --dport 80 -j ACCEPT # HTTPS #$F -A INPUT -s 0/0 -p tcp --dport 443 -j ACCEPT # HTTP WEBCACHE #$F -A INPUT -s 0/0 -p tcp --dport 8080 -j ACCEPT # ssh $F -A INPUT -p tcp --dport 22 -j ACCEPT # WSZYSTKO CO Z LAN MOŻE WYJŚĆ $F -A INPUT -d $CLAN -j ACCEPT # KASOWANIE PAKIETOW Z BLEDNYMI FLAGAMI $F -A INPUT -p tcp --tcp-flags ALL NONE -j DROP $F -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP $F -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP $F -A INPUT -p tcp --tcp-flags FIN,RST FIN,RST -j DROP $F -A INPUT -p tcp --tcp-flags ACK,FIN FIN -j DROP $F -A INPUT -p tcp --tcp-flags ACK,PSH PSH -j DROP $F -A INPUT -p tcp --tcp-flags ACK,URG URG -j DROP #zapisywanie do logow pakietow nie wpuszczonych $F -A INPUT -j LOG -m limit --limit 15/h --log-prefix '** IPTABLES_INPUT **' --log-level 4 ####################################################################################### ## -- FORWARD --- $F -t nat -A POSTROUTING -s $CLAN -d 0/0 -j MASQUERADE $F -A FORWARD -s $CLAN -p tcp --dport 80 -j ACCEPT $F -A FORWARD -s $CLAN -p tcp --dport 8080 -j ACCEPT $F -A FORWARD -s $CLAN -p tcp --dport 443 -j ACCEPT $F -A FORWARD -s $CLAN -p tcp --dport 110 -j ACCEPT $F -A FORWARD -s $CLAN -p tcp --dport 25 -j ACCEPT $F -A FORWARD -s $CLAN -p tcp --dport 993 -j ACCEPT $F -A FORWARD -s $CLAN -p tcp --dport 995 -j ACCEPT $F -A FORWARD -s $CLAN -p tcp --dport 465 -j ACCEPT $F -A FORWARD -s $CLAN -p tcp --dport 20 -j ACCEPT $F -A FORWARD -s $CLAN -p tcp --dport 21 -j ACCEPT $F -A FORWARD -s $CLAN -p tcp --dport 6000:6500 -j ACCEPT #GADU-GADU #$F -A FORWARD -s $CLAN -p tcp --dport 8074 -j ACCEPT # GADU-GADU wymiana plików #$F -A FORWARD -s $CLAN -p tcp --dport 1550 -j ACCEPT #SKYPE #$F -A FORWARD --protocol tcp --source-port 54534 -j ACCEPT $F -A FORWARD -s $CLAN -p icmp -j ACCEPT $F -A FORWARD -d $CLAN -j ACCEPT $F -A FORWARD -i $LAN -m state --state ESTABLISHED,RELATED -j ACCEPT $F -A FORWARD -j LOG -m limit --limit 15/h --log-prefix '** IPTABLES_FORWARD **' --log-level 4 ################################################################################### echo "Firewall configuration completed ..." ;; "restart") echo "Please use the stop | start" ;; *) echo "Use the command stop | start | restart" ;; esac
Jak na razie mam zablokowane porty z ZEWNĄTRZ i o to chodziło
Mam ruch kierowany do LAN i mam zablokowane wszystkie porty mogę je odblokowywać
Teraz kolej na te serwerki z PUBLICZNYMI IP.
Powiedź czy dobrze myślę.
Muszę ruszyć łańcuchy
PREROUTING
POSTROUTING?
Offline
redelek napisał(-a):
Teraz kolej na te serwerki z PUBLICZNYMI IP.
Powiedź czy dobrze myślę.
Muszę ruszyć łańcuchy
PREROUTING
POSTROUTING?
nie ... musisz tylko zezwolic w forward ...
co do samego filtrowania to ja bym puscil jeszcze conajmniej xmpp i sip ... natomiast nie wiem czemu ma sluzyc te 6000-6500
Offline
bercik napisał(-a):
nie ... musisz tylko zezwolic w forward ...
co do samego filtrowania to ja bym puscil jeszcze conajmniej xmpp i sip ... natomiast nie wiem czemu ma sluzyc te 6000-6500
No tak SIP do telefonów VOIP które posiadam :) ale to już wyjdzie w praniu. XMPP to nie wiem co to jest za usługa.
Czyli mówiż że też FORWARD pobawić się publicznymi IP nie kombinować POSTROUTING
Na publicznych IP mam serwery WWW FTP i POCZTĘ. 6000-6500 to mój serwer vsftpd
Offline
redelek napisał(-a):
XMPP to nie wiem co to jest za usługa.
powszechniej znana jako jabber/gtalk/...
redelek napisał(-a):
Czyli mówiż że też FORWARD pobawić się publicznymi IP nie kombinować POSTROUTING
tak, aby zaczelo to dzialac (pod warunkiem odpowiedniej konfiguracji adresow ip na kartach sieciowych) wystaczy:
$F -A FORWARD -s $PUB -j ACCEPT $F -A FORWARD -d $PUB -j ACCEPT
gdzie $PUB to adres routowanej sieci publicznej
Offline
Mam tak
eth0 - głowna karta 80.50.4.146/32
eth1 - glowny wew 10.0.1.1/24
eth1:0 195.205.121.129/26
eth1:1 195.205.121.131/26
Mam nadzieję że to zadziała, jak to w sobotę rozepnę :) Inaczej praca papa :) już i tak papa ale warto powalczyć :)
Offline