API Π½Π° Check Point R80.10. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‡Ρ€Π΅Π· CLI, скриптовС ΠΈ Π΄Ρ€

API Π½Π° Check Point R80.10. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‡Ρ€Π΅Π· CLI, скриптовС ΠΈ Π΄Ρ€

Π‘ΠΈΠ³ΡƒΡ€Π΅Π½ съм, Ρ‡Π΅ всСки, ΠΊΠΎΠΉΡ‚ΠΎ някога Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈΠ» с Check Point, имашС ΠΎΠΏΠ»Π°ΠΊΠ²Π°Π½Π΅ Π·Π° Π½Π΅Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° конфигурацията ΠΎΡ‚ командния Ρ€Π΅Π΄. Π’ΠΎΠ²Π° Π΅ особСно Π΄ΠΈΠ²ΠΎ Π·Π° Ρ‚Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΈ Ρ‚ΠΎΠ²Π° са Ρ€Π°Π±ΠΎΡ‚ΠΈΠ»ΠΈ с Cisco ASA, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ всичко ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½ΠΎ Π² CLI. ΠŸΡ€ΠΈ Check Point Π΅ Ρ‚ΠΎΡ‡Π½ΠΎ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΡ‚ΠΎ - всички настройки Π·Π° сигурност сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΎΡ‚ графичния интСрфСйс. Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π°, някои Π½Π΅Ρ‰Π° са напълно Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΈ Π·Π° ΠΏΡ€Π°Π²Π΅Π½Π΅ ΠΏΡ€Π΅Π· GUI (Π΄ΠΎΡ€ΠΈ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΡƒΠ΄ΠΎΠ±Π½ΠΎ, ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ Check Point). НапримСр Π·Π°Π΄Π°Ρ‡Π°Ρ‚Π° Π·Π° добавянС Π½Π° 100 Π½ΠΎΠ²ΠΈ хоста ΠΈΠ»ΠΈ ΠΌΡ€Π΅ΠΆΠΈ сС ΠΏΡ€Π΅Π²Ρ€ΡŠΡ‰Π° Π² дълга ΠΈ досадна ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°. Π—Π° всСки ΠΎΠ±Π΅ΠΊΡ‚ Ρ‰Π΅ трябва Π΄Π° Ρ‰Ρ€Π°ΠΊΠ½Π΅Ρ‚Π΅ няколко ΠΏΡŠΡ‚ΠΈ с ΠΌΠΈΡˆΠΊΠ°Ρ‚Π° ΠΈ Π΄Π° Π²ΡŠΠ²Π΅Π΄Π΅Ρ‚Π΅ ip-адрСса. Π‘ΡŠΡ‰ΠΎΡ‚ΠΎ Π²Π°ΠΆΠΈ ΠΈ Π·Π° създаванС Π½Π° Π³Ρ€ΡƒΠΏΠ° ΠΎΡ‚ сайтовС ΠΈΠ»ΠΈ масово Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅/Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° IPS подписи. Π’ Ρ‚ΠΎΠ·ΠΈ случай ΠΈΠΌΠ° голяма вСроятност Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π³Ρ€Π΅ΡˆΠΊΠ°.

Π‘Ρ€Π°Π²Π½ΠΈΡ‚Π΅Π»Π½ΠΎ наскоро сС случи β€žΡ‡ΡƒΠ΄ΠΎβ€œ. Π‘ пусканСто Π½Π° Π½ΠΎΠ²Π°Ρ‚Π° вСрсия Gaia R80 бСшС обявСна Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ ИзползванС Π½Π° API, ΠΊΠΎΠ΅Ρ‚ΠΎ Ρ€Π°Π·ΠΊΡ€ΠΈΠ²Π° ΡˆΠΈΡ€ΠΎΠΊΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° настройки, администриранС, наблюдСниС ΠΈ Π΄Ρ€. Π‘Π΅Π³Π° Ρ‚ΠΈ моТСш:

  • създаванС Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ;
  • добавянС ΠΈΠ»ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° ΡΠΏΠΈΡΡŠΡ†ΠΈ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ;
  • Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅/Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Π±Π»Π΅ΠΉΠ΄ΠΎΠ²Π΅;
  • ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΌΡ€Π΅ΠΆΠΎΠ²ΠΈ интСрфСйси;
  • ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ Π·Π° инсталиранС;
  • ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅Ρ‡Π΅.

ЧСстно ΠΊΠ°Π·Π°Π½ΠΎ, Π½Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°ΠΌ ΠΊΠ°ΠΊ Ρ‚Π°Π·ΠΈ Π½ΠΎΠ²ΠΈΠ½Π° ΠΌΠΈΠ½Π° ΠΏΡ€Π΅Π· Habr. Π’ Ρ‚Π°Π·ΠΈ статия Ρ‰Π΅ опишСм Π½Π°ΠΊΡ€Π°Ρ‚ΠΊΠΎ ΠΊΠ°ΠΊ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ API ΠΈ Ρ‰Π΅ Π΄Π°Π΄Π΅ΠΌ някои практичСски ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈ. Настройки Π½Π° CheckPoint с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° скриптовС.

Π‘ΠΈΡ… искал Π΄Π° направя рСзСрвация Π²Π΅Π΄Π½Π°Π³Π°, API сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° само Π·Π° ΡΡŠΡ€Π²ΡŠΡ€Π° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅. Π’Π΅Π·ΠΈ. всС ΠΎΡ‰Π΅ Π΅ нСвъзмоТно Π΄Π° сС управляват шлюзовС Π±Π΅Π· ΡΡŠΡ€Π²ΡŠΡ€ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅.

Кой ΠΌΠΎΠΆΠ΅ Π΄Π° сС възползва ΠΎΡ‚ Ρ‚ΠΎΠ·ΠΈ API?

  1. БистСмни администратори, ΠΊΠΎΠΈΡ‚ΠΎ искат Π΄Π° опростят ΠΈΠ»ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€Π°Ρ‚ Ρ€ΡƒΡ‚ΠΈΠ½Π½ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ Π·Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅ Π½Π° Check Point;
  2. Компании, ΠΊΠΎΠΈΡ‚ΠΎ искат Π΄Π° ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°Ρ‚ Check Point с Π΄Ρ€ΡƒΠ³ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ (систСми Π·Π° виртуализация, Ρ‚ΠΈΠΊΠ΅Ρ‚ систСми, систСми Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° конфигурацията ΠΈ Π΄Ρ€.);
  3. БистСмни ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ‚ΠΎΡ€ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ искат Π΄Π° стандартизират настройкитС ΠΈΠ»ΠΈ Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π°Ρ‚ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с Check Point.

Π’ΠΈΠΏΠΈΡ‡Π½Π° схСма

И Ρ‚Π°ΠΊΠ°, Π½Π΅ΠΊΠ° си прСдставим Ρ‚ΠΈΠΏΠΈΡ‡Π½Π° схСма с Check Point:

API Π½Π° Check Point R80.10. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‡Ρ€Π΅Π· CLI, скриптовС ΠΈ Π΄Ρ€

ΠšΠ°ΠΊΡ‚ΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ ΠΏΠΎΡ€Ρ‚Π°Π» (SG), ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Π½ ΡΡŠΡ€Π²ΡŠΡ€ (SMS) ΠΈ Π°Π΄ΠΌΠΈΠ½ ΠΊΠΎΠ½Π·ΠΎΠ»Π° (ΠΈΠ½Ρ‚Π΅Π»ΠΈΠ³Π΅Π½Ρ‚Π½Π° ΠΊΠΎΠ½Π·ΠΎΠ»Π°). Π’ Ρ‚ΠΎΠ·ΠΈ случай обичайният процСс Π½Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅ Π½Π° шлюз Π΅ ΠΊΠ°ΠΊΡ‚ΠΎ слСдва:

API Π½Π° Check Point R80.10. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‡Ρ€Π΅Π· CLI, скриптовС ΠΈ Π΄Ρ€

Π’Π΅Π·ΠΈ. ΠΏΡŠΡ€Π²ΠΎ трябва Π΄Π° стартиратС Π½Π° ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€Π° Π½Π° администратора ΠΈΠ½Ρ‚Π΅Π»ΠΈΠ³Π΅Π½Ρ‚Π½Π° ΠΊΠΎΠ½Π·ΠΎΠ»Π°, с ΠΊΠΎΠΉΡ‚ΠΎ сС ΡΠ²ΡŠΡ€Π·Π²Π°ΠΌΠ΅ към ΡΡŠΡ€Π²ΡŠΡ€Π° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ (SMS). НастройкитС Π·Π° сигурност сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ Π½Π° SMS ΠΈ Π΅Π΄Π²Π° слСд Ρ‚ΠΎΠ²Π° сС ΠΏΡ€ΠΈΠ»Π°Π³Π°Ρ‚ (ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Π·Π° инсталиранС) към шлюза (SG).

ΠŸΡ€ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° API Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ΅ΠΌ основно Π΄Π° пропуснСм ΠΏΡŠΡ€Π²Π°Ρ‚Π° ΡΡ‚ΡŠΠΏΠΊΠ° (стартиранС Π½Π° SmartConsole) ΠΈ Π΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΠΌ API ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ към ΡΡŠΡ€Π²ΡŠΡ€Π° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ (SMS).

Начини Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° API

Има Ρ‡Π΅Ρ‚ΠΈΡ€ΠΈ основни Π½Π°Ρ‡ΠΈΠ½Π° Π·Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° конфигурацията с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° API:

1) ИзползванС Π½Π° ΠΏΠΎΠΌΠΎΡ‰Π½Π°Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° mgmt_cli

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ - # mgmt_cli Π΄ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ ΠΈΠΌΠ΅ Π½Π° хост host1 ip-адрСс 192.168.2.100
Π’Π°Π·ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π° сС изпълнява ΠΎΡ‚ командния Ρ€Π΅Π΄ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π° Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ (SMS). Мисля, Ρ‡Π΅ ΡΠΈΠ½Ρ‚Π°ΠΊΡΠΈΡΡŠΡ‚ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° Π΅ ясСн - host1 сС създава с адрСс 192.168.2.100.

2) Π’ΡŠΠ²Π΅Π΄Π΅Ρ‚Π΅ API ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Ρ‡Ρ€Π΅Π· clish (Π² СкспСртСн Ρ€Π΅ΠΆΠΈΠΌ)

По ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ всичко, ΠΊΠΎΠ΅Ρ‚ΠΎ трябва Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅, Π΅ Π΄Π° Π²Π»Π΅Π·Π΅Ρ‚Π΅ Π² командния Ρ€Π΅Π΄ (Π²Π»ΠΈΠ·Π°Π½Π΅ Π² mgmt) ΠΏΠΎΠ΄ Π°ΠΊΠ°ΡƒΠ½Ρ‚Π°, ΠΊΠΎΠΉΡ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΡ€ΠΈ ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Ρ‡Ρ€Π΅Π· SmartConsole (ΠΈΠ»ΠΈ root Π°ΠΊΠ°ΡƒΠ½Ρ‚). Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° Π²Π΅Ρ‡Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π²Π»Π΅Π·Π΅Ρ‚Π΅ API ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ (Π² Ρ‚ΠΎΠ·ΠΈ случай няма Π½ΡƒΠΆΠ΄Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΏΠΎΠΌΠΎΡ‰Π½Π°Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° ΠΏΡ€Π΅Π΄ΠΈ всяка ΠΊΠΎΠΌΠ°Π½Π΄Π° mgmt_cli). ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π΅Ρ‚Π΅ пълСн BASH скриптовС. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° скрипт, ΠΊΠΎΠΉΡ‚ΠΎ създава хост:

bash скрипт

#!/bin/bash

main() {
    clear

    #LOGIN (don't ask for username and password, user is already logged in to Management server as 'root' user)
    mgmt_cli login --root true > id_add_host.txt
    on_error_print_and_exit "Error: Failed to login, check that the server is up and running (run 'api status')"

    #READ HOST NAME
    printf "Enter host name:n"
    read -e host_name
    on_empty_input_print_and_exit "$host_name" "Error: The host's name cannot be empty."

    #READ IP ADDRESS
    printf "nEnter host IP address:n"
    read -e ip
    on_empty_input_print_and_exit "$ip" "Error: The host's IP address cannot be empty."

    #CREATE HOST
    printf "Creating new host: $host_name with IP address: $ipn"
    new_host_response=$(mgmt_cli add host name $host_name ip-address $ip -s id_add_host.txt 2> /dev/null)
    on_error_print_and_exit "Error: Failed to create host object. n$new_host_response"

    #PUBLISH THE CHANGES
    printf "nPublishing the changesn"
    mgmt_cli publish --root true -s id_add_host.txt &> /dev/null
    on_error_print_and_exit "Error: Failed to publish the changes."

    #LOGOUT
    logout
	
	printf "Done.n"
}

logout(){
	mgmt_cli logout --root true -s id_add_host.txt &> /dev/null
}

on_error_print_and_exit(){
    if [ $? -ne 0 ]; then
        handle_error "$1" 
	fi
}

handle_error(){
    printf "n$1n" #print error message
    mgmt_cli discard --root true -s id_add_host.txt &> /dev/null
    logout
    exit 1
}

on_empty_input_print_and_exit(){
	if [ -z "$1" ]; then
		printf "$2n" #print error message
		logout
		exit 0
	fi
}

# Script starts here. Call function "main".
main

Ако проявяватС интСрСс, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³Π»Π΅Π΄Π°Ρ‚Π΅ ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎΡ‚ΠΎ Π²ΠΈΠ΄Π΅ΠΎ:

3) Π§Ρ€Π΅Π· SmartConsole, ΠΊΠ°Ρ‚ΠΎ ΠΎΡ‚Π²ΠΎΡ€ΠΈΡ‚Π΅ CLI ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ†Π°

Всичко, ΠΊΠΎΠ΅Ρ‚ΠΎ трябва Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅, Π΅ Π΄Π° ΠΎΡ‚Π²ΠΎΡ€ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ†Π° CLI Π½Π°ΠΏΡ€Π°Π²ΠΎ ΠΎΡ‚ ΠΈΠ½Ρ‚Π΅Π»ΠΈΠ³Π΅Π½Ρ‚Π½Π° ΠΊΠΎΠ½Π·ΠΎΠ»Π°, ΠΊΠ°ΠΊΡ‚ΠΎ Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° снимката ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ.

API Π½Π° Check Point R80.10. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‡Ρ€Π΅Π· CLI, скриптовС ΠΈ Π΄Ρ€

Π’ Ρ‚ΠΎΠ·ΠΈ ΠΏΡ€ΠΎΠ·ΠΎΡ€Π΅Ρ† ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π΅Π΄Π½Π°Π³Π° Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Π΄Π° Π²ΡŠΠ²Π΅ΠΆΠ΄Π°Ρ‚Π΅ API ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ.

4) Π£Π΅Π± услуги. Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ HTTPS Post заявка (REST API)

Π‘ΠΏΠΎΡ€Π΅Π΄ нас Ρ‚ΠΎΠ²Π° Π΅ Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Π½Π°ΠΉ-ΠΎΠ±Π΅Ρ‰Π°Π²Π°Ρ‰ΠΈΡ‚Π΅ Π½Π°Ρ‡ΠΈΠ½ΠΈ, Ρ‚.ΠΊ. Π²ΠΈ позволява Π΄Π° β€žΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Ρ‚Π΅β€œ Ρ†Π΅Π»ΠΈ прилоТСния спорСд ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ (съТалявам Π·Π° тавтологията). Π©Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Ρ‚ΠΎΠ·ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ.

Π”Π° ΠΎΠ±ΠΎΠ±Ρ‰ΠΈΠΌ:

  1. API+cli ΠΏΠΎ-подходящ Π·Π° Ρ…ΠΎΡ€Π°, ΠΊΠΎΠΈΡ‚ΠΎ са свикнали с Cisco;
  2. API + ΠΎΠ±Π²ΠΈΠ²ΠΊΠ° Π΄Π° ΠΏΡ€ΠΈΠ»Π°Π³Π° скриптовС ΠΈ Π΄Π° изпълнява Ρ€ΡƒΡ‚ΠΈΠ½Π½ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ;
  3. REST API Π·Π° автоматизация.

АктивирайтС API

По ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ API Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€ΠΈ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ с ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ 4 GB RAM ΠΈ самостоятСлни ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ с ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ 8 GB RAM. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ с ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π°: api ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅

Ако сС ΠΎΠΊΠ°ΠΆΠ΅, Ρ‡Π΅ API Π΅ Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½, Ρ‚ΠΎΠ³Π°Π²Π° Π΅ доста лСсно Π΄Π° Π³ΠΎ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Ρ‚Π΅ Ρ‡Ρ€Π΅Π· SmartConsole: Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ настройки > Π‘Π»Π΅ΠΉΠ΄ΠΎΠ²Π΅ > API Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ > Π Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈ настройки

API Π½Π° Check Point R80.10. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‡Ρ€Π΅Π· CLI, скриптовС ΠΈ Π΄Ρ€

Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°ΠΉΡ‚Π΅ (ΠŸΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°ΠΌ) ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ ΠΈ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° api рСстартиранС.

ΡƒΠ΅Π± заявки + python

Π—Π° Π΄Π° ΠΈΠ·ΠΏΡŠΠ»Π½ΠΈΡ‚Π΅ API ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΡƒΠ΅Π± заявки, ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠŸΠΈΡ‚ΠΎΠ½ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ искания, JSON. ΠšΠ°Ρ‚ΠΎ цяло структурата Π½Π° Π΅Π΄Π½Π° ΡƒΠ΅Π± заявка сС ΡΡŠΡΡ‚ΠΎΠΈ ΠΎΡ‚ Ρ‚Ρ€ΠΈ части:

1)АдрСс

(https://<managemenet server>:<port>/web_api/<command>) 


2) HTTP Π·Π°Π³Π»Π°Π²ΠΊΠΈ

content-Type: application/json
x-chkp-sid: <session ID token as returned by the login command>


3) ΠŸΠΎΠΈΡΠΊΠ°ΠΉΡ‚Π΅ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Ρ‚ΠΎΠ²Π°Ρ€

ВСкст във Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ JSON, ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‰ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ:


def api_call(ip_addr, port, command, json_payload, sid):
    url = 'https://' + ip_addr + ':' + str(port) + '/web_api/' + command
    if sid == β€œβ€:
        request_headers = {'Content-Type' : 'application/json'}
    else:
        request_headers = {'Content-Type' : 'application/json', 'X-chkp-sid' : sid}
    r = requests.post(url,data=json.dumps(json_payload), headers=request_headers,verify=False)
    return r.json()                                        
'xxx.xxx.xxx.xxx' -> Ip address GAIA

Π•Ρ‚ΠΎ няколко Ρ‚ΠΈΠΏΠΈΡ‡Π½ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π°ΠΉ-чСсто срСщатС, ΠΊΠΎΠ³Π°Ρ‚ΠΎ администриратС Check Point.

1) ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π° оторизация ΠΈ ΠΈΠ·Π»ΠΈΠ·Π°Π½Π΅:

Π‘ΠΊΡ€ΠΈΠΏΡ‚


    payload = {β€˜user’: β€˜your_user’, β€˜password’ : β€˜your_password’}
    response = api_call('xxx.xxx.xxx.xxx', 443, 'login',payload, '')
    return response["sid"]

    response = api_call('xxx.xxx.xxx.xxx', 443,'logout', {} ,sid)
    return response["message"]

2) Π’ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅ Π½Π° Π±Π»Π΅ΠΉΠ΄ΠΎΠ²Π΅Ρ‚Π΅ ΠΈ настройка Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°:

Π‘ΠΊΡ€ΠΈΠΏΡ‚


new_gateway_data = {'name':'CPGleb','anti-bot':True,'anti-virus' : True,'application-control':True,'ips':True,'url-filtering':True,'interfaces':
                    [{'name':"eth0",'topology':'external','ipv4-address': 'xxx.xxx.xxx.xxx',"ipv4-network-mask": "255.255.255.0"},
                     {'name':"eth1",'topology':'internal','ipv4-address': 'xxx.xxx.xxx.xxx',"ipv4-network-mask": "255.255.255.0"}]}
new_gateway_result = api_call('xxx.xxx.xxx.xxx', 443,'set-simple-gateway', new_gateway_data ,sid)
print(json.dumps(new_gateway_result))

3) ΠŸΡ€ΠΎΠΌΡΠ½Π° Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ‚Π° Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π½Π°Ρ‚Π° стСна:

Π‘ΠΊΡ€ΠΈΠΏΡ‚


new_access_data={'name':'Cleanup rule','layer':'Network','action':'Accept'}
new_access_result = api_call('xxx.xxx.xxx.xxx', 443,'set-access-rule', new_access_data ,sid)
print(json.dumps(new_access_result))

4) ДобавянС Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ слой:

Π‘ΠΊΡ€ΠΈΠΏΡ‚


add_access_layer_application={ 'name' : 'application123',"applications-and-url-filtering" : True,"firewall" : False}
add_access_layer_application_result = api_call('xxx.xxx.xxx.xxx', 443,'add-access-layer', add_access_layer_application ,sid)
print(json.dumps(add_access_layer_application_result))

set_package_layer={"name" : "Standard","access":True,"access-layers" : {"add" : [ { "name" : "application123","position" :2}]} ,"installation-targets" : "CPGleb"}
set_package_layer_result = api_call('xxx.xxx.xxx.xxx', 443,'set-package', set_package_layer ,sid)
print(json.dumps(set_package_layer_result))

5) ΠŸΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°ΠΉΡ‚Π΅ ΠΈ инсталирайтС ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ°Ρ‚Π°, ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Ρ‚Π΅ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° (task-id):

Π‘ΠΊΡ€ΠΈΠΏΡ‚


publish_result = api_call('xxx.xxx.xxx.xxx', 443,"publish", {},sid)
print("publish result: " + json.dumps(publish_result))
new_policy = {'policy-package':'Standard','access':True,'targets':['CPGleb']}
new_policy_result = api_call('xxx.xxx.xxx.xxx', 443,'install-policy', new_policy ,sid)
print(json.dumps(new_policy_result)

task_id=(json.dumps(new_policy_result ["task-id"]))
len_str=len(task_id)
task_id=task_id[1:(len_str-1)]
show_task_id ={'task-id':(task_id)}
show_task=api_call('xxx.xxx.xxx.xxx',443,'show-task',show_task_id,sid)
print(json.dumps(show_task))

6) Π”ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ хост:

Π‘ΠΊΡ€ΠΈΠΏΡ‚


new_host_data = {'name':'JohnDoePc', 'ip-address': '192.168.0.10'}
new_host_result = api_call('xxx.xxx.xxx.xxx', 443,'add-host', new_host_data ,sid)
print(json.dumps(new_host_result))

7) Π”ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ ΠΏΠΎΠ»Π΅ Π·Π° прСдотвратяванС Π½Π° Π·Π°ΠΏΠ»Π°Ρ…ΠΈ:

Π‘ΠΊΡ€ΠΈΠΏΡ‚


set_package_layer={'name':'Standard','threat-prevention' :True,'installation-targets':'CPGleb'}
set_package_layer_result = api_call('xxx.xxx.xxx.xxx', 443,'set-package',set_package_layer,sid)
print(json.dumps(set_package_layer_result))

8) Π’ΠΈΠΆΡ‚Π΅ списъка със сСсии

Π‘ΠΊΡ€ΠΈΠΏΡ‚


new_session_data = {'limit':'50', 'offset':'0','details-level' : 'standard'}
new_session_result = api_call('xxx.xxx.xxx.xxx', 443,'show-sessions', new_session_data ,sid)
print(json.dumps(new_session_result))

9) Π‘ΡŠΠ·Π΄Π°ΠΉΡ‚Π΅ Π½ΠΎΠ² ΠΏΡ€ΠΎΡ„ΠΈΠ»:

Π‘ΠΊΡ€ΠΈΠΏΡ‚


add_threat_profile={'name':'Apeiron', "active-protections-performance-impact" : "low","active-protections-severity" : "low or above","confidence-level-medium" : "prevent",
  "confidence-level-high" : "prevent", "threat-emulation" : True,"anti-virus" : True,"anti-bot" : True,"ips" : True,
  "ips-settings" : { "newly-updated-protections" : "staging","exclude-protection-with-performance-impact" : True,"exclude-protection-with-performance-impact-mode" : "High or lower"},
  "overrides" : [ {"protection" : "3Com Network Supervisor Directory Traversal","capture-packets" : True,"action" : "Prevent","track" : "Log"},
                  {"protection" : "7-Zip ARJ Archive Handling Buffer Overflow", "capture-packets" : True,"action" : "Prevent","track" : "Log"} ]}
add_threat_profile_result=api_call('xxx.xxx.xxx.xxx',443,'add-threat-profile',add_threat_profile,sid)
print(json.dumps(add_threat_profile_result))  

10) ΠŸΡ€ΠΎΠΌΡΠ½Π° Π½Π° дСйствиС Π·Π° IPS подпис:

Π‘ΠΊΡ€ΠΈΠΏΡ‚


set_threat_protection={
  "name" : "3Com Network Supervisor Directory Traversal",
  "overrides" : [{ "profile" : "Apeiron","action" : "Detect","track" : "Log","capture-packets" : True},
    { "profile" : "Apeiron", "action" : "Detect", "track" : "Log", "capture-packets" : False} ]}
set_threat_protection_result=api_call('xxx.xxx.xxx.xxx',443,'set-threat-protection',set_threat_protection,sid)
print(json.dumps(set_threat_protection_result))

11) Π”ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ Π²Π°ΡˆΠ°Ρ‚Π° услуга:

Π‘ΠΊΡ€ΠΈΠΏΡ‚


add_service_udp={    "name" : "Dota2_udp", "port" : '27000-27030',
"keep-connections-open-after-policy-installation" : False,
"session-timeout" : 0, "match-for-any" : True,
"sync-connections-on-cluster" : True,
"aggressive-aging" : {"enable" : True, "timeout" : 360,"use-default-timeout" : False  },
"accept-replies" : False}
add_service_udp_results=api_call('xxx.xxx.xxx.xxx',443,"add-service-udp",add_service_udp,sid)
print(json.dumps(add_service_udp_results))

12) Π”ΠΎΠ±Π°Π²Π΅Ρ‚Π΅ катСгория, сайт ΠΈΠ»ΠΈ Π³Ρ€ΡƒΠΏΠ°:

Π‘ΠΊΡ€ΠΈΠΏΡ‚


add_application_site_category={  "name" : "Valve","description" : "Valve Games"}
add_application_site_category_results=api_call('xxx.xxx.xxx.xxx',443,"add-application-site-category",add_application_site_category,sid)
print(json.dumps(add_application_site_category_results))

add_application_site={    "name" : "Dota2", "primary-category" : "Valve",  "description" : "Dotka",
  "url-list" : [ "www.dota2.ru" ], "urls-defined-as-regular-expression" : False}
add_application_site_results=api_call('xxx.xxx.xxx.xxx',443,"add-application-site " , 
add_application_site , sid)
print(json.dumps(add_application_site_results))

add_application_site_group={"name" : "Games","members" : [ "Dota2"]}
add_application_site_group_results=api_call('xxx.xxx.xxx.xxx',443,"add-application-site-group",add_application_site_group,sid)
print(json.dumps(add_application_site_group_results))

ОсвСн Ρ‚ΠΎΠ²Π° с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π£Π΅Π± API ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° добавятС ΠΈ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Ρ‚Π΅ ΠΌΡ€Π΅ΠΆΠΈ, хостовС, Ρ€ΠΎΠ»ΠΈ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ ΠΈ Ρ‚.Π½. ΠžΡΡ‚Ρ€ΠΈΠ΅Ρ‚Π°Ρ‚Π° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½ΠΈ Антивирус, Antibot, IPS, VPN. Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄ΠΎΡ€ΠΈ Π΄Π° инсталиратС Π»ΠΈΡ†Π΅Π½Π·ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° стартиранС Π½Π° скрипт. Всички ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π½Π° Check Point API ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π½Π°ΠΌΠ΅Ρ€Π΅Π½ΠΈ Ρ‚ΡƒΠΊ.

API Π½Π° Check Point + ΠΏΠΎΡ‰Π°Π»ΡŒΠΎΠ½

ОсвСн Ρ‚ΠΎΠ²Π° Π΅ ΡƒΠ΄ΠΎΠ±Π΅Π½ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π£Π΅Π± API Π½Π° Check Point във Π²Ρ€ΡŠΠ·ΠΊΠ° с пощадТия. Postman ΠΈΠΌΠ° настолни вСрсии Π·Π° Windows, Linux ΠΈ MacOS. ОсвСн Ρ‚ΠΎΠ²Π° ΠΈΠΌΠ° плъгин Π·Π° Google Chrome. Π©Π΅ Π³ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅. ΠŸΡŠΡ€Π²ΠΎ трябва Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ Postman Π² Google Chrome Store ΠΈ Π΄Π° инсталиратС:

API Π½Π° Check Point R80.10. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‡Ρ€Π΅Π· CLI, скриптовС ΠΈ Π΄Ρ€

Π‘ Ρ‚Π°Π·ΠΈ ΠΏΠΎΠΌΠΎΡ‰Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° Ρ‰Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°ΠΌΠ΅ ΡƒΠ΅Π± заявки към API Π½Π° Check Point. Π—Π° Π΄Π° Π½Π΅ сС запомнят всички API ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ, Π΅ възмоТно Π΄Π° сС ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€Π°Ρ‚ Ρ‚Π°ΠΊΠ° Π½Π°Ρ€Π΅Ρ‡Π΅Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ»Π΅ΠΊΡ†ΠΈΠΈ (шаблони), ΠΊΠΎΠΈΡ‚ΠΎ Π²Π΅Ρ‡Π΅ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‚ всички Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ:

API Π½Π° Check Point R80.10. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‡Ρ€Π΅Π· CLI, скриптовС ΠΈ Π΄Ρ€

Π’ΡƒΠΊ Ρ‰Π΅ Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ колСкция Π·Π° R80.10. Π‘Π»Π΅Π΄ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ ΡˆΠ°Π±Π»ΠΎΠ½ΠΈΡ‚Π΅ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ Π½Π° API Ρ‰Π΅ станат Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ Π·Π° нас:

API Π½Π° Check Point R80.10. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‡Ρ€Π΅Π· CLI, скриптовС ΠΈ Π΄Ρ€

Π‘ΠΏΠΎΡ€Π΅Π΄ ΠΌΠ΅Π½ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚Π΅ прилоТСния с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° API Π½Π° Check Point ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡŠΡ€Π·ΠΎ.

Check Point + Ansible

Π‘ΠΈΡ… искал ΡΡŠΡ‰ΠΎ Π΄Π° ΠΎΡ‚Π±Π΅Π»Π΅ΠΆΠ°, Ρ‡Π΅ ΠΈΠΌΠ° Ansible ΠΌΠΎΠ΄ΡƒΠ» Π·Π° API Π½Π° CheckPoint. ΠœΠΎΠ΄ΡƒΠ»ΡŠΡ‚ Π²ΠΈ позволява Π΄Π° управляватС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, Π½ΠΎ Π½Π΅ Π΅ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΡƒΠ΄ΠΎΠ±Π΅Π½ Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° Π΅ΠΊΠ·ΠΎΡ‚ΠΈΡ‡Π½ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ. ΠŸΠΈΡΠ°Π½Π΅Ρ‚ΠΎ Π½Π° скриптовС Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π΅Π½ Π΅Π·ΠΈΠΊ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ осигурява ΠΏΠΎ-гъвкави ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

ΠŸΡ€ΠΎΠ΄ΡƒΠΊΡ†ΠΈΡ

На Ρ‚ΠΎΠ²Π°, ΠΌΠΎΠΆΠ΅ Π±ΠΈ, Ρ‰Π΅ Π·Π°Π²ΡŠΡ€ΡˆΠΈΠΌ нашия ΠΊΡ€Π°Ρ‚ΡŠΠΊ ΠΏΡ€Π΅Π³Π»Π΅Π΄ Π½Π° API Π½Π° Check Point. Π‘ΠΏΠΎΡ€Π΅Π΄ ΠΌΠ΅Π½ Ρ‚Π°Π·ΠΈ функция бСшС ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡŠΠ»Π³ΠΎΠΎΡ‡Π°ΠΊΠ²Π°Π½Π° ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ°. ΠŸΠΎΡΠ²Π°Ρ‚Π° Π½Π° API отваря ΠΌΠ½ΠΎΠ³ΠΎ ΡˆΠΈΡ€ΠΎΠΊΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΊΠ°ΠΊΡ‚ΠΎ Π·Π° систСмнитС администратори, Ρ‚Π°ΠΊΠ° ΠΈ Π·Π° систСмнитС ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ‚ΠΎΡ€ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ работят с ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΡ‚Π΅ Π½Π° Check Point. ΠžΡ€ΠΊΠ΅ΡΡ‚Ρ€Π°Ρ†ΠΈΡ, автоматизация, SIEM ΠΎΠ±Ρ€Π°Ρ‚Π½Π° Π²Ρ€ΡŠΠ·ΠΊΠ°... всичко Ρ‚ΠΎΠ²Π° Π΅ възмоТно сСга.

PS ΠžΡ‰Π΅ статии Π·Π° Check Point ΠΊΠ°ΠΊΡ‚ΠΎ Π²ΠΈΠ½Π°Π³ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ Π² нашия Π±Π»ΠΎΠ³ Π₯Π°Π±Ρ€ ΠΈΠ»ΠΈ Π² Π±Π»ΠΎΠ³Π° уСбсайт.

PSS Π—Π° тСхничСски Π²ΡŠΠΏΡ€ΠΎΡΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Check Point, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ‚ΡƒΠΊ

Π’ Π°Π½ΠΊΠ΅Ρ‚Π°Ρ‚Π° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° участват само рСгистрирани ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ. Π’ΠΏΠΈΡˆΠΈ сС, Моля Ρ‚Π΅.

ΠŸΠ»Π°Π½ΠΈΡ€Π°Ρ‚Π΅ Π»ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ API?

  • 70,6%Π΄Π° 12

  • 23,5%No4

  • 5,9%Π’Π΅Ρ‡Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ1

17 ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ гласуваха. 3 ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ сС Π²ΡŠΠ·Π΄ΡŠΡ€ΠΆΠ°Ρ…Π°.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: www.habr.com

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€