Page 1 of 34 12311 ... LastLast
Results 1 to 15 of 499

Thread: Настройка IPTables

  1. #1

    Question Настройка IPTables

    Приветствую,нужна твоя помощь.

    Проблемка следующая:
    Есть 2 независимые сети, скажем "A" и "B". Раздавать интернет. Интернет "идет" через местную локльную сеть, Присваивается IP через DHCP.

    Что я делаю.
    через оболочку настраиваю.
    WAN - клиент DHCP (возможно зделать если ответа от сервера нет то по умолчанию выставлялся определленный IP)
    LAN - 10.0.9.1/255.255.255.0 - "A"

    Через телнет
    LAN "B"
    robocfg vlan 2 ports "1 5t" vlan 0 ports "2 3 4 5t"
    vconfig add eth0 2
    ifconfig vlan2 10.0.8.1 broadcast 10.0.8.255 netmask 255.255.255.0 up

    все вроде поднимается но в интерент через vlan2 не выходит.
    А так же не могу подсоединиться по телнету из сети LAN "B".

    А что дальше делать ?
    Как я понемаю надо прописывать правила, но какие?

    PS: В поиске я искал похожую задачу, но все хотят настраивать 2 WAN интерфейса.

  2. #2

    Question Настройка IPTables

    Прошивка WL500gp-1.9.2.7-8.19.trx
    Как можно менять правила которые забиты по умолчанию (может есть файл)?
    Или единственный способ менять правили IPTables через /usr/local/sbin/post-firewall – (исполняется всякий раз, после того как устройство меняет внутренние правила с помощью команд iptables, с тем, чтобы Вы могли внести свои изменения в firewall)?

  3. #3
    А в чём, собственно, проблема?

    У меня, например, так:

    # Default policy
    iptables -P INPUT DROP
    iptables -D INPUT -j DROP
    iptables -D INPUT -m state --state INVALID -j DROP
    iptables -I INPUT 1 -m state --state INVALID -j logdrop
    iptables -F logdrop
    iptables -A logdrop -j LOG --log-prefix "DROP " --log-tcp-sequence --log-tcp-options --log-ip-options
    iptables -A logdrop -j DROP
    + куча строчек для сервисов.

  4. #4
    Проблемы действительно нет.
    Просто хочется понять, где то же должны быть настройки, которые изначально в прошивке… И главное хочется понять можно ли их менять?
    P.S. И спасибо что откликнулись…

  5. #5
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,777
    Во первых, есть комманда iptables-save
    Во вторых, при загрузке по установкам веб-морды генерятся файлы /tmp/filter_rules и /tmp/nat_rules , которые затем заливаются с помощью iptables-restore

  6. #6
    Join Date
    Feb 2008
    Location
    Moscow
    Posts
    115
    Поднял SSH сервер, как описано в настройке роутера с нуля, разрешил в iptables доступ по WAN
    iptables -I INPUT -p tcp --dport 22 -j ACCEPT
    все заработало, хотя мне не очень понятно, почему данное правило разрешает доступ имено по WAN...
    (т.е. до того как его прописал, ямог толкьо из LAN лезть по SSH, но ведь это-то тоже INPUT ?)

    Но тут понял, что на работе у меня закрыт 22 порт

    как можно на роутере прописать перекидывание пакетов приходящих ИМЕННО ПО WAN на какой-нить 8081 порт на порт 22?
    или можно в настройках SSH сервера изменить порт для внешнего интерфейса?

  7. #7
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,777
    iptables -t nat -A PREROUTING -i $1 -p tcp --dport 8081 -j DNAT --to-destination $4:22
    или
    dropbear -p 22 -p 8081

  8. #8
    Join Date
    Feb 2008
    Location
    Moscow
    Posts
    115
    к сожалению, ни выполнение команды
    dropbear -p 22 -p 8081
    ни прописывания
    iptables -t nat -A PREROUTING -i $1 -p tcp --dport 8081 -j DNAT --to-destination $4:22 в post-firewall с последующей перезагрузкой не помогли...
    ssh так и соединятется извне и из локалки по 22 порту
    а надо что бы измне по 8081 ,а из локалки по 22...

  9. #9
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,777
    так, конкретизирую.

    По первому вариану обращение из wan к порту 8081 должно привести к перебросу на 22й порт, на котором ssh сервер сидит по умолчанию.

    Второй вариант задает dropbear слушать на двух портах, при этом доступ на 8081 из wan должен быть разрешен:
    iptables -A INPUT -p tcp --syn --dport 8081 -j ACCEPT

    _в_обоих_случаях_ правило iptables -I INPUT -p tcp --dport 22 -j ACCEPT должно отсутствовать.

    Все действия с iptables должны быть записаны в post-firewall

    Если по прежнему не поможет --- приведите вывод следующих комманд
    iptables -L
    iptables -L -t nat
    netstat -na | grep LISTEN
    Last edited by al37919; 05-03-2008 at 09:02.

  10. #10
    Join Date
    Feb 2008
    Location
    Moscow
    Posts
    115
    Quote Originally Posted by al37919 View Post
    так, конкретизирую.

    По первому вариану обращение из wan к порту 8081 должно привести к перебросу на 22й порт, на котором ssh сервер сидит по умолчанию.

    Второй вариант задает dropbear слушать на двух портах, при этом доступ на 8081 из wan должен быть разрешен:
    iptables -A INPUT -p tcp --syn --dport 8081 -j ACCEPT

    _в_обоих_случаях_ правило iptables -I INPUT -p tcp --dport 22 -j ACCEPT должно отсутствовать.

    Все действия с iptables должны быть записаны в post-firewall

    Если по прежнему не поможет --- приведите вывод следующих комманд
    iptables -L
    iptables -L -t nat
    netstat -na | grep LISTEN
    Спасибо! Дома попробую...
    но по поводу iptables я не очень понимаю где указывается что правила создается для интрефеса WAN а не LAN?

    а по поводу второго способа вопрос в том, что команду dropbear -p 22 -p 8081 надо просто выполнить или где-то прописать? т.е. как сделать что бы после перезагрузки она осталась в силе
    ?

  11. #11
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,777
    1) по умолчанию файрвол в этих прошивках сидит на wan, а в lan его нет. Это нужно просто принять как утверждение, не требующее доказательства.
    2) в post-boot

  12. #12
    Join Date
    Feb 2008
    Location
    Moscow
    Posts
    115
    в post-firewall прописал
    iptables -t nat -A PREROUTING -i $1 -p tcp --dport 8081 -j DNAT --to-destination $4:22
    iptables -A INPUT -p tcp --syn --dport 8081 -j ACCEPT

    сохранился и даже перезагрузился, но это не помогло

    буду экспериментировать дальше...

  13. #13
    Quote Originally Posted by bocman View Post
    в post-firewall прописал
    iptables -t nat -A PREROUTING -i $1 -p tcp --dport 8081 -j DNAT --to-destination $4:22
    iptables -A INPUT -p tcp --syn --dport 8081 -j ACCEPT

    сохранился и даже перезагрузился, но это не помогло

    буду экспериментировать дальше...
    Не понимаю в чем проблема, предыдущие советы вполне хороши, вот мой вариант:
    post-boot
    PHP Code:
    dropbear -p 443 > /dev/null 2>&
    post-firewall
    PHP Code:
    iptables -P INPUT DROP
    #remove last default rule
    iptables -D INPUT -j DROP
    iptables 
    -A INPUT -p tcp --syn --dport 443 -j ACCEPT
    iptables 
    -A INPUT -j DROP 
    потом сохраняемся и перегружаемся
    PHP Code:
    /sbin/flashfs save && /sbin/flashfs commit && /sbin/flashfs enable && reboot 
    Все. SSH висит на 443 порту, который соббсно открыт везде.
    Asus WL500g Premium 1.9.2.7-9+Agestar CCB3AT+Seagate 500Gb+Samsung ML-2570; Asus RT-N16 жду прошивок

  14. #14
    Join Date
    Feb 2008
    Location
    Moscow
    Posts
    115
    спасибо за совет, я их тоже попробу...
    но на данный момент
    post-firewall содержит:

    Code:
    #!/bin/sh
    iptables -I INPUT -p tcp --dport 22 -j ACCEPT
    iptables -t nat -A PREROUTING -i  -p tcp --dport 8081 -j DNAT --to-destination :
    iptables -A INPUT -p tcp --syn --dport 8081 -j ACCEPT
    но
    iptables -L
    возвращает:
    Code:
    Chain INPUT (policy ACCEPT)
    target     prot opt source               destination
    ACCEPT     tcp  --  anywhere             anywhere           tcp dpt:ssh
    DROP       all  --  anywhere             anywhere           state INVALID
    ACCEPT     all  --  anywhere             anywhere           state RELATED,ESTABLISHED
    ACCEPT     all  --  anywhere             anywhere           state NEW
    ACCEPT     all  --  anywhere             anywhere           state NEW
    SECURITY   all  --  anywhere             anywhere           state NEW
    ACCEPT     udp  --  anywhere             anywhere           udp spt:bootps dpt:bootpc
    ACCEPT     tcp  --  anywhere             anywhere           tcp dpt:ftp
    DROP       all  --  anywhere             anywhere
    
    Chain FORWARD (policy ACCEPT)
    target     prot opt source               destination
    ACCEPT     all  --  anywhere             anywhere
    DROP       all  --  anywhere             anywhere           state INVALID
    TCPMSS     tcp  --  anywhere             anywhere           tcp flags:SYN,RST,ACK/SYN TCPMSS clamp to PMTU
    ACCEPT     all  --  anywhere             anywhere           state RELATED,ESTABLISHED
    DROP       all  --  anywhere             anywhere
    DROP       all  --  anywhere             anywhere
    SECURITY   all  --  anywhere             anywhere           state NEW
    ACCEPT     all  --  anywhere             anywhere           ctstate DNAT
    
    Chain OUTPUT (policy ACCEPT)
    target     prot opt source               destination
    
    Chain MACS (0 references)
    target     prot opt source               destination
    
    Chain SECURITY (2 references)
    target     prot opt source               destination
    RETURN     tcp  --  anywhere             anywhere           tcp flags:SYN,RST,ACK/SYN limit: avg 1/sec burst 5
    RETURN     tcp  --  anywhere             anywhere           tcp flags:FIN,SYN,RST,ACK/RST limit: avg 1/sec burst 5
    RETURN     udp  --  anywhere             anywhere           limit: avg 5/sec burst 5
    RETURN     icmp --  anywhere             anywhere           limit: avg 5/sec burst 5
    DROP       all  --  anywhere             anywhere
    
    Chain logaccept (0 references)
    target     prot opt source               destination
    LOG        all  --  anywhere             anywhere           state NEW LOG level warning tcp-sequence tcp-options ip-options prefix `ACCEPT '
    ACCEPT     all  --  anywhere             anywhere
    
    Chain logdrop (0 references)
    target     prot opt source               destination
    LOG        all  --  anywhere             anywhere           state NEW LOG level warning tcp-sequence tcp-options ip-options prefix `DROP '
    DROP       all  --  anywhere             anywhere
    iptables -L -t nat
    Code:
    Chain PREROUTING (policy ACCEPT)
    target     prot opt source               destination
    VSERVER    all  --  anywhere             213.xxxxx<мой внешний IP>
    VSERVER    all  --  anywhere             10.16.81.233
    NETMAP     udp  --  anywhere             213.xxxxx<мой внешний IP>     udp spt:6112 192.168.0.0/24
    
    Chain POSTROUTING (policy ACCEPT)
    target     prot opt source               destination
    NETMAP     udp  --  192.168.0.0/24       anywhere           udp dpt:6112 213.141.140.91/32
    MASQUERADE  all  -- !213.xxxxx<мой внешний IP>       anywhere
    MASQUERADE  all  -- !10.16.81.233         anywhere
    MASQUERADE  all  --  192.168.0.0/24       192.168.0.0/24
    
    Chain OUTPUT (policy ACCEPT)
    target     prot opt source               destination
    
    Chain VSERVER (2 references)
    target     prot opt source               destination
    DNAT       tcp  --  anywhere             anywhere           tcp dpt:59627 to:192.168.0.147:59627
    DNAT       udp  --  anywhere             anywhere           udp dpt:59627 to:192.168.0.147:59627
    netstat -na | grep LISTEN
    Code:
    tcp        0      0 0.0.0.0:1025            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:1026            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:515             0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:1028            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:1029            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:1030            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:1031            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:1032            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:1033            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:1034            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:1035            0.0.0.0:*               LISTEN
    tcp        0      0 192.168.0.1:139         0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:1036            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:9100            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:21              0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:5431            0.0.0.0:*               LISTEN
    tcp        0      0 0.0.0.0:3838            0.0.0.0:*               LISTEN
    tcp        0      0 :::22                   :::*                    LISTEN
    tcp        0      0 :::23                   :::*                    LISTEN
    т.е., на сколько я понимаю, post-firewall у меня не сработал?
    если так, то почему это может быть?

  15. #15
    Quote Originally Posted by bocman View Post
    спасибо за совет, я их тоже попробу...
    но на данный момент
    post-firewall содержит:

    Code:
    #!/bin/sh
    iptables -I INPUT -p tcp --dport 22 -j ACCEPT
    iptables -t nat -A PREROUTING -i  -p tcp --dport 8081 -j DNAT --to-destination :
    iptables -A INPUT -p tcp --syn --dport 8081 -j ACCEPT
    т.е., на сколько я понимаю, post-firewall у меня не сработал?
    если так, то почему это может быть?
    Меня смущают ключики -I, -t надо читать ман по иптаблес
    А вообше 22 порт открыт все нормально.
    КОгда я себе делал фтп я делал немного по другому :
    PHP Code:
    #FTP Server Local 21, remote 6667
    iptables -A INPUT -p tcp --dport 21 -j ACCEPT
    iptables 
    -A INPUT -p tcp --dport 6667 -j ACCEPT 
    вроде работало
    Asus WL500g Premium 1.9.2.7-9+Agestar CCB3AT+Seagate 500Gb+Samsung ML-2570; Asus RT-N16 жду прошивок

Page 1 of 34 12311 ... LastLast

Similar Threads

  1. Шейпер с приоретизацией по портам
    By indlg0 in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 65
    Last Post: 18-01-2010, 11:35
  2. Help with IPTABLES
    By tomv in forum WL-500gP Q&A
    Replies: 1
    Last Post: 14-01-2008, 20:43
  3. WL-500gx WAN & LAN Filter example
    By pshah in forum WL-500g Q&A
    Replies: 1
    Last Post: 24-09-2005, 13:50

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •