Как настроить правильно forward?

Обсуждение оборудования и его настройки
Ответить
Chubaka
Сообщения: 5
Зарегистрирован: 08 май 2013, 17:42

Есть

1.1.1.1/28 ISP1
2.2.2.2/28 ISP2-BACKUP
10.8.248.0/30 IP-MGR-CONSOLE
10.0.0.0/24 SW
192.168.200.0/24 VMware
192.168.10.0/24 USR1
192.168.11.0/24 USR2
192.168.12.0/24 USR3-WIFI
192.168.13.0/24 USR4-WIFI-GUEST
10.8.248.0/21 (SRV,USR) понимаю что не правильно , скора буду сервера выносить
ACL_VPN_NETWORK (адресс лист) (Много VPN сетей)

Как настроить правильно forward , чтобы убрать правило add chain=forward comment="Accept all"

У меня в сети 10.8.248.0/21 много серверов которые выходят через определенный паблик ип.

Код: Выделить всё

add action=dst-nat chain=dstnat comment="dnat - mail.dom.local" dst-address=1.1.1.133 dst-port=25 protocol=tcp to-addresses=10.8.254.7 to-ports=25

add action=src-nat chain=srcnat comment="snat - mail.dom.local" src-address=10.8.254.7 to-addresses=1.1.1.133 !to-ports


Вот цепочки фильтров

Код: Выделить всё

/ip firewall filter
add action=drop chain=forward comment="Block \"bogon\" IP addresses" src-address=0.0.0.0/8
add action=drop chain=forward dst-address=0.0.0.0/8
add action=drop chain=forward src-address=127.0.0.0/8
add action=drop chain=forward dst-address=127.0.0.0/8
add action=drop chain=forward src-address=224.0.0.0/3
add action=drop chain=forward dst-address=224.0.0.0/3
add action=drop chain=input comment="Drop banned" src-address-list=ban
add chain=forward comment="Accepts for admins mgr-vmware network" dst-address=10.8.248.0/30 src-address=192.168.200.0/24
add chain=forward dst-address=192.168.200.0/24 src-address=10.8.248.0/30
add chain=forward comment="Accepts for admins mgr-sw network" dst-address=10.8.248.0/30 src-address=10.0.0.0/24
add chain=forward dst-address=10.0.0.0/24 src-address=10.8.248.0/30
add action=drop chain=forward comment="Drop all ip network for mgr-sw" src-address=10.0.0.0/24
add action=drop chain=forward dst-address=10.0.0.0/24
add action=drop chain=forward comment="Drop all ip network for vmware" src-address=192.168.200.0/24
add action=drop chain=forward dst-address=192.168.200.0/24
[b]add chain=forward comment="Accept all"[/b]
add chain=input comment="accept established connection packets" connection-state=established
add chain=input comment="accept related connection packets" connection-state=related
add action=drop chain=input comment="drop invalid packets" connection-state=invalid
add chain=input comment="Allow access to router from known network" src-address-list=safe
add action=drop chain=input comment="detect and drop port scan connections" protocol=tcp psd=21,3s,3,1
add action=add-src-to-address-list address-list=black_list address-list-timeout=1d chain=input comment="detect DoS attack" connection-limit=10,32 protocol=tcp
add action=tarpit chain=input comment="suppress DoS attack" connection-limit=3,32 protocol=tcp src-address-list=black_list
add action=jump chain=input comment="jump to chain ICMP" jump-target=ICMP protocol=icmp
add action=jump chain=input comment="jump to chain services" jump-target=services
add chain=input comment="Allow Broadcast Traffic" dst-address-type=broadcast
add action=log chain=input log-prefix=Filter:
add action=drop chain=input comment="drop everything else"
add chain=ICMP comment="0:0 and limit for 5pac/s" icmp-options=0 limit=5,5 protocol=icmp
add chain=ICMP comment="3:3 and limit for 5pac/s" icmp-options=3:3 limit=5,5 protocol=icmp
add chain=ICMP comment="3:4 and limit for 5pac/s" icmp-options=3:4 limit=5,5 protocol=icmp
add chain=ICMP comment="8:0 and limit for 5pac/s" icmp-options=8 limit=5,5 protocol=icmp
add chain=ICMP comment="11:0 and limit for 5pac/s" icmp-options=11 limit=5,5 protocol=icmp
add action=drop chain=ICMP comment="Drop everything else" protocol=icmp
add chain=services comment="accept localhost" dst-address=127.0.0.1 src-address=127.0.0.1 src-address-list=""
add chain=services comment="Allow PPTP" dst-port=1723 protocol=tcp
add chain=services comment="Allow IPSec-esp" protocol=ipsec-esp
add chain=services comment="Allow IPSec-ah" protocol=ipsec-ah
add chain=services comment="Allow IKE" dst-port=500 protocol=udp
add chain=services comment="Allow IPSec-esp" protocol=ipsec-esp
add chain=services comment="Allow IPSec-ah" protocol=ipsec-ah
add action=return chain=services
add action=drop chain=forward


Мне нужно чтобы
1) Чтобы сети 10.0/24,11.0/24,11.0/24,12.0/24,13.0/24 видели сеть 10.8.248.0/21 и обратно также чтобы применялись правила нат
2) 200.0/24 и 10.0.0.0/24 эти сети должны видеть только пользователи 10.8.248.0/30
3) ACL_VPN_NETWORK должна видеть все сети за исключением 200.0/24 и 10.0.0.0/24
4) Чтобы правила разрешения интернета использовались для выше перечилсенных сетей чез НАТ

Заранее благодарен.


Аватара пользователя
simpl3x
Модератор
Сообщения: 1532
Зарегистрирован: 19 апр 2012, 14:03

внесем ясность:
nat это nat, filter это filter - одно от другого не зависит.

потом, чтобы не плодить дублирующие обратные записи для форварда сделаем две записи для естеблиша и релейтеда:

Код: Выделить всё

ip firewall filter add action=accept chain=forward comment="Allow established connections" connection-state=established disabled=no
ip firewall filter add action=accept chain=forward comment="Allow related connections" connection-state=related disabled=no


Чтобы сети 10.0/24,11.0/24,11.0/24,12.0/24,13.0/24 видели сеть 10.8.248.0/21 и обратно также чтобы применялись правила нат
10.0/24,11.0/24,11.0/24,12.0/24,13.0/24 - лист адресов = NETWORKS_1

Код: Выделить всё

ip firewall filter add action=accept chain=forward disabled=no  dst-address=10.8.248.0/21 src-address-list=NETWORKS_1


ну и так по порядку, меня переменные dst-address(-list) и src-address(-list)
в конце делаете drop для всего остального и получаете то что хотите(оно кстати у вас там уже есть)

а вот с нат я не совсем понял, раскройте тему.


Chubaka
Сообщения: 5
Зарегистрирован: 08 май 2013, 17:42

Фильтры:

Код: Выделить всё

/ip firewall filter
add action=drop chain=forward comment="Block \"bogon\" IP addresses" src-address=0.0.0.0/8
add action=drop chain=forward dst-address=0.0.0.0/8
add action=drop chain=forward src-address=127.0.0.0/8
add action=drop chain=forward dst-address=127.0.0.0/8
add action=drop chain=forward src-address=224.0.0.0/3
add action=drop chain=forward dst-address=224.0.0.0/3
add action=drop chain=input comment="Drop banned" src-address-list=ban



Эти два правила у меня уже были:

Код: Выделить всё

add chain=input comment="accept established connection packets" connection-state=established
add chain=input comment="accept related connection packets" connection-state=related

Далее я делаю правила

Описание:

Код: Выделить всё

ACL_ISP                             - IP адреса выделенные мне провадерами ( 3 провайдера в сумме 70 IP)
ACL_DMZ               - Сервис сети (Свитчи,вмваре,резервное копирование)
ACL_ADMIN                - IP адресса администраторов и технической поддержки
ACL_OFFICE          - Сотрудники офиса
ACL_OFFICE_WIFI       - Сотрудники офиса мобильные
ACL_BACKOFFICE          - Филиалы
ACL_VPN_OFFICE                 - VPN для сотрудников офиса
ACL_VPN_BACKOFFICE          - VPN для сотрудников филиалов 
ACL_OFFICE_WIFI_GUEST    - Гости офиса


Правила forward:

Код: Выделить всё

add action=accept chain=forward comment="ACL_ISP to all ip networks" disabled=no  dst-address=0.0.0.0 src-address-list=ACL_ISP
add action=accept chain=forward comment="All ip networks to ACL_ISP" disabled=no  src-address=0.0.0.0 dst-address-list=ACL_ISP

add action=accept chain=forward comment="ACL_ADMIN to ACL_DMZ" disabled=no  dst-address-list=ACL_DMZ src-address-list=ACL_ADMIN
add action=accept chain=forward comment="ACL_DMZ to ACL_ADMIN" disabled=no  src-address-list=ACL_DMZ dst-address-list=ACL_ADMIN

add action=accept chain=forward comment="ACL_OFFICE_WIFI to ACL_OFFICE" disabled=no  dst-address-list=ACL_OFFICE src-address-list=ACL_OFFICE_WIFI
add action=accept chain=forward comment="ACL_OFFICE to ACL_OFFICE_WIFI" disabled=no  src-address-list=ACL_OFFICE dst-address-list=ACL_OFFICE_WIFI

add action=accept chain=forward comment="ACL_OFFICE_WIFI to ACL_BACKOFFICE" disabled=no  dst-address-list=ACL_BACKOFFICE src-address-list=ACL_OFFICE_WIFI
add action=accept chain=forward comment="ACL_BACKOFFICE to ACL_OFFICE_WIFI" disabled=no  src-address-list=ACL_BACKOFFICE dst-address-list=ACL_OFFICE_WIFI

add action=accept chain=forward comment="ACL_BACKOFFICE to ACL_OFFICE" disabled=no  dst-address-list=ACL_OFFICE src-address-list=ACL_BACKOFFICE
add action=accept chain=forward comment="ACL_OFFICE to ACL_BACKOFFICE" disabled=no  src-address-list=ACL_OFFICE dst-address-list=ACL_BACKOFFICE

add action=accept chain=forward comment="ACL_VPN_OFFICE to ACL_OFFICE" disabled=no  dst-address-list=ACL_OFFICE src-address-list=ACL_VPN_OFFICE
add action=accept chain=forward comment="ACL_OFFICE to ACL_VPN_OFFICE" disabled=no  src-address-list=ACL_OFFICE dst-address-list=ACL_VPN_OFFICE

add action=accept chain=forward comment="ACL_VPN_OFFICE to ACL_OFFICE_WIFI" disabled=no  dst-address-list=ACL_OFFICE_WIFI src-address-list=ACL_VPN_OFFICE
add action=accept chain=forward comment="ACL_OFFICE_WIFI to ACL_VPN_OFFICE" disabled=no  src-address-list=ACL_OFFICE_WIFI dst-address-list=ACL_VPN_OFFICE

add action=accept chain=forward comment="ACL_VPN_OFFICE to ACL_BACKOFFICE" disabled=no  dst-address-list=ACL_BACKOFFICE src-address-list=ACL_VPN_OFFICE
add action=accept chain=forward comment="ACL_BACKOFFICE to ACL_VPN_OFFICE" disabled=no  src-address-list=ACL_BACKOFFICE dst-address-list=ACL_VPN_OFFICE

add action=accept chain=forward comment="ACL_VPN_BACKOFFICE to ACL_OFFICE" disabled=no  dst-address-list=ACL_OFFICE src-address-list=ACL_VPN_BACKOFFICE
add action=accept chain=forward comment="ACL_OFFICE to ACL_VPN_BACKOFFICE" disabled=no  src-address-list=ACL_OFFICE dst-address-list=ACL_VPN_BACKOFFICE

add action=accept chain=forward comment="ACL_VPN_BACKOFFICE to ACL_OFFICE_WIFI" disabled=no  dst-address-list=ACL_OFFICE_WIFI src-address-list=ACL_VPN_BACKOFFICE
add action=accept chain=forward comment="ACL_OFFICE_WIFI to ACL_VPN_BACKOFFICE" disabled=no  src-address-list=ACL_OFFICE_WIFI dst-address-list=ACL_VPN_BACKOFFICE

add action=accept chain=forward comment="ACL_VPN_BACKOFFICE to ACL_BACKOFFICE" disabled=no  dst-address-list=ACL_VPN_BACKOFFICE src-address-list=ACL_VPN_BACKOFFICE
add action=accept chain=forward comment="ACL_BACKOFFICE to ACL_VPN_BACKOFFICE" disabled=no  src-address-list=ACL_VPN_BACKOFFICE dst-address-list=ACL_VPN_BACKOFFICE


Далее остальные правила:

Код: Выделить всё

add action=drop chain=input comment="drop invalid packets" connection-state=invalid
add chain=input comment="Allow access to router from known network" src-address-list=safe
add action=drop chain=input comment="detect and drop port scan connections" protocol=tcp psd=21,3s,3,1
add action=add-src-to-address-list address-list=black_list address-list-timeout=1d chain=input comment="detect DoS attack" connection-limit=10,32 protocol=tcp
add action=tarpit chain=input comment="suppress DoS attack" connection-limit=3,32 protocol=tcp src-address-list=black_list
add action=jump chain=input comment="jump to chain ICMP" jump-target=ICMP protocol=icmp
add action=jump chain=input comment="jump to chain services" jump-target=services
add chain=input comment="Allow Broadcast Traffic" dst-address-type=broadcast
add action=log chain=input log-prefix=Filter:
add action=drop chain=input comment="drop everything else"
add chain=ICMP comment="0:0 and limit for 5pac/s" icmp-options=0 limit=5,5 protocol=icmp
add chain=ICMP comment="3:3 and limit for 5pac/s" icmp-options=3:3 limit=5,5 protocol=icmp
add chain=ICMP comment="3:4 and limit for 5pac/s" icmp-options=3:4 limit=5,5 protocol=icmp
add chain=ICMP comment="8:0 and limit for 5pac/s" icmp-options=8 limit=5,5 protocol=icmp
add chain=ICMP comment="11:0 and limit for 5pac/s" icmp-options=11 limit=5,5 protocol=icmp
add action=drop chain=ICMP comment="Drop everything else" protocol=icmp
add chain=services comment="accept localhost" dst-address=127.0.0.1 src-address=127.0.0.1 src-address-list=""
add chain=services comment="Allow PPTP" dst-port=1723 protocol=tcp
add chain=services comment="Allow IPSec-esp" protocol=ipsec-esp
add chain=services comment="Allow IPSec-ah" protocol=ipsec-ah
add chain=services comment="Allow IKE" dst-port=500 protocol=udp
add chain=services comment="Allow IPSec-esp" protocol=ipsec-esp
add chain=services comment="Allow IPSec-ah" protocol=ipsec-ah
add action=return chain=services
add action=drop chain=forward


НАТ:

Код: Выделить всё

/ip firewall nat

add action=masquerade chain=srcnat comment="ACL_VPN_OFFICE" src-address=192.168.11.0/24 to-addresses=XXX.219.XXX.130 !to-ports
add action=masquerade chain=srcnat comment="ACL_VPN_BACKOFFICE" src-address=192.168.12.0/24 to-addresses=XXX.219.XXX.130 !to-ports

add action=dst-nat chain=dstnat comment="msm_site.ru" dst-address=XXX.219.XXX.133 dst-port=80 protocol=tcp to-addresses=10.8.254.40 to-ports=80
add action=dst-nat chain=dstnat comment="msm_site.ru" dst-address=XXX.219.XXX.133 dst-port=20-21 protocol=tcp src-address=62.113.46.146 to-addresses=10.8.254.40 to-ports=20-21
add action=dst-nat chain=dstnat comment="msm_site.ru" dst-address=XXX.219.XXX.133 dst-port=22 protocol=tcp src-address=62.113.46.146 to-addresses=10.8.254.40 to-ports=22

add action=dst-nat chain=dstnat comment="mail.site.com" dst-address=XXX.219.XXX.132 dst-port=25 protocol=tcp to-addresses=10.8.254.7 !to-ports
add action=dst-nat chain=dstnat comment="mail.site.com" dst-address=XXX.219.XXX.132 dst-port=80 protocol=tcp to-addresses=10.8.254.7 !to-ports
add action=dst-nat chain=dstnat comment="mail.site.com" dst-address=XXX.219.XXX.132 dst-port=443 protocol=tcp to-addresses=10.8.254.7 !to-ports

add action=dst-nat chain=dstnat comment="mx.site-china.com" dst-address=XXX.219.XXX.133 dst-port=110 protocol=tcp to-addresses=10.8.254.38 to-ports=110
add action=dst-nat chain=dstnat comment="mx.site-china.com" dst-address=XXX.219.XXX.133 dst-port=25 protocol=tcp to-addresses=10.8.254.38 to-ports=25

add action=dst-nat chain=dstnat comment="sqlserver.domain.local http" dst-address=XXX.219.XXX.134 dst-port=80 protocol=tcp to-addresses=10.8.254.3 to-ports=80

add action=dst-nat chain=dstnat comment="share.domain.local 20-21" dst-address=XXX.219.XXX.134 dst-port=20-21 protocol=tcp src-address-list=safe to-addresses=10.8.254.15 to-ports=20-21
add action=dst-nat chain=dstnat comment="share.domain.local 50000-51000" dst-address=XXX.219.XXX.134 dst-port=50000-51000 protocol=tcp src-address-list=safe to-addresses=10.8.254.15 to-ports=50000-51000

add action=dst-nat chain=dstnat comment="rdp srvts01.domain.local" dst-address=XXX.219.XXX.134 dst-port=3391 protocol=tcp src-address-list=safe to-addresses=10.8.254.37 to-ports=3389
add action=dst-nat chain=dstnat comment="rdp lab.domain.local (Ruzana)" dst-address=XXX.219.XXX.134 dst-port=3392 protocol=tcp src-address=188.35.23.24 to-addresses=10.8.254.35 to-ports=3389

add action=dst-nat chain=dstnat comment="sip.domain.local" dst-address=XXX.219.XXX.131 src-address-list=safe to-addresses=10.8.254.14 !to-ports

add action=src-nat chain=srcnat comment="bank terminal shops" src-address-list=bank_terminal_shops to-addresses=194.186.124.53 !to-ports

add action=src-nat chain=srcnat comment="bank user office" src-address=10.8.248.13 to-addresses=194.186.124.53 !to-ports
add action=src-nat chain=srcnat comment="bank user office" src-address=10.8.248.84 to-addresses=194.186.124.53 !to-ports

add action=src-nat chain=srcnat comment="bank user office" src-address=192.168.10.67 to-addresses=194.186.124.53 !to-ports
add action=src-nat chain=srcnat comment="mail.domain.local" src-address=10.8.254.7 to-addresses=XXX.219.XXX.132 !to-ports
add action=src-nat chain=srcnat comment="sip.domain.local" src-address=10.8.254.14 to-addresses=XXX.219.XXX.131 !to-ports
add action=src-nat chain=srcnat comment="mx.site-china.com" src-address=10.8.254.38 to-addresses=XXX.219.XXX.133 !to-ports
add action=src-nat chain=srcnat comment="site.ru" src-address=10.8.254.40 to-addresses=XXX.219.XXX.133 !to-ports

add action=src-nat chain=srcnat comment=ACL_DMZ src-address-list=ACL_DMZ to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE protocol=icmp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=22 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=20 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=21 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=80 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=25 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=110 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=443 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=465 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=587 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=995 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=993 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=3389 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=5060 protocol=udp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=5938 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=8291 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports
add action=src-nat chain=srcnat comment=ACL_OFFICE dst-port=8080 protocol=tcp src-address-list=ACL_OFFICE to-addresses=XXX.219.XXX.134 !to-ports


Вот если я такие правила делаю у меня работают правила форварда а в интернет пользователей и сервера не пускает также снаружи.


Аватара пользователя
simpl3x
Модератор
Сообщения: 1532
Зарегистрирован: 19 апр 2012, 14:03

Chubaka писал(а):Фильтры:


Эти два правила у меня уже были:

Код: Выделить всё

add chain=input comment="accept established connection packets" connection-state=established
add chain=input comment="accept related connection packets" connection-state=related




вы все таки найдите отличие в ваших и моих выкладках

Код: Выделить всё

ip firewall filter add action=accept chain=forward comment="Allow established connections" connection-state=established disabled=no
ip firewall filter add action=accept chain=forward comment="Allow related connections" connection-state=related disabled=no


я буду по порядку выкладывать свои замечания, а то не очень удобно весь листинг пихать в один пост


Аватара пользователя
simpl3x
Модератор
Сообщения: 1532
Зарегистрирован: 19 апр 2012, 14:03

еще, попробуйте добавить примерно такие правила в фаервол:

Код: Выделить всё

/ip firewall filter add action=accept chain=forward disabled=no in-interface=INTERFACE_1 out-interface=INTERFACE_2

1 - там где ваши пользователи
2 - там где интернет
собственно добавьте не хватающие критерии по желанию


Chubaka
Сообщения: 5
Зарегистрирован: 08 май 2013, 17:42

Спасибо роде разобрался, как протестирую выложу в массы.


Ответить