MYCSS

Показ дописів із міткою firewall. Показати всі дописи
Показ дописів із міткою firewall. Показати всі дописи

2025-03-04

Proxmox VE, firewall, nf_conntrack_max, nf_conntrack_count

Є Hypervisor, Proxmox VE з ввімкненим firewall на рівні Proxmox, через те, що запущені VM з Proxy сервером "Squid", і бажано обмежити доступ до потенційного доступу до локальної мережі.

Але за великої кількості підключень спрацьовують  обмеження на кількість одночасних сесій підключень.

Proxmos VE, Shell, dmesg
Для стандартних рішень з Ubuntu є змінна файлу з додавань певних рядків у  /etc/sysctl.conf, але усі значення перевизначаються і бачимо постійно значення за замовчуванням.

Not help, /etc/sysctl.conf
Але знайшов давній пост де є пропозиція використати налаштування GUI Proxmox. І це допомогло.
Proxmox VE, GUI, Node, Firewall. Options. nf_conntrack_max

Моніторинг значень - nf_conntrack_count: "watch -n 1 "cat /proc/sys/net/netfilter/nf_conntrack_count"

watch -n 1 "cat /proc/sys/net/netfilter/nf_conntrack_count"

 

2024-06-16

Hardware switch with stateless firewall rules. Seastone DX010. SONiC OS.

⌛ Нові часи швидкостей 📶 і нове обладнання приходиться опановувати.

Так опановую налаштування 100Gb обладнання 🔨 на прикладі "Celestica Seastone DX010, 32-Port 100G QSFP28 Onie Switch" з операційною системою SONiC OS.

🚆 Великі швидкості передачі - великі вимоги до часу ⛳ обробки мережевих пакетів. Для пришвидшення обробки використовуються спеціальні апаратні акселератори (ASIC), наприклад,  Broadcom Tomahawk ASIC.

🚀 ASIC своєю чергою можуть мати свої обмеження 🚧, такі, наприклад як stateless firewall правила в ACL

stateless firewall

statefull firewall

2023-07-24

Google Cybersecurity Professional Certificate - Tools of the Trade: Linux and SQL - Completed on July 24, 2023

Ось це 4-й курс "Tools of the Trade: Linux and SQL" за напрямком Google Cybersecurity Professional Certificate на платформі Coursera та за підтримки (2022-2023 UA Prometheus)  - успішно завершено.

Google Cybersecurity Professional Certificate - Tools of the Trade: Linux and SQL
 

Google Cybersecurity Professional Certificate - Connect and Protect: Networks and Network Security - Completed on July 23, 2023

Ось це 3-й курс "Connect and Protect: Networks and Network Security" за напрямком Google Cybersecurity Professional Certificate на платформі Coursera та за підтримки (2022-2023 UA Prometheus)  - успішно завершено.

Google Cybersecurity Professional Certificate - Connect and Protect: Networks and Network Security

2023-03-30

nginx як проксі для серверів pop3, imap. Додаткова авторизація через ssl client, та блокування у fail2ban.

Задача

Є задача підключити nginx як ssl proxy для служб електронної пошти, з перевіркою авторизації у nginx. Використання nginx дозволить використати сучасні ssl сертифікати, у випадку коли поштові сервіси не можуть це зробити за певних умов. Наприклад коли необхідна додаткова перевірка авторизації через сертифікати ssl клієнта

Додаткова авторизація через SSL client certificate.

Для підтримки авторизації через SSL client certificate сторона сервера посилає додатковий запит клієнту на те що очікує від нього особистого сертифікату. Запит описує чи має бути відновіть від клієнта з особистим сертифікатом клієнту обов'язковим чи за бажанням. Надалі клієнт надсилає, а сервер перевіряє отриманий особистий сертифікат клієнту чи був він виданий певним центром сертифікації (CA) та чи він не був відкликаний, або не слив термін придатності. На цьому перевірка закінчена, будь який дійсний сертифікат виданий центром сертифікації (CA) буде прийнятним для сервера.

2021-02-09

Нотатка: Забезпечити безпечне мережеве з'єднання між двома офісами і віддаленим користувачем через OpenVPN

Задача

Забезпечити безпечне мережеве з'єднання між двома офісами і віддаленим користувачем.

Умови

  • Головний офіс (Office 1) має білій IPv4 до якого можуть підключатися клієнти, локальна мережа 10.0.1.0/24.
  • Віддалений офіс (Office 2) має підключення за NAT маршрутизатором, тому до нього підключитися не можливо за IPv4, але він може підключатися будь куди, локальна мережа 10.1.2.0/24.
  • Віддалений користувач за звичай за домашнім WiFi маршрутизатором з IPv4 та NAT, до нього підключитися не можливо за IPv4, але він може підключатися будь куди.
  • Офіси мають в локальний мережі програмний сервер маршрутизатор pfSense.

Вирішення

  • Підключити віддалений офіс (Office 2) до головного офісу (Office 1), за допомогою технології VPN.
  • Підключити віддаленого користувача до головного офісу (Office 1) та забезпечити доступ до локальної мережі обох офісів Office 1 та Office 2.

За даних умов вибирається VPN підключення на базі сервера OpenVPN, через підключення UDP IPv4.

Схематично план підключення зображено на малюку.

OpenVPN client - OpenVPN client

2020-12-23

TrueNAS VM and PPPoE or pass all non-IP Ethernet frames on FreeBSD bridge

Базово, якщо створити віртуальну машину у TrueNAS/FreeNAS то дещо обмежено у користуванні: мережа підключається через bridge а він не пропускає не IP пакети. 

Це тому-що  bridge в TrueNAS/FreeNAS має  ввімкнуте налаштування:  net.link.bridge.pfill_onlyip=1, що обмежує проходження пакетів тільки протоколу IP, (set to 0 to unconditionally pass all non-IP Ethernet frames).

Тому встановимо net.link.bridge.pfill_onlyip=0 в системних налаштуваннях TrueNAS/FreeNAS:

 Sysctl: net.link.bridge.pfill_onlyip

Після перезавантаження віртуальна машина зможе отримати всі non-IP Ethernet пакети котрі недохідні для PPPoE, DHCP або іншого  сервера наприклад в pfSense.

За матеріалами:

2019-11-08

pfsense синхронізація pf таблиці snort2c на інший firewall

Є фаєрвол pfsense (192.168.0.2) з встановленим пакунком snort.
Snort аналізує проток даних що приходить від мережевого інтерфейсу котрий під'єднаний до mirror port мережевого комутатора HP 2920.
Програма Snort аналізує мережевий потік що йде від ISP. На основі правил, отриманих за підписками, snort блокує IP адреси заносячи їх до відповідної таблиці фаєрволу pf - 'snort2c'.
Так як для аналізу мережевого потоку використовується не основний фаєрвол, а інший сервер, то за таблицею 'snort2c' нічого реально не блокується.
Фаєрвол pfsense запущено у віртуальній машині сервера PROXMOX у приватній підмережі 192.168.0.0/24.
Діаграма підключень

Для реального блокування IP адрес (ipv4, ipv6), необхідно передати інформацію про заблоковані IP адреси на інший сервер з FreeBSD (192.168.0.1) додаючи адреси до локальної таблиці 'snort2c' фаєрволу pf, і також зупиняючи усі з'єднання що існували з цими IP адресами.

2019-05-03

pfSense email update notification about packages

Є задача отримувати на пошту результати періодичної перевірки застарілих застосунків що встановлені додатково до pfSense на кшталт squid, pfBlockerNG ...

Рішення:

1. Створюємо Email Report, додаємо опис, налаштовуємо періодичність, зберігаємо.
2. Повертаємося до редагування щойно створеного  Email Report, і додаємо команду: '/usr/local/sbin/pfSense-upgrade -c', зберігаємо.


Email Report pfSense-upgrade -c



За матеріалами:

2017-11-25

Нотатка. pfsense, перевірка таблиці pf коли пакунок pfBlockerNG не оновився

Використовуючи pfsense, я налаштував пакунок pfBlockerNG, для обмеження підключень до певних сервісів тільки з відомих країн.
Одного разу виявив що підключення стали заблоковані. Після аналізу з'ясував, що сервер перезавантажився і доступ не було надано так як таблиці доступу (IP_COUNTRY_ALLOWED_NG) були пусті, а оновлення у мене налаштовано один раз на добу.
Використання таблиці IP_COUNTRY_ALLOWED_NG у правилах 

Тому щоб подібне не повторювалося додав скрипт (check_ng_tables.sh) котрий перевіряє кількість записів у таблиці, в  випадку коли їх кількість менше чи критичне значення я форсую оновлення таблиць pfBlockerNG, і сповіщаю про це електронною поштою адміністратора.

/root/scripts/check_ng_tables.sh
#!/bin/sh

cntlines=$(/sbin/pfctl -t IP_COUNTRY_ALLOWED_NG -T show | wc -l)
if [ $cntlines -le 100 ]
then
    echo "count of pf table IP_COUNTRY_ALLOWED_NG is ($cntlines) less than 100, try reload pfblockerng.php"|/usr/local/bin/php /usr/local/bin/mail.php -s'[gw] IP_COUNTRY_ALLOWED_NG' postmaster@yourdomain.com
    /usr/local/bin/php /usr/local/www/pfblockerng/pfblockerng.php cron >> /var/log/pfblockerng/pfblockerng.log 2>&1
fi

Потім додав перевірку за розкладом кожні 5 хвилин.
Додав перевірку таблиці за розкладом cron

2017-11-20

Нотатка з керування PF firewall через pfctrl


https://gist.github.com/tracphil/4353170
# basic pfctl control
# ==
# Related: http://www.OpenBSD.org
# Last update: Tue Dec 28, 2004
# ==
# Note:
# this document is only provided as a basic overview
# for some common pfctl commands and is by no means
# a replacement for the pfctl and pf manual pages.

#### General PFCTL Commands ####
# pfctl -d disable packet-filtering
# pfctl -e enable packet-filtering
# pfctl -q run quiet
# pfctl -v -v run even more verbose

2016-07-14

Blocking ip by list of numbered dns names

Щось дістали записи у протокольних фалах від не бажаної пошти, вирішив заблокувати по IP.
Таким скриптом перебираю адреси, шукаю усі їх IP, колекціюю до файлу, сортую у пошуках унікальних, і передаю адресу скрипту з блокування адрес фаєрволом на певний час.

#!/bin/sh

echo "START"
for i in $(jot - 1 99); do
 hip="m$i.esputnik.com";
 ip=$(host -t a $hip | awk '{print $4}');
 for addr in $ip
  do
  echo "$addr" >> block_ip_loop.txt
 done
done

for addr in $(sort -u  block_ip_loop.txt).
do
 echo "blocking $addr"
 ./ipfw-blockip-by-hand.sh 9999999 $addr
done
rm  block_ip_loop.txt
echo "END" 

2014-02-25

PF firewall log alarm

Завдання.
Заносимо до таблиці pf  <attackers> значення адрес хто мав спроби підключитися до NTP служби у внутрішній мережі.
І таким чином блокуємо повний доступ до сервера і локальної мережі цим адресам.
Додатково використаний порт Simple Log Watcher

2011-10-23

Обмеження витоку корпоративної інформації через програму Skype

Э потреба запускати Skype з робочих місить користувачів але з обмеженням можливості витоку комерційної інформації.

Як одне з рушень запускаємо програму Skype  від імені іншого користувача:
1. Операційна система Windows
2. Створемо нового локального користувача, наприклад skype, з деяким відомим нам паролем. Э два варіанти:
2.1. Через звичайне додавання користувача з графічного інтерфейсу
2.2. Через  консоль cmd.exe:  net user /add skype someStrongPWD

2011-10-18

Планування правил firewall за часом у OpenWrt

Планування правил firewall за часом у OpenWrt не реалізовано графічним засобами.
У оригінальному програмному забезпечені роутера це робиться досить просто. А якщо користувач не дуже знайомий з особливостями Linux то можливо виникають питання.

Так є завдання - блокувати для IP адрес локальної мережі, за розкладом, вихід до мережі інтернет.
У роутері попередньо налаштований DHCP pool на видачу адрес у діапазоні  192.168.0.128 - 192.168.0.142.

firewall

Для блокування створимо теку для зберігання скриптів, наприклад /etc/fw-cron
і там файли вмикання привил child.1.sh та вимикання правил child.0.sh.
touch  /etc/fw-cron/child.1.sh
touch  /etc/fw-cron/child.0.sh
chmod +x /etc/fw-cron/child.*

Коли забув ти рідну мову, біднієш духом ти щодня...
When you forgot your native language you would become a poor at spirit every day ...

Д.Білоус / D.Bilous
Рабів до раю не пускають. Будь вільним!

ipv6 ready