Π‘ΡΠΊΠΎΠ½ΠΎΠΌΡŒΡ‚Π΅ 15% Π½Π° всСх хостинговых услугах

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ свои Π½Π°Π²Ρ‹ΠΊΠΈ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ скидку Π½Π° любой Ρ‚Π°Ρ€ΠΈΡ„Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ΄: Skills ΠΠ°Ρ‡Π°Ρ‚ΡŒ
Π ΡƒΠ±Ρ€ΠΈΠΊΠΈ
Администрация Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ

Как Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π° Firewall: ΠΏΠΎΠ»Π½ΠΎΠ΅ тСхничСскоС руководство

ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ брандмауэра β€” это запись ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ, которая инструктируСт Π΄Π²ΠΈΠΆΠΎΠΊ брандмауэра Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ, Π·Π°ΠΏΡ€Π΅Ρ‰Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сСтСвой Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Π½Π° основС Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠ΅Π², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ IP-адрСс источника/назначСния, Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠΎΡ€Ρ‚Π°, транспортный ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΈ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ настроСнныС ΠΏΡ€Π°Π²ΠΈΠ»Π° брандмауэра Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ основной ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΌΠ΅ΠΆΠ΄Ρƒ вашСй инфраструктурой ΠΈ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ΠΎΠΌ, дСлая ΠΈΡ… Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΌ срСдством контроля бСзопасности Π½Π° любом сСрвСрС ΠΈΠ»ΠΈ сСтСвом устройствС.

Π­Ρ‚ΠΎ руководство ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ ΠΏΡ€Π°Π²ΠΈΠ» брандмауэра, UFW Π½Π° Linux, firewalld, Windows Defender Firewall, nftables, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ, ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΠ΅ Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½ΡƒΡŽ срСду ΠΎΡ‚ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ настроСнной.

Π§Ρ‚ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»Π° брандмауэра

КаТдоС ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π² Π½Π°Π±ΠΎΡ€Π΅ ΠΏΡ€Π°Π²ΠΈΠ» брандмауэра оцСниваСтся ΠΏΠΎ пяти основным Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π°ΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ 5-ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ:

  • IP-адрСс источника β€” исходный хост ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΡΠ΅Ρ‚ΡŒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 192.168.1.0/24)
  • IP-адрСс назначСния β€” Ρ†Π΅Π»Π΅Π²ΠΎΠΉ хост ΠΈΠ»ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½
  • ΠŸΠΎΡ€Ρ‚ источника β€” эфСмСрный ΠΏΠΎΡ€Ρ‚ Π½Π° ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ сторонС
  • ΠŸΠΎΡ€Ρ‚ назначСния β€” ΠΏΠΎΡ€Ρ‚ слуТбы Π½Π° ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π΅ΠΉ сторонС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 443 для HTTPS, 22 для SSH)
  • ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» β€” TCP, UDP, ICMP ΠΈΠ»ΠΈ Π½ΠΎΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°

Помимо 5-ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ°, мСТсСтСвыС экраны с отслСТиваниСм состояния Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°ΡŽΡ‚ состояниС соСдинСния (NEW, ESTABLISHED, RELATED, INVALID), Ρ‡Ρ‚ΠΎ позволяСт ΠΈΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ для исходящих соСдинСний Π±Π΅Π· написания явных входящих ΠΏΡ€Π°Π²ΠΈΠ» для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π°.

Брандмауэры с отслСТиваниСм состояния ΠΈ Π±Π΅Π· Π½Π΅Π³ΠΎ

ЀункцияБ отслСТиваниСм состоянияБСз отслСТивания состояния
ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ‚ состояниС соСдинСнияДаНСт
АвтоматичСски Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ трафикДаНСт β€” Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ явныС ΠΏΡ€Π°Π²ΠΈΠ»Π°
НакладныС расходы Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΠ£ΠΌΠ΅Ρ€Π΅Π½Π½Ρ‹Π΅ΠžΡ‡Π΅Π½ΡŒ Π½ΠΈΠ·ΠΊΠΈΠ΅
Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ случай использованияΠ₯остовыС брандмауэры, NGFWΠœΠ°Π³ΠΈΡΡ‚Ρ€Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ‚ΠΎΡ€Ρ‹, Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ACL
Π£ΡΡ‚ΠΎΠΉΡ‡ΠΈΠ²ΠΎΡΡ‚ΡŒ ΠΊ спуфингуВысокаяНизкая
Π‘Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΠΠΈΠΆΠ΅Π’Ρ‹ΡˆΠ΅
ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ инструмСнтовiptables (conntrack), UFW, Windows DefenderAWS NACL, Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ACL Π½Π° Cisco IOS

Для практичСски всСх сСрвСрных Ρ€Π°Π·Π²Ρ‘Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠΉ β€” Π²ΠΊΠ»ΡŽΡ‡Π°Ρ VPS Π₯остинг ΠΈ Π’Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ сСрвСры β€” хостовый брандмауэр с отслСТиваниСм состояния являСтся ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€Π°Π²ΠΈΠ» брандмауэра: ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° порядка

Одним ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространённых источников Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ настройки являСтся Π½Π΅ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ порядка ΠΏΡ€Π°Π²ΠΈΠ». Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ брандмауэров ΠΎΡ†Π΅Π½ΠΈΠ²Π°ΡŽΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»Π° свСрху Π²Π½ΠΈΠ· ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, послС Ρ‡Π΅Π³ΠΎ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚:

  • Π¨ΠΈΡ€ΠΎΠΊΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ALLOW, Ρ€Π°Π·ΠΌΠ΅Ρ‰Ρ‘Π½Π½ΠΎΠ΅ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° DENY, Π½Π΅Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ Π΅Π³ΠΎ.
  • ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ DENY ALL Π² Π½Π°Ρ‡Π°Π»Π΅ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ всё, нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ слСдуСт Π΄Π°Π»Π΅Π΅.
  • Π”ΡƒΠ±Π»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ΡΡ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° Ρ€Π°ΡΡ…ΠΎΠ΄ΡƒΡŽΡ‚ процСссорныС Ρ†ΠΈΠΊΠ»Ρ‹ ΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρƒ ΠΏΡ€ΠΈ Π°ΡƒΠ΄ΠΈΡ‚Π΅.

Π›ΡƒΡ‡ΡˆΠ°Ρ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°: ВсСгда Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΠΉΡ‚Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΏΠ΅Ρ€Π΅Π΄ ΠΎΠ±Ρ‰ΠΈΠΌΠΈ. Π Π°Π·ΠΌΠ΅Ρ‰Π°ΠΉΡ‚Π΅ явныС ΠΏΡ€Π°Π²ΠΈΠ»Π° DENY для извСстных врСдоносных источников Π² Π½Π°Ρ‡Π°Π»Π΅, Π·Π°Ρ‚Π΅ΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° ALLOW для Π΄ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Ρ… слуТб, ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ°ΠΉΡ‚Π΅ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΉ DENY ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Настройка ΠΏΡ€Π°Π²ΠΈΠ» брандмауэра Π½Π° Linux с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ UFW

UFW (Uncomplicated Firewall) β€” это интСрфСйс для iptables ΠΈ nftables Π½Π° систСмах Π½Π° основС Debian/Ubuntu. Он абстрагируСт Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ синтаксис Ρ†Π΅ΠΏΠΎΡ‡Π΅ΠΊ Π² ΡƒΠ΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, сохраняя ΠΏΡ€ΠΈ этом ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎΡ€Ρ‚ΠΎΠ², ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², IP-адрСсов ΠΈ интСрфСйсов.

Π¨Π°Π³ 1: Установка ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ UFW

UFW прСдустановлСн Π½Π° Ubuntu. ΠŸΠ΅Ρ€Π΅Π΄ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π΅Π³ΠΎ статус:

sudo ufw status verbose

Если Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π΅Π½, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π΅Π³ΠΎ:

sudo ufw enable

ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅: Если Π²Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Ρ‡Π΅Ρ€Π΅Π· SSH ΠΈ Π΅Ρ‰Ρ‘ Π½Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΏΠΎΡ€Ρ‚ 22, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ UFW Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Π²Π°ΠΌ доступ. ВсСгда Ρ€Π°Π·Ρ€Π΅ΡˆΠ°ΠΉΡ‚Π΅ SSH ΠΏΠ΅Ρ€Π΅Π΄ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ брандмауэра Π½Π° ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΌ сСрвСрС.

Π¨Π°Π³ 2: Установка ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚, Ρ‡Ρ‚ΠΎ происходит с Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠΎΠΌ, Π½Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΌΡƒ явному ΠΏΡ€Π°Π²ΠΈΠ»Ρƒ. Базовая бСзопасная конфигурация:

sudo ufw default deny incoming
sudo ufw default allow outgoing

Π­Ρ‚ΠΎ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ всС Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ входящиС соСдинСния, Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Ρ ΠΏΡ€ΠΈ этом вСсь исходящий Ρ‚Ρ€Π°Ρ„ΠΈΠΊ. Если ваша ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° бСзопасности Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ исходящСго Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для прСдотвращСния ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹Ρ… Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² C2), ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΈΡΡ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ:

sudo ufw default deny outgoing

Π—Π°Ρ‚Π΅ΠΌ явно Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ исходящиС назначСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½Ρ‹ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ.

Π¨Π°Π³ 3: Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… слуТб ΠΈ ΠΏΠΎΡ€Ρ‚ΠΎΠ²

UFW ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΈΠΌΠ΅Π½Π° слуТб ΠΈΠ· /etc/services ΠΈΠ»ΠΈ явныС Π½ΠΎΠΌΠ΅Ρ€Π° ΠΏΠΎΡ€Ρ‚ΠΎΠ²:

# Allow SSH by service name
sudo ufw allow ssh

# Allow HTTP and HTTPS
sudo ufw allow http
sudo ufw allow https

# Allow a custom application port
sudo ufw allow 8080/tcp

# Allow a UDP service (e.g., DNS resolver)
sudo ufw allow 53/udp

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΏΠΎΡ€Ρ‚ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, пассивный FTP):

sudo ufw allow 49152:65535/tcp

Π¨Π°Π³ 4: ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ доступа ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ IP-адрСсам источника

ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ административных ΠΏΠΎΡ€Ρ‚ΠΎΠ² для 0.0.0.0/0 являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· основных ΠΏΡ€ΠΈΡ‡ΠΈΠ½ ΠΊΠΎΠΌΠΏΡ€ΠΎΠΌΠ΅Ρ‚Π°Ρ†ΠΈΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°. ΠžΠ³Ρ€Π°Π½ΠΈΡ‡ΡŒΡ‚Π΅ SSH извСстным IP-адрСсом управлСния:

sudo ufw allow from 203.0.113.50 to any port 22 proto tcp

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ всю ΠΏΠΎΠ΄ΡΠ΅Ρ‚ΡŒ управлСния:

sudo ufw allow from 10.0.0.0/8 to any port 22 proto tcp

Π¨Π°Π³ 5: Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… IP-адрСсов ΠΈΠ»ΠΈ подсСтСй

Π—Π°Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠΉΡ‚Π΅ извСстный врСдоносный IP-адрСс:

sudo ufw deny from 198.51.100.77

Π—Π°Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠΉΡ‚Π΅ всю ΠΏΠΎΠ΄ΡΠ΅Ρ‚ΡŒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π³Π΅ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒ ΠΈΠ»ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ врСдоносной ASN):

sudo ufw deny from 198.51.100.0/24

Π“Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹ΠΉ случай: ΠŸΡ€Π°Π²ΠΈΠ»Π° UFW deny ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ TCP RST ΠΈΠ»ΠΈ ICMP-ΠΎΡ‚Π²Π΅Ρ‚ ΠΎ нСдоступности ΠΏΠΎΡ€Ρ‚Π°, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚ сущСствованиС хоста. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ reject для Π±Π΅ΡΡˆΡƒΠΌΠ½ΠΎΠ³ΠΎ отбрасывания ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²:

sudo ufw reject from 198.51.100.0/24

Π¨Π°Π³ 6: ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€Π°Π²ΠΈΠ»

sudo ufw status numbered

Π€Π»Π°Π³ numbered присваиваСт индСкс ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΏΡ€Π°Π²ΠΈΠ»Ρƒ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ удалСния:

[ 1] 22/tcp                     ALLOW IN    203.0.113.50
[ 2] 80/tcp                     ALLOW IN    Anywhere
[ 3] 443/tcp                    ALLOW IN    Anywhere

Для ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π°, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ привязки интСрфСйсов:

sudo ufw status verbose

Π¨Π°Π³ 7: Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎ Π½ΠΎΠΌΠ΅Ρ€Ρƒ ΠΏΡ€Π°Π²ΠΈΠ»Π° (ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ β€” ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ):

sudo ufw delete 3

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎ спСцификации ΠΏΡ€Π°Π²ΠΈΠ»Π°:

sudo ufw delete allow 8080/tcp

Π¨Π°Π³ 8: ΠŸΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈ сохранСниС ΠΏΡ€Π°Π²ΠΈΠ»

ΠŸΡ€Π°Π²ΠΈΠ»Π° UFW автоматичСски ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ послС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. ПослС массовых ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π±Π΅Π· Ρ€Π°Π·Ρ€Ρ‹Π²Π° ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… соСдинСний:

sudo ufw reload

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒ всС ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈ Π½Π°Ρ‡Π°Ρ‚ΡŒ с нуля:

sudo ufw reset

Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ возмоТности UFW: ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

UFW ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, хранящиСся Π² /etc/ufw/applications.d/. Π­Ρ‚ΠΎ позволяСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π° для Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΏΠΎΠ΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ:

sudo ufw app list
sudo ufw allow 'Nginx Full'
sudo ufw app info 'Nginx Full'

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ профиля для Node.js API:

[NodeAPI]
title=Node.js API Server
description=Custom Node.js application
ports=3000,3001/tcp

Π—Π°Ρ‚Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ:

sudo ufw allow NodeAPI

Настройка ΠΏΡ€Π°Π²ΠΈΠ» брандмауэра с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ firewalld (RHEL/CentOS/Fedora)

firewalld ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π·ΠΎΠ½Π½ΡƒΡŽ модСль, Π° Π½Π΅ плоский Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π°Π²ΠΈΠ». ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ сСтСвой интСрфСйс назначаСтся Π·ΠΎΠ½Π΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, public, internal, dmz), ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·ΠΎΠ½Ρ‹. Π­Ρ‚ΠΎ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΎ для сСрвСров с нСсколькими сСтСвыми интСрфСйсами.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ firewalld

# Check status
sudo firewall-cmd --state

# List all active zones and their interfaces
sudo firewall-cmd --get-active-zones

# List rules in the public zone
sudo firewall-cmd --zone=public --list-all

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ слуТб

# Allow HTTPS permanently
sudo firewall-cmd --zone=public --add-service=https --permanent

# Allow a custom port
sudo firewall-cmd --zone=public --add-port=8443/tcp --permanent

# Remove a service
sudo firewall-cmd --zone=public --remove-service=http --permanent

# Reload to apply permanent changes
sudo firewall-cmd --reload

Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° для ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊ Π½Π° основС IP

Π Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° firewalld ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ iptables с Π±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΌ синтаксисом:

# Allow SSH only from a specific IP
sudo firewall-cmd --zone=public 
  --add-rich-rule='rule family="ipv4" source address="203.0.113.50" service name="ssh" accept' 
  --permanent

# Block all traffic from a subnet
sudo firewall-cmd --zone=public 
  --add-rich-rule='rule family="ipv4" source address="198.51.100.0/24" drop' 
  --permanent

sudo firewall-cmd --reload

Настройка ΠΏΡ€Π°Π²ΠΈΠ» брандмауэра с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ nftables

nftables β€” это соврСмСнная Π·Π°ΠΌΠ΅Π½Π° iptables, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‰Π°Ρ Π΅Π΄ΠΈΠ½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ IPv4, IPv6, ARP ΠΈ мостов со Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈ Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½ΠΎΠΉ Π·Π°ΠΌΠ΅Π½ΠΎΠΉ ΠΏΡ€Π°Π²ΠΈΠ».

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π°Π²ΠΈΠ» nftables

# Flush existing ruleset
sudo nft flush ruleset

# Create a basic filtering table
sudo nft add table inet filter

# Add input, forward, and output chains
sudo nft add chain inet filter input { type filter hook input priority 0 ; policy drop ; }
sudo nft add chain inet filter forward { type filter hook forward priority 0 ; policy drop ; }
sudo nft add chain inet filter output { type filter hook output priority 0 ; policy accept ; }

# Allow established and related connections
sudo nft add rule inet filter input ct state established,related accept

# Allow loopback
sudo nft add rule inet filter input iif lo accept

# Allow SSH from a specific IP
sudo nft add rule inet filter input ip saddr 203.0.113.50 tcp dport 22 accept

# Allow HTTP and HTTPS from anywhere
sudo nft add rule inet filter input tcp dport { 80, 443 } accept

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π°Π²ΠΈΠ» постоянным, сохранитС Π΅Π³ΠΎ Π² Ρ„Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ:

sudo nft list ruleset > /etc/nftables.conf
sudo systemctl enable nftables

Настройка ΠΏΡ€Π°Π²ΠΈΠ» брандмауэра Π² Windows

Windows Defender Firewall с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ прСдоставляСт ΠΊΠ°ΠΊ графичСский интСрфСйс, Ρ‚Π°ΠΊ ΠΈ интСрфСйсы ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки (netsh, PowerShell) для управлСния ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ.

ИспользованиС графичСского интСрфСйса

  1. ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Windows Defender Firewall с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ Ρ‡Π΅Ρ€Π΅Π· wf.msc.
  2. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠŸΡ€Π°Π²ΠΈΠ»Π° для входящих ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ ΠŸΡ€Π°Π²ΠΈΠ»Π° для исходящих ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π½Π° Π»Π΅Π²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ.
  3. НаТмитС Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π½Π° ΠΏΡ€Π°Π²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ.
  4. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Ρ‚ΠΈΠΏ ΠΏΡ€Π°Π²ΠΈΠ»Π°:
  • ΠŸΠΎΡ€Ρ‚ β€” Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ ΠΏΠΎ Π½ΠΎΠΌΠ΅Ρ€Ρƒ ΠΏΠΎΡ€Ρ‚Π° TCP/UDP
  • ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° β€” Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ ΠΏΠΎ ΠΏΡƒΡ‚ΠΈ ΠΊ исполняСмому Ρ„Π°ΠΉΠ»Ρƒ
  • ΠŸΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ β€” использованиС встроСнного опрСдСлСния слуТбы Windows
  • НастраиваСмоС β€” ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ всСми ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ
  1. Π£ΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΏΠΎΡ€Ρ‚ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹Π΅ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ (Π”ΠΎΠΌΠ΅Π½, Частный, ΠŸΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΉ) ΠΈ Π½Π°Π·ΠΎΠ²ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ.

ИспользованиС PowerShell (рСкомСндуСтся для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ)

# Allow inbound HTTPS
New-NetFirewallRule -DisplayName "Allow HTTPS Inbound" `
  -Direction Inbound -Protocol TCP -LocalPort 443 -Action Allow

# Allow inbound SSH (Windows OpenSSH)
New-NetFirewallRule -DisplayName "Allow SSH Inbound" `
  -Direction Inbound -Protocol TCP -LocalPort 22 -Action Allow `
  -RemoteAddress 203.0.113.50

# Block inbound traffic from a specific IP
New-NetFirewallRule -DisplayName "Block Malicious IP" `
  -Direction Inbound -RemoteAddress 198.51.100.77 -Action Block

# View all inbound rules
Get-NetFirewallRule -Direction Inbound | Select-Object DisplayName, Enabled, Action

# Remove a rule by name
Remove-NetFirewallRule -DisplayName "Allow HTTPS Inbound"

ИспользованиС netsh (ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΉ, Π½ΠΎ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ)

:: Allow inbound port 443
netsh advfirewall firewall add rule name="Allow HTTPS" protocol=TCP dir=in localport=443 action=allow

:: Block a specific IP
netsh advfirewall firewall add rule name="Block IP" dir=in remoteip=198.51.100.77 action=block

:: Delete a rule
netsh advfirewall firewall delete rule name="Allow HTTPS"

ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ошибки ΠΈ Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Π΅ случаи Π² ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… брандмауэра

НСявноС Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° ESTABLISHED

На брандмауэрах с отслСТиваниСм состояния отсутствиС явного Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ соСдинСний ESTABLISHED ΠΈ RELATED Π²ΠΎ входящСй Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ Π½Π°Ρ€ΡƒΡˆΠΈΡ‚ всС сСссии, ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ исходящим Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠΎΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, apt update, curl, DNS-запросы), Π΄Π°ΠΆΠ΅ Ссли исходящая Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ° установлСна Π² ACCEPT. Π­Ρ‚ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространённая ошибка ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ использовании iptables ΠΈΠ»ΠΈ nftables Π² чистом Π²ΠΈΠ΄Π΅.

# This rule MUST appear before any DROP rules in the input chain
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

ΠŸΠ°Ρ€ΠΈΡ‚Π΅Ρ‚ IPv6

МногиС администраторы Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»Π° IPv4 ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ± IPv6. Если ваш сСрвСр ΠΈΠΌΠ΅Π΅Ρ‚ IPv6-адрСс ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° IPv6 Π² UFW Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ всС ΠΏΡ€Π°Π²ΠΈΠ»Π° IPv4, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ²ΡˆΠΈΡΡŒ Ρ‡Π΅Ρ€Π΅Π· ::. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ /etc/default/ufw содСрТит:

IPV6=yes

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ΅Ρ‚Π»ΠΈ

ВсСгда явно Ρ€Π°Π·Ρ€Π΅ΡˆΠ°ΠΉΡ‚Π΅ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ Π½Π° интСрфСйсС ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ΅Ρ‚Π»ΠΈ (lo). МногиС Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ слуТбы (Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ сообщСний, Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ API) Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‡Π΅Ρ€Π΅Π· 127.0.0.1 ΠΈΠ»ΠΈ ::1. Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ΅Ρ‚Π»ΠΈ Π½Π΅Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ мСТпроцСссноС взаимодСйствиС.

sudo ufw allow in on lo
sudo ufw allow out on lo

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ частоты запросов для прСдотвращСния ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°

UFW ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ частоты соСдинСний Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ систСмы, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для SSH ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… слуТб Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ:

sudo ufw limit ssh

Π­Ρ‚ΠΎ позволяСт максимум 6 ΠΏΠΎΠΏΡ‹Ρ‚ΠΎΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π·Π° 30 сСкунд с ΠΎΠ΄Π½ΠΎΠ³ΠΎ IP-адрСса, послС Ρ‡Π΅Π³ΠΎ срабатываСт автоматичСская врСмСнная Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° β€” лёгкая Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° fail2ban для Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Ρ€Π°Π·Π²Ρ‘Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠΉ.

ICMP ΠΈ диагностичСский Ρ‚Ρ€Π°Ρ„ΠΈΠΊ

Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° всСго ICMP β€” распространённая, Π½ΠΎ контрпродуктивная ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°. Она Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ping, traceroute, ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ MTU ΠΏΡƒΡ‚ΠΈ ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ β€” Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ICMP:

  • Π’ΠΈΠΏ 0 (Echo Reply) ΠΈ Π’ΠΈΠΏ 8 (Echo Request) β€” для ping
  • Π’ΠΈΠΏ 3 (Destination Unreachable) β€” для обнаруТСния MTU ΠΏΡƒΡ‚ΠΈ
  • Π’ΠΈΠΏ 11 (Time Exceeded) β€” для traceroute

Π‘Π»ΠΎΠΊΠΈΡ€ΡƒΠΉΡ‚Π΅ Π’ΠΈΠΏ 17 (Address Mask Request) ΠΈ Π’ΠΈΠΏ 18 (Address Mask Reply), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π·Π°ΠΊΠΎΠ½Π½ΠΎΠ³ΠΎ соврСмСнного примСнСния.

ΠŸΡ€Π°Π²ΠΈΠ»Π° брандмауэра ΠΈ хостинговыС срСды

ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ стратСгия брандмауэра Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ зависит ΠΎΡ‚ уровня вашСй инфраструктуры.

На ΠžΠ±Ρ‰Π΅ΠΌ Π²Π΅Π±-хостингС брандмауэр управляСтся Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠΌ. АрСндаторы ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ срСдства контроля доступа Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° Π½Π΅ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ядра.

На VPS с cPanel, cPanel/WHM Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ConfigServer Security & Firewall (CSF), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ iptables высокоуровнСвым интСрфСйсом, автоматичСским ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ port knocking. CSF являСтся стандартным Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ брандмауэра для срСд cPanel ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ чистым UFW Π² Ρ‚Π°ΠΊΠΈΡ… систСмах.

На нСуправляСмых VPS Π₯остингС ΠΈΠ»ΠΈ Π’Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… сСрвСрах Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ брандмауэром ядра. ИмСнно здСсь UFW, firewalld ΠΈ nftables ΡΠ²Π»ΡΡŽΡ‚ΡΡ подходящими инструмСнтами. Базовая конфигурация Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ:

  • ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ Π·Π°ΠΏΡ€Π΅Ρ‚Π° входящСго Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
  • SSH, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ извСстными IP-адрСсами управлСния ΠΈΠ»ΠΈ VPN-шлюзом
  • ВсС нСсущСствСнныС ΠΏΠΎΡ€Ρ‚Ρ‹ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹
  • ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ частоты запросов Π½Π° ΠΏΠΎΡ€Ρ‚Π°Ρ… Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ
  • Π’Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΆΡƒΡ€Π½Π°Π»Π° для Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°

Если Π²Ρ‹ запускаСтС GPU-Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈΠ»ΠΈ слуТбы Π²Ρ‹Π²ΠΎΠ΄Π° ML Π½Π° GPU Π₯остингС, ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ особоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΡ€Ρ‚Ρ‹, ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ Jupyter notebooks, TensorBoard ΠΈ API обслуТивания ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ β€” ΠΎΠ½ΠΈ часто становятся Ρ†Π΅Π»ΡŒΡŽ Π±ΠΎΡ‚ΠΎΠ² для ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠΌΠ°ΠΉΠ½ΠΈΠ½Π³Π°, ΡΠΊΠ°Π½ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ ΠΏΠΎΡ€Ρ‚Ρ‹ с высокими Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ.

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ список Π°ΡƒΠ΄ΠΈΡ‚Π° ΠΈ обслуТивания ΠΏΡ€Π°Π²ΠΈΠ» брандмауэра

РСгулярныС Π°ΡƒΠ΄ΠΈΡ‚Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ» Ρ‚Π°ΠΊ ΠΆΠ΅ Π²Π°ΠΆΠ½Ρ‹, ΠΊΠ°ΠΊ ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½Π°Ρ настройка. ΠŸΡ€Π°Π²ΠΈΠ»Π° Π½Π°ΠΊΠ°ΠΏΠ»ΠΈΠ²Π°ΡŽΡ‚ΡΡ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΈ ΡƒΡΡ‚Π°Ρ€Π΅Π²Π°ΡŽΡ‚, создавая Π½Π΅Π½ΡƒΠΆΠ½ΡƒΡŽ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ Π°Ρ‚Π°ΠΊΠΈ.

Π—Π°Π΄Π°Ρ‡ΠΈ Π°ΡƒΠ΄ΠΈΡ‚Π°, выполняСмыС Π΅ΠΆΠ΅ΠΊΠ²Π°Ρ€Ρ‚Π°Π»ΡŒΠ½ΠΎ:

  • ЗапуститС sudo ufw status numbered ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΎΠ³ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌΡƒ ΠΈΠ½Π²Π΅Π½Ρ‚Π°Ρ€ΡŽ слуТб
  • Π£Π΄Π°Π»ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° для Π²Ρ‹Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… ΠΈΠ· эксплуатации слуТб, старых IP-адрСсов ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π°ΠΊ ΠΈ Π½Π΅ Π±Ρ‹Π»ΠΈ ΠΎΡ‡ΠΈΡ‰Π΅Π½Ρ‹
  • Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ deny incoming
  • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° IPv6 ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ IPv4
  • Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΆΡƒΡ€Π½Π°Π»Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ ΠΈ Ρ‡Ρ‚ΠΎ ΠΆΡƒΡ€Π½Π°Π»Ρ‹ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Π² Π²Π°ΡˆΡƒ SIEM ΠΈΠ»ΠΈ Π°Π³Ρ€Π΅Π³Π°Ρ‚ΠΎΡ€ ΠΆΡƒΡ€Π½Π°Π»ΠΎΠ²
  • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ nmap с внСшнСго хоста, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ Π°Ρ‚Π°ΠΊΠΈ соотвСтствуСт вашим намСрСниям
# Scan your own server from an external host to verify exposed ports
nmap -sS -sV -p 1-65535 --open YOUR_SERVER_IP
  • Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° ESTABLISHED/RELATED ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ упорядочСны
  • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° ограничСния частоты запросов ΠΈ скоррСктируйтС ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²Ρ‹Π΅ значСния Π½Π° основС Π½Π°Π±Π»ΡŽΠ΄Π°Π΅ΠΌΡ‹Ρ… шаблонов Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°

ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ: Π²Ρ‹Π±ΠΎΡ€ подходящСго инструмСнта брандмауэра

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉΠ Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ΠžΠ±ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠ΅
Π‘Π΅Ρ€Π²Π΅Ρ€ Ubuntu/Debian, простой Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π°Π²ΠΈΠ»UFWΠ£Π΄ΠΎΠ±ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΉ синтаксис, постоянный ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
Π‘Π΅Ρ€Π²Π΅Ρ€ RHEL/CentOS/FedorafirewalldНативная интСграция, зонная модСль ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ с нСсколькими NIC
Π’Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΈΠ»ΠΈ слоТная Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡnftablesАтомарныС обновлСния, Сдиная ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° для IPv4/IPv6/ARP
Π£ΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΉ RHEL/CentOS 6iptablesЕдинствСнный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π° старых ядрах
Windows ServerWindows Defender + PowerShellНативный, управляСмый Ρ‡Π΅Ρ€Π΅Π· GPO, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ скриптинг
VPS с cPanelCSF (ConfigServer Firewall)Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ для cPanel, Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π΄Π΅ΠΌΠΎΠ½ LFD
ΠžΠ±Π»Π°Ρ‡Π½Π°Ρ VM (AWS/GCP/Azure)ΠžΠ±Π»Π°Ρ‡Π½Ρ‹Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ бСзопасности + хостовый Π±Ρ€Π°Π½Π΄ΠΌΠ°ΡƒΡΡ€Π­ΡˆΠ΅Π»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ Π·Π°Ρ‰ΠΈΡ‚Π°; ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Π΅ SG Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ с отслСТиваниСм состояния ΠΈ бСсплатны

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ Π²Ρ‹Π²ΠΎΠ΄Ρ‹

  • УстановитС Π·Π°ΠΏΡ€Π΅Ρ‚ входящСго Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠ΅Ρ€Π΅Π΄ написаниСм Π»ΡŽΠ±Ρ‹Ρ… ΠΏΡ€Π°Π²ΠΈΠ» Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ любоС Π·Π°Π±Ρ‹Ρ‚ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Ρ‚ ΠΊ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ соСдинСнию, Π° Π½Π΅ ΠΊ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌΡƒ.
  • Никогда Π½Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΠΉΡ‚Π΅ SSH для 0.0.0.0/0 Π½Π° производствСнном сСрвСрС. ΠžΠ³Ρ€Π°Π½ΠΈΡ‡ΡŒΡ‚Π΅ Π΅Π³ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΌ IP-адрСсом, ΠΏΠΎΠ΄ΡΠ΅Ρ‚ΡŒΡŽ VPN ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ port knocking.
  • ΠŸΠΈΡˆΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌΠΈ. ΠŸΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ from 203.0.113.50 to any port 22 proto tcp вмСсто allow 22.
  • Π”ΡƒΠ±Π»ΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° IPv4 Π² IPv6. Брандмауэр, Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΡŽΡ‰ΠΈΠΉ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ IPv4, β€” это ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π° брандмауэра.
  • Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ частоты соСдинСний Π½Π° всСх ΠΏΠΎΡ€Ρ‚Π°Ρ… Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠ°ΠΊ Π±Π°Π·ΠΎΠ²ΡƒΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρƒ ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°.
  • Π’Π΅Π΄ΠΈΡ‚Π΅ ΠΆΡƒΡ€Π½Π°Π» Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°. Π‘Π΅ΡΡˆΡƒΠΌΠ½ΠΎΠ΅ отбрасываниС Π±Π΅Π· Турналирования Π΄Π΅Π»Π°Π΅Ρ‚ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚Ρ‹ практичСски Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ.
  • ΠŸΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅ Π°ΡƒΠ΄ΠΈΡ‚ ΠΏΡ€Π°Π²ΠΈΠ» ΠΏΠΎ Ρ€Π°ΡΠΏΠΈΡΠ°Π½ΠΈΡŽ. Π£ΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° β€” это ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ, Π° Π½Π΅ страховочная ΡΠ΅Ρ‚ΡŒ.
  • ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ снаруТи. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ nmap ΠΈΠ»ΠΈ внСшний сканСр ΠΏΠΎΡ€Ρ‚ΠΎΠ² послС ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ измСнСния ΠΏΡ€Π°Π²ΠΈΠ» для подтвСрТдСния эффСктивной повСрхности Π°Ρ‚Π°ΠΊΠΈ.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ufw reload вмСсто ufw disable && ufw enable, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Ρ‹Π²Π° Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… соСдинСний ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΏΡ€Π°Π²ΠΈΠ».
  • На nftables ΠΈ iptables всСгда Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΠΉΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ принятия ESTABLISHED/RELATED Π² Π½Π°Ρ‡Π°Π»Π΅ входящСй Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π½Π°Ρ€ΡƒΡˆΠΈΡ‚ΡŒ сСссии, ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ исходящим Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠΎΠΌ.

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы

Π’ Ρ‡Ρ‘ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎΠΌ брандмауэра ΠΈ Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ бСзопасности Π² ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… срСдах?

Π“Ρ€ΡƒΠΏΠΏΠ° бСзопасности (AWS, GCP, Azure) β€” это управляСмый ΠΎΠ±Π»Π°ΠΊΠΎΠΌ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² с отслСТиваниСм состояния, примСняСмый Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€Π° Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ достигаСт вашСй VM. ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ хостового брандмауэра (UFW, firewalld) Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π²Π½ΡƒΡ‚Ρ€ΠΈ ядра ОБ. Оба Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ для ΡΡˆΠ΅Π»ΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ β€” облачная Π³Ρ€ΡƒΠΏΠΏΠ° бСзопасности ΠΊΠ°ΠΊ внСшний ΠΏΠ΅Ρ€ΠΈΠΌΠ΅Ρ‚Ρ€, Π° хостовый брандмауэр ΠΊΠ°ΠΊ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π·Π°Ρ‰ΠΈΡ‚Ρ‹.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ UFW ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΊΠ°ΠΊ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅, Π½ΠΎ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ всё Ρ€Π°Π²Π½ΠΎ блокируСтся?

НаиболСС распространённая ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° β€” порядок ΠΏΡ€Π°Π²ΠΈΠ». ΠŸΡ€Π°Π²ΠΈΠ»ΠΎ DENY Ρ€Π°Π½Π΅Π΅ Π² Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ совпадаСт Ρ€Π°Π½ΡŒΡˆΠ΅ вашСго ΠΏΡ€Π°Π²ΠΈΠ»Π° ALLOW. ЗапуститС sudo ufw status numbered ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ порядок. Π’Π°ΠΊΠΆΠ΅ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° IPv6 ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚, Ссли ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· IPv6, ΠΈ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ интСрфСйс ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ, Ссли сСрвСр ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько сСтСвых интСрфСйсов.

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ Π»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ICMP Π² цСлях бСзопасности?

НСт. Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° всСго ICMP Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ MTU ΠΏΡƒΡ‚ΠΈ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ зависанию TCP-сСссий Π² сСтях с нСстандартными MTU. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ traceroute ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ затрудняСт диагностику сСти. Π‘Π»ΠΎΠΊΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ Ρ‚ΠΈΠΏΡ‹ ICMP, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π·Π°ΠΊΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ примСнСния (Ρ‚ΠΈΠΏΡ‹ 17 ΠΈ 18). Π Π°Π·Ρ€Π΅ΡˆΠ°ΠΉΡ‚Π΅ echo request/reply, destination unreachable ΠΈ time exceeded.

Π§Ρ‚ΠΎ происходит с Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ SSH-соСдинСниями ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ UFW?

sudo ufw reload ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π°Π²ΠΈΠ» Π±Π΅Π· сброса ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… записСй состояния conntrack. АктивныС SSH-сСссии ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Ρ‘Π½Π½Ρ‹ΠΌΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π°Π±Π»ΠΈΡ†Π° отслСТивания соСдинСний ядра ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΈΡ… состояниС ESTABLISHED. Волько sudo ufw disable с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ sudo ufw enable сбросит состояниС ΠΈ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·ΠΎΡ€Π²Ρ‘Ρ‚ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ соСдинСния.

Как ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΠΎΡ‚Π΅Ρ€ΡŽ ΠΏΡ€Π°Π²ΠΈΠ» брандмауэра послС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ систСмы?

UFW автоматичСски сохраняСт ΠΏΡ€Π°Π²ΠΈΠ»Π° послС ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ /etc/ufw/. Для firewalld ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„Π»Π°Π³ --permanent для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΈ запуститС sudo firewall-cmd --reload. Для чистого nftables сохранитС Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π°Π²ΠΈΠ» с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ sudo nft list ruleset > /etc/nftables.conf ΠΈ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ слуТба systemd nftables Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π°. Для iptables ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ iptables-save > /etc/iptables/rules.v4 ΠΈ установитС ΠΏΠ°ΠΊΠ΅Ρ‚ iptables-persistent.

Администрация Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ
Администрация Бэкапы
Администрация