This is an old revision of the document!
Table of Contents
332 Security Policies
Необходимые знания по Security Policies:
- Identify the concepts, benefits and operation of security policies
- Policy types (default policy)
- Policy components
- Policy ordering
- Host inbound traffic examination
- Transit traffic examination
- Scheduling
- Rematching
- ALGs
- Address books
- Applications
- Demonstrate knowledge of how to configure, monitor and troubleshoot security policies
- Policies
- ALGs
- Address books
- Custom applications
- Monitoring and troubleshooting
Политика безопасности (Security Policies) это фактически инструкция для srx что делать с транзитным трафиком который подпадает под критерии описанные в политике.
Тезисно политики безопасности:
- “Направление действия” политики определяется директивами from-zone и to-zone и в терминологии juniper это называется контекст.
- У каждой политики должны быть критерии
- У каждой политики должно быть действие которое выполняется при условии выполнения всех критериев.
- Порядок политик в контексте важен, политики применяются сверху вниз.
Составные части политики безопасности
Критерии политики
- source-address & source-address-excluded
- destination-address & destination-address-excluded
- application
- source-identity
Действия политики
- permit - разрешаем трафик и создаем сессии.
- Firewall authenication - прикручиваем авторизацию для доступа к какому-либо сервису (JN0-332: Firewall User Authentication).
- ipsec tunnel - заворачиваем попавший под политику трафик в ipsec туннель (policy based ipsec).
- IDP - передаем трафик на анализ системе предотвращения вторжений.
- UTM - заворачиваем трафик в антивирус, в системы филтрации контента и сайтов.
- reject - дропаем трафик и отправляем icmp unrechable для UPD трафика и RST для TCP трафика.
- deny - тихо дропаем трафик.
- log - записываем информацию о создании и о закрытии сессии (session-init, session-close).
- count - считаем статистику по сессии которую можно увидеть выполнив команду “> show security policy”
Адресные книги
В критерии политик нельзя писать произвольный ip адрес или доменное имя. Сначала надо все нужные адреса внести в адресную книгу.
Адресная книга настраивается или на уровне [edit security address-book]
или на уровне [edit security zones security-zone ZONE-NAME address-book].
Адреса могут задаваться в виде dns имени или в виде ip адреса.
dns-name
set security address-book UNTRUST-BOOK address operator.leadermt.ru dns-name operator.leadermt.ru ipv4-only
ip-address
set security address-book global address MSK-08-PAYSYS-NET 10.13.35.48/28
Global policy
Есть возможность писать глобальные политики безопасности не привязываясь к контексту. Нужно это для того, что бы можно было для нескольких контекстов написать одну глобальную политику, а не писать для каждого контекста отдельную политику.
Настраивается на уровне [edit security policies global], контекст не указываем а дальше все как обычно.
host-inbound-traffic
Если трафик предназначен непосредственно самому устройству, то разрешенные протоколы и сервисы описываются в директиве host-inbound-traffic на уровне [edit security zones security-zone ZONE-NAME interfaces INTERFACE-NAME].
Можно разрешить следующие сервисы:
{primary:node0}[edit security zones security-zone vpn interfaces st0.31] admin@srx650-master# set host-inbound-traffic system-services ? Possible completions: all All system services any-service Enable services on entire port range bootp Bootp and dhcp relay-agent service dhcp Dynamic Host Configuration Protocol dhcpv6 Enable Dynamic Host Configuration Protocol for IPv6 dns DNS service finger Finger service ftp FTP http Web management service using HTTP https Web management service using HTTP secured by SSL ident-reset Send back TCP RST to IDENT request for port 113 ike Internet Key Exchange lsping Label Switched Path ping service netconf NETCONF service ntp Network Time Protocol service ping Internet Control Message Protocol echo requests r2cp Enable Radio-Router Control Protocol service reverse-ssh Reverse SSH service reverse-telnet Reverse telnet service rlogin Rlogin service rpm Real-time performance monitoring rsh Rsh service snmp Simple Network Management Protocol service snmp-trap Simple Network Management Protocol traps ssh SSH service telnet Telnet service tftp TFTP traceroute Traceroute service webapi-clear-text Webapi service using http webapi-ssl Webapi service using HTTP secured by SSL xnm-clear-text JUNOScript API for unencrypted traffic over TCP xnm-ssl JUNOScript API service over SSL
и протоколы:
{primary:node0}[edit security zones security-zone vpn interfaces st0.31] admin@srx650-master# set host-inbound-traffic protocols ? Possible completions: all All protocols bfd Bidirectional Forwarding Detection bgp Border Gateway Protocol dvmrp Distance Vector Multicast Routing Protocol igmp Internet Group Management Protocol ldp Label Distribution Protocol msdp Multicast Source Discovery Protocol nhrp Next Hop Resolution Protocol ospf Open Shortest Path First ospf3 Open Shortest Path First version 3 pgm Pragmatic General Multicast pim Protocol Independent Multicast rip Routing Information Protocol ripng Routing Information Protocol next generation router-discovery Router Discovery rsvp Resource Reservation Protocol sap Session Announcement Protocol vrrp Virtual Router Redundancy Protocol
Если сервис или протокол разрешен, то пакет принимается действием permir.
Если сервис или протокол не разрешен, то пакет молча отбрасывается действием deny.
Default security policy
System-default security policy
По дефолту srx запрещает прохождение транзитного трафика между зонами безопасности (для бранченвых srx чутка не так, см ниже).
Дефолтное поведение описывается на уровне [edit security policies default-policy] и может быть deny-all или permit-all.
Factory-default security policy at branch srx
На бренчовых по дефолту настроены для транзитного трафика след. политики безопасности:
- trust-to-trust - разрешен весь трафик внутри зоны trust (это проверить надо, не помню что бы так было)
- trust-to-untrust - разрешен весь трафик из зоны trust в зону untrust
- untrust-to-trust - запрещен весь трафик из зоны untrust в зону trust
Policy ordering
Тезисно:
- Порядковый номер политики безопасности имеет значение
- Новая политика встает в конец списка, но перед system-default security policy.
- Менять позицию политики в списке можно командой insert
- system-default security policy всегда последняя.
Application
ALG
ALG (Application layer gateway) это механизм который позволяет “дооткрывать” новые сессии для трафика определенного типа (например ftp, sip,), что бы впустить обратный трафик.
Список сервисов под которые есть ALG:
admin@msk-01-srx2# run show security alg status ALG Status : DNS : Enabled FTP : Disabled H323 : Enabled MGCP : Enabled MSRPC : Disabled PPTP : Enabled RSH : Enabled RTSP : Enabled SCCP : Enabled SIP : Disabled SQL : Enabled SUNRPC : Enabled TALK : Enabled TFTP : Enabled IKE-ESP : Disabled
- DNS - dns alg в трафике ищет ответ от dns сервера и если ответ пришел, то сразу закрывает сессию и не ждет 60 секунд стандартного таймаута для udp.
- FTP - ftp alg в активном режиме (когда клиент говорит серверу к какому адресу и порту надо подключаться) разрешает на выход создание сессии с портом назначения который указал клиента сервера.
Policy scheduling
Тезисно:
- Расписание определяет когда политики безопасности активна.
- Если расписания нет, то политика всегда активна.
- К одной политике безопасности можно применять только одно расписание.
- Одному расписанию может подчиняться несколько политик безопасности.
Расписание настраивается на уровне [edit schedulers].
[edit schedulers] admin@kem-01-srx2# set scheduler TEST-SCH ? Possible completions: + apply-groups Groups from which to inherit configuration data + apply-groups-except Don't inherit configuration data from these groups > daily Everyday; can be overwritten by specific weekday description Text description of scheduler > friday Every Friday > monday Every Monday > saturday Every Saturday > start-date Start date and time ([YYYY-]MM-DD.hh:mm) > sunday Every Sunday > thursday Every Thursday > tuesday Every Tuesday > wednesday Every Wednesday
И применяется на уровне настройки самой политики безопасности командой scheduler-name:
admin@kem-01-srx2# set security policies from-zone trust to-zone untrust policy 1-TR-TO-UNT-P-TSGW-RESCUE ? Possible completions: + apply-groups Groups from which to inherit configuration data + apply-groups-except Don't inherit configuration data from these groups description Text description of policy > match Specify security policy match-criteria scheduler-name Name of scheduler > then Specify policy action to take when packet match criteria
Способы задания времени действия политики:
- Time Slot - указывается время начала и окончания действия политики безопасности в формате [YYYY-]MM-DD.hh:mm.
Расписание срабатывает разово, если не указать год, то скорее всего срабатывать будет раз в год (не проверял). - Daily - указывается время в формате hh:mm, можно указать конкретный день когда должно расписание сработать. Можно указать все дни и часть дней исключить.
Policy rematching
По дефолту, после внесения изменений в политику безопасности, srx не проверяет уже разрешенные сессии на соответствие поправленной политики безопасности. Трафик по сессиям бегает. Что бы srx перепроверял уже работающие сессии надо дать команду:
[edit] admin@kem-01-srx2# set security policies policy-rematch
Таблица действий.
Действие | Rematchin | |
---|---|---|
Включено | Выключено | |
Удалили политику безопасности | Дропаются все существующие сессии разрешенные удаленной политикой |
|
Поменяли действие политики с permit на deny или reject | Дропаются все существующие сессии которые были разрешенные измененной политикой | Сессии продолжают работать |
Поменяли адреса в политике | Существующие сессии еще раз прогоняются через измененную политику | Сессии продолжают работать |
Поменяли application в политике | Существующие сессии еще раз прогоняются через измененную политику | Сессии продолжают работать |
Важно помнить, что при включенном policy-rematch сессии перепрогоняются только через политики безопасности которые были изменены. Если перед какой-либо разрешающей политикой, командой insert, вставить “уточняющую” запрещающую политику, то сессии, которые которые были ранее разрешены, продолжат работать. Новая зарещающая политика будет применять только к вновь создаваемым сессиям.