User Tools

Site Tools


workbook:jno-332:332_policies

JN0-332: Junos 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).
      [edit security policies from-zone TRUST to-zone UNTRUST]
      root@bluebox# set policy TR-TO-UNT-P-ALL then permit firewall-authentication ?                            
      Possible completions:
      + apply-groups         Groups from which to inherit configuration data
      + apply-groups-except  Don't inherit configuration data from these groups
      > pass-through         Pass-through firewall authentication settings
      > web-authentication   Web-authentication settings
    • tunnel - заворачиваем попавший под политику трафик в ipsec туннель (policy based ipsec).
      [edit security policies from-zone TRUST to-zone UNTRUST]
      root@bluebox# set policy TR-TO-UNT-P-ALL then permit tunnel ?
      Possible completions:
      + apply-groups         Groups from which to inherit configuration data
      + apply-groups-except  Don't inherit configuration data from these groups
        ipsec-group-vpn      Enable dynamic IPSEC group with name
        ipsec-vpn            Enable VPN with name
        pair-policy          Policy in the reverse direction, to form a pair
    • destination-address
      [edit security policies from-zone TRUST to-zone UNTRUST]
      root@bluebox# set policy TR-TO-UNT-P-ALL then permit destination-address ?
      Possible completions:
        <[Enter]>            Execute this command
      + apply-groups         Groups from which to inherit configuration data
      + apply-groups-except  Don't inherit configuration data from these groups
        drop-translated      Drop the policy if NAT translated
        drop-untranslated    Drop the policy if NAT untranslated
        |                    Pipe through a command
    • application-services - передаем трафик на анализ системе предотвращения вторжений. Заворачиваем трафик в антивирус, в системы филтрации контента и сайтов.
      [edit security policies from-zone TRUST to-zone UNTRUST]
      root@bluebox# set policy TR-TO-UNT-P-ALL then permit application-services ?    
      Possible completions:
      > application-firewall  Application firewall services
      + apply-groups         Groups from which to inherit configuration data
      + apply-groups-except  Don't inherit configuration data from these groups
        gprs-gtp-profile     Specify GPRS Tunneling Protocol profile name
        gprs-sctp-profile    Specify GPRS stream control protocol profile name
        idp                  Intrusion detection and prevention
        redirect-wx          Set WX redirection
        reverse-redirect-wx  Set WX reverse redirection
      > uac-policy           Enable unified access control enforcement of policy
        utm-policy           Specify utm policy name
  • 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 следит за командами PORT (переход в активный режим - клиент сообщает серверу к какому адресу и к какому порту надо подключаться) и PASV (переход в пассивный режим - сервер говорит клиенту к какому адресу и порту надо подключаться, код ответа 227) и временными политиками безопасности разрешает создание сессии с адресами и портами которые передавались в командах. При работе через ipv6 alg ftp дополнительно следит за командами EPRT, EPSV и 229 ответом.
  • H.323 - h323 alg просматривает сообщения протокола, ищет информацию о используемых адресах и портах и открывает дырки в политиках для обратного трафика. Если используется NAT, то alg правит сообщения и меняет в них приватные адреса на публичные.
  • IKE - ike alg мониторит ike трафик между клиентом и сервером и разрешает только разовый обмер IKE Phase2 между каждой парой сервера и клиента. По дефолту ike 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, вставить “уточняющую” запрещающую политику, то сессии, которые которые были ранее разрешены, продолжат работать. Новая зарещающая политика будет применять только к вновь создаваемым сессиям.

Applications

Application это один из критериев политики безопасности с помощью которого описываются порты и протоколы по которым бегает трафик. Есть пачка предустановленных приложений, посмотреть их моно командой show configuration groups junos-defaults applications.

Вывод:

admin@kem-01-srx2> show configuration groups junos-defaults applications
#
# File Transfer Protocol
#
application junos-ftp {
    application-protocol ftp;
    protocol tcp;
    destination-port 21;
}
#
# Trivial File Transfer Protocol
#
application junos-tftp {
    application-protocol tftp;
    protocol udp;
    destination-port 69;
}
#
# Real Time Streaming Protocol
#
application junos-rtsp {
    application-protocol rtsp;
    protocol tcp;
    destination-port 554;
}
... etc ...

В таком же стиле можно писать свои application, объединять их в сеты и т.д.:

admin@kem-01-srx2> show configuration applications
application VIPNET-PORT {
    term t1 protocol udp destination-port 55777;
}
application TCP-6810-6820 {
    term t1 protocol tcp destination-port 6810-6820;
}
application TCP-7000-7030 {
    term t1 protocol tcp destination-port 7000-7030;
}
application junos-syslog inactivity-timeout 6;
application TCP-9443 {
    term t1 protocol tcp destination-port 9443;
}
application TCP-48999 {
    protocol tcp;
    destination-port 48999;
}
application-set SET-ZENIT-POS-PORTS {
    application TCP-7000-7030;
    application TCP-6810-6820;
}

Полезные материалов

workbook/jno-332/332_policies.txt · Last modified: 2021/08/12 08:35 (external edit)

Page Tools