среда, 19 января 2011 г.

Настройка Mikrotik часть 1

Недавно  решал такую задачу: есть офис и несколько филиалов, необходимо из офиса для некоторых определенных людей настроить удаленный доступ в филиалы максимально дешево, т.е. всякие крутые маршрутизаторы типа Cisco не подходят. Остановил свой выбор на роутерах RouterBoard под управлением Mikrotik RouterOS.
Имеем роутер с mikrotik на борту и 2 сети, которые надо выпустить в интернет через него, организовать на нем VPN сервер для доступа в локальную сеть с удаленных компьютеров и опубликовать некоторые сервисы в интернете. Считаем что провайдер дает нам статический белый адрес в интернете.
 В первую очередь заходим на роутер с помощью winbox и переименовываем нужные нам интерфейсы
Пусть будут интерфейсы wan, lan1 и lan2.
Далее добавляем им адреса
(здесь и далее постараюсь писать команды, как если бы настраивал из командной строки, т.к. интерфейс winbox довольно таки интуитивно понятен)
Внешний адрес беру наобум, пусть он будет
91.210.8.122 маска 255.255.255.252 шлюз 91.210.8.121

ip address add address=91.210.8.122/30    interface=wan comment="wan"
ip address add address=192.168.0.1/24     interface=lan1 comment="local1"
ip address add address=192.168.5.1/24     interface=lan2 comment="local2"

Две локальные сети мне нужны для того чтобы разграничить private и public сети на обьекте. В данном примере 192.168.0.0 это внутренняя сеть предприятия, а 192.168.5.0 общедоступная сеть для гостей. В итоге получаем примерно так

[admin@MikroTik] > ip address print
Flags: X - disabled, I - invalid, D - dynamic
#   ADDRESS            NETWORK         BROADCAST       INTERFACE
0   ;;; wan
91.210.8.122      91.210.8.120    91.210.8.123    wan

1   ;;; lan2
192.168.5.1/24    192.168.5.0     192.168.5.255   lan2

2   ;;; lan1
192.168.0.1/24    192.168.0.0     192.168.0.255   lan1
[admin@MikroTik] >

Далее необходимо защитить роутер от нашествия извне.
Первым делом меняем пароль пользователя admin с помощью

user edit admin

(вообще-то мое паранойя одсказывает мне что лучше пользователя admin сделать disable, а full права дать другому пользователю, но тут уже дело вкуса и удобства)
use add name=new_admin password=mypassword group=full
user disable admin

Далее пишем правила файрволла

ip firewall filter add chain input connection-state=invalid action=drop comment="Drop invalid connection packets"
ip firewall filter add chain input connection-state=established action=accept comment="Allow established connections"
ip firewall filter add chain input connection-state=related action=accept comment="Allow related connections"
ip firewall filter add chain input protocol=udp action=accept comment="Allow UDP"
ip firewall filter add chain input protocol=icmp action=accept comment="Allow ICMP Ping"
ip firewall filter add chain input src-address=192.168.0.0/24 action=accept comment="Access to router only from local network lan1"
ip firewall filter add chain input src-address=192.168.5.0/24 action=accept comment="Access to router only from local network lan2"
ip firewall filter add chain input action=drop comment="All other inputs drop"

Получаем примерно так

[admin@MikroTik] > ip firewall filter print chain input
Flags: X - disabled, I - invalid, D - dynamic
0   ;;; Drop invalid connection packets
chain=input action=drop connection-state=invalid
1   ;;; Allow established connections
chain=input action=accept connection-state=established
2   ;;; Allow related connections
chain=input action=accept connection-state=related
3   ;;; Allow UDP
chain=input action=accept protocol=udp
4   ;;; Allow ICMP Ping
chain=input action=accept protocol=icmp
5   ;;; Access to router only from local network lan1
chain=input action=accept src-address=192.168.0.0/24
6   ;;; Access to router only from local network lan2
chain=input action=accept src-address=192.168.5.0/24
7   ;;; All other inputs drop
chain=input action=drop
[admin@MikroTik] >

Локальные сети маскарадим за nat

ip firewall nat add chain=srcnat action=masquerade src-address=192.168.0.0/24 out-interface=wan
ip firewall nat add chain=srcnat action=masquerade src-address=192.168.5.0/24 out-interface=wan

Далее разрешаем маршрутизацию служебных пакетов через сам маршрутизатор:

ip firewall filter add chain forward connection-state=invalid action=drop comment="Drop invalid connection packets"
ip firewall filter add chain forward connection-state=established action=accept comment="Allow established connections"
ip firewall filter add chain forward connection-state=related action=accept comment="Allow related connections"
ip firewall filter add chain forward protocol=udp action=accept comment="Allow UDP"
ip firewall filter add chain forward protocol=icmp action=accept comment="Allow ICMP Ping"

Затем разрешаем выход в интернет всем пользователям локальных сетей

ip firewall filter add chain forward in-interface=lan1 src-address=192.168.0.0/24 action=accept comment="Access to internet from local network lan1"
ip firewall filter add chain forward in-interface=lan2 src-address=192.168.5.0/24 action=accept comment="Access to internet from local network lan2"

И блокируем все остальное

ip firewall filter add chain forward action=drop comment="All other forwards drop"

Теперь, чтобы пользователи могли выходить в интернет добавляем правило маршрутизации, и прописываем DNS сервера провайдера

ip route add dst-address=0.0.0.0/0 gateway=91.210.8.121 comment="ISP Gateway"
ip dns set primary-dns=dnsserver1 secondary-dns=dnsserver2 allow-remote-requests=yes

На данном этапе настройки роутер защищен от вторжений извне и пользователи локальных сетей имеют выход в интернет. Продолжение следует

В ходе написания материала очень помогали следующие ресурсы:
Блог "Папы Админа"
Официальная Wiki
Блог Сергея Лаговского

1 комментарий:

  1. как открыть пинг на роутер из инета? роутерс белым IP

    ОтветитьУдалить