У меня такая ситуация, на работе хоть я и работаю в коллективе, но по большей части надеюсь только на себя. Т.к. в самый трудный момент когда что-то происходит слышать, ой я с этим не работал, а знаешь тут какая-то ошибка возникает как думаешь что это. И вот все в таком духе. Да и мне просто спокойнее когда у меня есть решение, да и процесс обучения захватывает.
- Я руководствуюсь следующими правилами:
- Собираю всю информацию, читаю заметки, книги, обзоры
- Собираю стенд (да долго порой, но это потом окупается)
- Разбираю лабораторные работы, придумываю себе задачи
- Оформляю как заметки и так везде при работе в IT сфере.
Ну да ладно, сейчас моя цель: это настроить тестовую среду виртуального Mikrotik развернутого, как виртуальная машина на Virtualbox, а уже посредством других VM сервисы и все это связать в месте. Ресурсы под все это дело у меня есть, мой домашний ноутбук Lenovo E555 (16Gb RAM) с этим справляется.
Вводные данные:
- eth1 — выход в интернет (либо же ваша текущая сеть)
- eth2 — это локальная сеть (тестовая сеть, внутри которой у меня будут развернуты различные сервисы, к примеру: DC, FileServer, FreePBX, OwnCloud и т. д. Также мне это нужно чтобы разобрать правила для Mikrotik по защите их (сервисов), пробросу порта, разграничения пропускной способности и т. д.)
Конфигурационный файл для Mikrotik (по заметке) развернутый будет следующий:
[admin@MikroTik] > export
# apr/16/2017 12:56:20 by RouterOS 6.38.5
# software id = NGXF-8ASJ
#
/interface bridge
add name=bridge1
/interface ethernet
set [ find default-name=ether1 ] name=WAN1
/ip pool
add name=dhcp_pool0 ranges=10.10.10.2-10.10.10.254
/ip dhcp-server
add address-pool=dhcp_pool0 interface=bridge1 name=dhcp1
/tool user-manager customer
set admin access=own-routers,own-users,own-profiles,own-limits,config-payment-gw
/interface bridge port
add bridge=bridge1 interface=ether2
/ip address
add address=10.10.10.1/24 interface=bridge1 network=10.10.10.0
/ip dhcp-client
add dhcp-options=hostname,clientid disabled=no interface=WAN1
add dhcp-options=hostname,clientid interface=WAN1
/ip dhcp-server network
add address=10.10.10.0/24 gateway=10.10.10.1
/ip dns
set allow-remote-requests=yes servers=8.8.8.8
/ip firewall address-list
add address=8.8.8.8 list=DNS1WAN1
/ip firewall filter
add action=accept chain=input protocol=icmp
add action=accept chain=forward protocol=icmp
add action=accept chain=input connection-state=established
add action=accept chain=forward connection-state=established
add action=accept chain=input connection-state=related
add action=accept chain=forward connection-state=related
add action=drop chain=input connection-state=invalid
add action=drop chain=forward connection-state=invalid
add action=accept chain=input dst-port=22 in-interface=WAN1 protocol=tcp
add action=accept chain=input dst-port=8291 in-interface=WAN1 protocol=tcp
add action=accept chain=forward protocol=udp
add action=accept chain=input protocol=udp
add action=accept chain=forward src-address=10.10.10.0/24
add action=accept chain=input src-address=10.10.10.0/24
add action=drop chain=input
add action=drop chain=forward
/ip firewall mangle
add action=mark-connection chain=forward in-interface=WAN1 new-connection-mark=\
WAN1-CON
add action=mark-routing chain=prerouting connection-state=new dst-address-list=\
DNS1WAN1 new-routing-mark=WAN1-pr
/ip firewall nat
add action=masquerade chain=srcnat src-address=10.10.10.0/24
add action=dst-nat chain=dstnat dst-port=2222 log=yes protocol=tcp to-addresses=\
10.10.10.2 to-ports=22
#error exporting /routing pim
#error exporting /routing rip
#error exporting /routing ripng
/system lcd
set contrast=0 enabled=no port=parallel type=24x4
/system lcd page
set time disabled=yes display-time=5s
set resources disabled=yes display-time=5s
set uptime disabled=yes display-time=5s
set packets disabled=yes display-time=5s
set bits disabled=yes display-time=5s
set version disabled=yes display-time=5s
set identity disabled=yes display-time=5s
set bridge1 disabled=yes display-time=5s
set WAN1 disabled=yes display-time=5s
set ether2 disabled=yes display-time=5s
set ether3 disabled=yes display-time=5s
set ether4 disabled=yes display-time=5s
/system logging
add topics=dns
add topics=dhcp
add topics=firewall
/tool user-manager database
set db-path=user-manager
На заметку: вместо 8.8.8.8 нужно прописать DNS своего провайдера, либо сервер где крутится роль DNS.
Если поднимаем тестовую VM на которой проверяем получение сетевого адреса,карта должна быть соответствующая в свойствах контейнера Virtualbox: (см. скриншот ниже)
Адаптер 2 = имя: innet
ЭТО ОЧЕНЬ ВАЖНО.
Если DHCP не поднимаем, см. заметку, то чтобы VM получила доступ в интернет прописываем:
- address
- netmask
- gateway
и прописываем шлюз по умолчанию: sudo route add default gw 10.10.10.1
(это для Ubuntu систем)
и доступ в интернет появляется.
На Windows (у меня в качестве теста есть: Windows Server 2012 R2 Standard) системе в таком случае задаю вручную сетевой адрес:
- Address: 10.10.10.2
- Netmask: 255.255.255.0
- Gateway: 10.10.10.1
- DNS: 10.10.10.1
После проверяю:
C:\Users\Administrator>ping navy.org
Pinging navy.org [104.27.163.99] with 32 bytes of data:
Reply from 104.27.163.99: bytes=32 time=3ms TTL=252
Reply from 104.27.163.99: bytes=32 time=3ms TTL=252
Reply from 104.27.163.99: bytes=32 time=3ms TTL=252
Reply from 104.27.163.99: bytes=32 time=3ms TTL=252
Ping statistics for 104.27.163.99:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 3ms, Maximum = 3ms, Average = 3ms
Вывод все работает.
Дополнения к текущей заметки: косяк с этими правилами выше не работает правило проброса порта:
[admin@MikroTik] > ip firewall nat add chain=dstnat protocol=tcp in-interface=WAN1 dst-port=2222 action=dst-nat to-addresses=10.10.10.2 to-ports=22
Сканирую через nmap и ничего, отрабатывает правило только подключение к самому Mikrotk, нашел, доступ блокирует вот это правило:
[admin@MikroTik] > ip firewall filter add chain=forward action=drop
Блокирую его и NAT работает. Так что если будет использовать «Проброс порта» то данное правило следует отключить.
Теперь имея вот такую виртуальную среду можно собирать тестовую среду, как если бы у Вас физически был интернет, после он приходил и Mikrotik (аппаратный), а далее Ваша сеть. Короче, это просто небольшая заготовка. Пока все, на этом я прощаюсь, с уважением автор блога Олло Александр aka ekzorchik.