Настройка правил межсетевого экрана из командного интерфейса

NOTE: Данная статья предназначена только для опытных пользователей.

В этой инструкции рассмотрим настройку правил межсетевого экрана из интерфейса командной строки (CLI) интернет-центра. Теоретическая информация подробно рассмотрена в статье "Описание работы с межсетевым экраном". Для получения информации, по настройке правил межсетевого экрана из веб-конфигуратора, обратитесь к инструкции "Межсетевой экран".

CLI предоставляет дополнительные возможности настройки межсетевого экрана Keenetic, по сравнению с возможностями веб-конфигуратора. Подробное описание команд интерфейса CLI для каждой модели Keenetic можно найти в Справочнике команд, который размещён на сайте в Центре загрузки.

Сетевой экран интернет-центра Keenetic выполняет правила фильтрации, записанные в список правил доступа (Access Control List, access-list), на каждом интерфейсе, к которому привязан этот список. К одному интерфейсу может быть привязано несколько списков.

Для настройки сетевого экрана доступны следующие команды:

access-list {Имя_списка_правил} — осуществляет переход к управлению правилами в указанном списке доступа. Если списка не существует, он будет создан.

no access-list {Имя_списка_правил} — удаляет указанный список, если он существует.

Например, для перехода к редактированию списка MyList1 используется команда:

(config)> access-list MyList1
(config-acl)>


После создания списка доступа можно приступать к созданию его правил. Для этого используются команды deny и permit, соответствующие запрещающим и разрешающим правилам фильтрации. Формат этих команд одинаков и приведен в Справочнике команд. 

NOTE: Важно! Каждое правило может содержать фильтр только для одного из поддерживаемых протоколов.

Далее приведём примеры некоторых правил:

а. Команда, включающая фильтр для разрешения передачи TCP-пакетов с хоста 192.168.1.33 на любые адреса:

(config-acl)> permit tcp 192.168.1.33/32 0.0.0.0/32

 
б. Команда для запрета пинга со всех хостов подсети 192.168.1.0/24 в любую другую подсеть:

(config-acl)> deny icmp 192.168.1.0/24 0.0.0.0/32

 
в. Команда, включающая фильтр для запрета передачи IP-пакетов из подсети 192.168.1.0/24 на любые узлы:

(config-acl)> deny ip 192.168.1.0/24 0.0.0.0/32

 
Команда (permit|deny ip) без указания типа протокола объединяет протоколы TCP и UDP в одну общую настройку (ip).

г. Команда для разрешения подключения к веб-конфигуратору интернет-центра (192.168.1.1) по протоколу HTTP (tcp порт 80) с любых хостов из Интернета:

(config-acl)> permit tcp 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 port eq 80


д. Чтобы удалить правило из списка, нужно повторить команду, задающую его, но перед ней указать no

Например:

(config-acl)> no permit tcp 0.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 port eq 80


Для выхода из редактирования списка доступа используется команда exit

Сформированный список правил, при помощи приведенных выше команд, в файле конфигурации интернет-центра будет выглядеть следующим образом:

access-list MyList1
permit tcp 192.168.1.33/32 0.0.0.0/32
deny icmp 192.168.1.0/24 0.0.0.0/32
deny ip 192.168.1.0/24 0.0.0.0/32


Подготовив список правил доступа, нужно выполнить его привязку к требуемому интерфейсу устройства. Для этого служит команда ip access-group {Имя_Списка_Доступа} {направление in|out} в настройках каждого интерфейса.

Напоминаем, что для каждого списка на интерфейсе также задаётся направление потока трафика, к которому данные правила будут применены. Направление определяется относительно интерфейса (входящее направление in — всегда к устройству, а исходящее out — от него). Эта информация подробно рассмотрена в статье "Описание работы с межсетевым экраном".

Например, привяжем созданные правила ко внешнему интерфейсу ISP:

(config)> interface ISP
(config-if)> ip access-group MyList1 out
access group applied


В исходящем (out) направлении интерфейса ISP (это направление от интернет-центра в сеть данного интерфейса) будет запрещена передача любого трафика на любые адреса.

Список правил, подобный нашему примеру, может быть полезен, когда нужно запретить доступ в Интернет через внешний интерфейс всем хостам локальной сети, кроме одного. В нашем примере доступ и пинг запрещён всем хостам подсети 192.168.1.0, кроме хоста с IP-адресом 192.168.1.33.

На интерфейсах интернет-центра предусмотрены настройки уровня доступа (security-level), которые определяют уровень безопасности (логику работы сетевого экрана):

— private (частный, локальный);
— public (внешний, публичный);
— protected (защищённый, локальный).

Cхему разрешённых и запрещённых направлений передачи данных в интернет-центре серии Keenetic можно представить следующей диаграммой:

Firewall-diagram.png

По умолчанию Keenetic принимает сетевые подключения только с интерфейсов private. Интерфейсам типа private разрешено устанавливать соединения в интерфейсы public, и на само устройство для управления и доступа к сервисам, работающим на интернет-центре. Для интерфейса гостевой сети закрыт доступ для управления интернет-центром и к его сервисам.

Между интерфейсами private и из private в protected устанавливать соединение запрещено по умолчанию, но при необходимости, доступ можно разрешить. Данная настройка зависит от установки параметра isolate-private. Если вам нужно разрешить соединения между интерфейсами типа private или между private и protected (т.е. не изолировать доступ), для этого выполните команду no isolate-private

Из интерфейсов типа public запрещено устанавливать соединения на любые интерфейсы, в том числе на другие интерфейсы типа public, а также на само устройство.

Интерфейсам типа protected разрешено устанавливать соединения только в интерфейсы public. По умолчанию доступ запрещён к устройствам интерфейсов private и других protected, а также к управлению устройством.

С помощью команды security-level public|private|protected можно управлять уровнями доступа на интерфейсах интернет-центра.

Например:

(config)> interface Bridge3
(config-if)> security-level protected
Interface set as protected


Определить действующий для интерфейса уровень безопасности, а также локальный это интерфейс или публичный, можно по результатам выполнения команды show interface {Имя_Интерфейса}, которая отображает данные указанного интерфейса.

Например:

(config)> show interface ISP

id: GigabitEthernet1
index: 1
type: GigabitEthernet
description: Broadband connection
link: up
connected: yes
state: up
mtu: 1500
tx-queue: 1000
address: 192.168.128.35
mask: 255.255.255.0
uptime: 41701
global: yes
defaultgw: no
priority: 700
security-level: public
mac: 58:8b:f3:65:85:ed
auth-type: none


В строке security-level указан уровень безопасности, соответственно которому работает преднастроенная политика сетевого экрана.

NOTE: Важно! По умолчанию всем вновь созданным через командную строку интерфейсам присваивается уровень безопасности public.

Список названия интерфейсов устройства и их системные идентификаторы можно посмотреть следующим образом: впишите команду show interface и затем нажмите клавишу TAB на клавиатуре. На экран будет выведен список всех имеющихся на текущий момент интерфейсов устройства, включая предустановленные служебные.

interface-cli.png

TIP: Примечание

1. Интернет-центр Keenetic поддерживают работу с протоколами IPv6 и IPv4. Для управления межсетевым экраном IPv6 предусмотрены только минимальные настройки: включить или выключить.

Сделать это можно через команды ipv6 firewall (включить) и no ipv6 firewall (выключить).

По умолчанию межсетевой экран для протокола IPv6 включен.

2. В интернет-центрах Keenetic присутствует уровень доступа protected. Данный уровень доступа является аналогом уровня private, но без доступа к интернет-центру.

Тип protected устанавливается для интерфейса гостевой сети Wi-Fi, когда в веб-конфигураторе на странице "Гостевая сеть" в разделе "Ограничения для устройств сегмента" выключена опция "Доступ к настройкам интернет-центра". По умолчанию доступ из гостевой сети к интернет-центру запрещён. Если разрешить доступ к настройкам, для данного интерфейса будет установлен уровень private.

firewall-03.png

3. В случае когда необходимо применить большое количество правил сетевого экрана, можно выполнять настройку правил путём редактирования файла конфигурации интернет-центра startup-config.txt с помощью любого текстового редактора. После сохранения изменений нужно загрузить файл обратно на устройство и перезагрузить его. Но редактировать файл конфигурации следует крайне осторожно, т.к. это может привести к невозможности управления устройством, потере работоспособности отдельных функций, некорректному отображению настроек в веб-интерфейсе.

Если ваше устройство после загрузки отредактированного файла конфигурации перестало корректно работать, советуем сбросить пользовательские настройки кнопкой Сброс и настроить интернет-центр заново, либо загрузить заведомо рабочий резервный конфигурационный файл.

 

Была ли эта статья полезной?

Пользователи, считающие этот материал полезным: 18 из 24