- Покупателям
- Услуги
- О нас
Межсетевые экраны SRX
Межсетевые экраны Juniper networks серии SRX являются мощным средством защиты от несанкционированного доступа к ресурсам сети внешних пользователей, так и пользователей сети к внешним ресурсам. Система использует такие механизмы как intrusion detection, application firewall, security policies, nat, ipsec vpn, firewall protection, user athentification. Так же может использоваться как простой прозрачный коммутатор, небольшой маршрутизатор и устройство управления беспроводными точками доступа AX411.
Платформа SRX очень популярна для установки на распределенных корпоративных сетях, в качестве граничного оборудования для подключения удаленных офисов, благодаря своим возможностям по разграничению доступа к ресурсам сети, обеспечению безопасности, возможностям организации каналов связи по технологии IPsec VPN, и установки модулей расширения с поддержкой различных WAN интерфейсов.
Модульные модели, более старшей серии в линейке, используются в ЦОД предприятий как мощная платформа для обеспечения безопасности доступа к информации и внутренним ресурсам сети, авторизации пользователей КСПД, и распределения доступа.
Так же устройства могут быть использованы провайдерами услуг связи, для осуществления контент фильтрации трафика, ограничения доступа пользователей до определенных ресурсов в сети, а так же для использования технологии NAT.
Рассмотрим основные принципы работы данного устройства. По умолчанию SRX серия устройств работает в потоковом режиме, т.е. анализ трафика производится не по пакетам, а создаются так называемые потоки трафика и к ним применяются все правила, настроенные на оборудовании. При желании можно перевести оборудование в пакетный режим, что не позволит использовать его как защитный экран, позволит работать как полноценному маршрутизатору.
Принцип действия устройства основывается на разделении всей конфигурации на так называемые зоны. Каждая зона содержит свои пользовательские интерфейсы свои наборы протоколов, возможных к использованию внутри зоны.
Приведем пример:
!
zones {
security-zone trust {
host-inbound-traffic {
system-services {
all;
}
protocols {
all;
}
}
interfaces {
ge-0/0/0.0;
vlan.0;
}
}
security-zone users {
host-inbound-traffic {
system-services {
all;
}
protocols {
all;
}
}
interfaces {
ge-0/0/14.0;
}
}
security-zone Internet {
host-inbound-traffic {
system-services {
all;
}
protocols {
all;
}
}
interfaces {
ge-0/0/15.0;
vlan.1;
ge-0/0/12.0;
}
}
}
!
В нашем случае наглядно видно что создано несколько зон, с разрешением использования всех протоколов сервисов, и содержащих определенный набор интерфейсов.
При необходимости можно изменить разрешенные сервисы или протоколы в каждой зоне:
!
set security zones security-zone users 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
[edit]
!
Выбрать мы можем любые протоколы из списка, остальные протоколы будут запрещены в данной зоне, и работать просто не будут.
!
set security zones security-zone users host-inbound-traffic system-services ?
Possible completions:
all All system services
any-service Enable services on entire port range
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
sip Enable Session Initiation Protocol 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
xnm-clear-text JUNOScript API for unencrypted traffic over TCP
xnm-ssl JUNOScript API service over SSL
!
Тоже самое для сервисов. Если допустим создать управляющий интерфейс, третьего уровня, или создать интерфейс влан для управления устройством, и поместить его в зону с запрещенным «telnet», то доступа на оборудование не будет, несмотря на то что интерфейс нормально работает.
Используя все вышесказанное мы можем создать зону для пользователей внутренней сети, и зону для внешнего мира.
Рассмотрим основной механизм работы устройства: трафик переходит из зоны в зону. По умолчанию, при этом переходе весь трафик блокируется. Для разрешения перехода, необходимо создать определенный набор правил. Данные правила называются security-policy, они позволяют нам применять все те механизмы защиты, перечисленные в начале статьи. Так же существует правило разрешающее общение между зоной «trust», которая существует по умолчанию на оборудовании, и любой другой зоной. Как видно из названия «trust» является доверительной зоной. Для того что бы трафик перенаправлялся между зонами необходимо создать политику:
!
show security policies
from-zone ххх to-zone yyy {
policy permit {
match {
source-address any;
destination-address any;
application any;
}
then {
permit;
}
}
}
!
Данная политика разрешает любой трафик при переходе из зоны в зону. Рассмотрим что мы можем изменить в примере выше:
application - данный параметр позволяет выбрать набор приложений пользователя, идентифицируя их по порту и протоколу. Junos имеет встроенный набор приложений, который можно использовать для настройки. Для того что бы воспользоваться встроенным набором приложений, и просмотреть доступные приложения созданные разработчиками ПО следует воспользоваться командой:
!
show configuration groups junos-defaults applications
!
список довольно длинный, поэтому приводить его здесь не имеет смысла.
так же можно настроить собственное приложение вида:
!
set applications application test
application-protocol Application protocol type
+ apply-groups Groups from which to inherit configuration data
+ apply-groups-except Don't inherit configuration data from these groups
description Text description of application
destination-port Match TCP/UDP destination port
do-not-translate-A-query-to-AAAA-query Knob to control the translation of A query to AAAA query
do-not-translate-AAAA-query-to-A-query Knob to control the translation of AAAA query to A query
ether-type Match ether type
icmp-code Match ICMP message code
icmp-type Match ICMP message type
icmp6-code Match ICMP6 message code
icmp6-type Match ICMP6 message type
inactivity-timeout Application-specific inactivity timeout (seconds)
protocol Match IP protocol type
rpc-program-number Match range of RPC program numbers
source-port Match TCP/UDP source port
> term Define individual application protocols
uuid Match universal unique identifier for DCE RPC objects
!
Основной функционал это задать протокол, и задать порт, как два определяющих параметра для приложения.
!
show applications
application test {
application-protocol ftp;
source-port yy;
destination-port xx
}
!
так же с помощью параметра ether-type можно задать соответствующий ethertype пакета, чтобы осуществить дополнительный вид фильтрации, или воспользоваться функционалом term.
функционал term был описан в статье про фильтры и политики.
!
set applications application test term 1
Possible completions:
<[Enter]> Execute this command
alg Application Layer Gateway
destination-port Match TCP/UDP destination port
icmp-code Match ICMP message code
icmp-type Match ICMP message type
icmp6-code Match ICMP6 message code
icmp6-type Match ICMP6 message type
inactivity-timeout Application-specific inactivity timeout (seconds)
protocol Match IP protocol type
rpc-program-number Match range of RPC program numbers
source-port Match TCP/UDP source port
uuid Match universal unique identifier for DCE RPC objects
| Pipe through a command
[edit]
!
Если внимательно посмотреть на пример, то можно увидеть что функционал состоит из аналогии команды:
!
set applications application test
!
с одним небольшим добавлением: alg (application layer gateway )
!
set applications application test term 1 alg ?
Possible completions:
dns Domain Name Service
ftp File Transfer Protocol
http Hyper Text transfer protocol
https Secure HyperText Transfer Protocol
ignore Ignore application type
imap Internet Message Access Protocol
mgcp-ca MGCP-CA
mgcp-ua MGCP-UA
ms-rpc Microsoft RPC
pptp Point-to-Point Tunneling Protocol
q931 Q.931
ras RAS
realaudio RealAudio
rsh Remote Shell
rtsp Real Time Streaming Protocol
sccp Skinny Client Control Protocol
sip Session Initiation Protocol
smtp Simple Mail Transfer Protocol
sqlnet-v2 Oracle SQL*Net Version 2
ssh Secure Shell
sun-rpc Sun Microsystems RPC
talk Talk program
telnet Telnet Terminal Emulation Protocol
tftp Trivial File Transfer Protocol
[edit]
!
alg дает возможность настроить дополнительную фильтрацию трафика пользователей воспользовавшись дополнительными протоколами. что дает еще более гибкую настройку разграничений и прав.
source-address - адрес источника трафика.
destination-address - адрес назначения трафика.
По заданным параметрам мы можем фильтровать трафик пользователей, и применять к нему определенные действия. Базовые из которых, это запретить, разрешить, произвести запись в логи, и посчитать.
Это основные принципы работы системы SRX. Опираясь на данную информацию можно настроить базовый межсетевой экран и разграничить доступ. Более подробно на технологиях IDP UTM firewall мы остановимся в отдельной статье.