diff options
| author | vlapa <vlapa@ya.ru> | 2026-06-13 20:33:26 +0300 |
|---|---|---|
| committer | vlapa <vlapa@ya.ru> | 2026-06-13 20:33:26 +0300 |
| commit | e5abc1fe99340b979b18864d978179f71fe8f5c5 (patch) | |
| tree | 98fd0ad7c6d0744894d6e74e446daacd9e6dd1b5 /LINUX/IPTABLES, NFTABLES.md | |
First
Diffstat (limited to 'LINUX/IPTABLES, NFTABLES.md')
| -rw-r--r-- | LINUX/IPTABLES, NFTABLES.md | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/LINUX/IPTABLES, NFTABLES.md b/LINUX/IPTABLES, NFTABLES.md new file mode 100644 index 0000000..2ab407c --- /dev/null +++ b/LINUX/IPTABLES, NFTABLES.md @@ -0,0 +1,101 @@ +**iptables** — это утилита командной строки для межсетевого экрана, которая позволяет настраивать правила управления трафиком в Linux. + +## Установка iptables + +Большинство дистрибутивов Linux включают iptables по умолчанию. Чтобы установить или обновить его: + +- **Debian/Ubuntu**: + +`sudo apt update sudo apt install iptables + +## Основные команды iptables + +- **Просмотреть текущие правила**: +`sudo iptables -L -v -n + +- **Разрешить входящий трафик SSH**: +`sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT + +- **Заблокировать IP-адрес**: +`sudo iptables -A INPUT -s [IP-адрес] -j DROP + +## **Сохранить правила**: + +- **Debian/Ubuntu:** +`sudo iptables-save > /etc/iptables/rules.v4 + +## Пример конфигурации: основные правила брандмауэра + +Чтобы настроить простой брандмауэр с помощью iptables, вы можете определить правила, разрешающие трафик SSH и HTTP, блокируя весь остальной входящий трафик: + +```sh +sudo iptables -P INPUT DROP +sudo iptables -P FORWARD DROP +sudo iptables -P OUTPUT ACCEPT +sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT +sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT +sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT +sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT +``` + +### Практические советы по настройке брандмауэра Linux + +1. **Всегда используйте политику сброса по умолчанию**: установите политику по умолчанию для сброса всего входящего трафика, разрешая только доверенные соединения. +2. **Разрешайте только определенные службы**: избегайте широких разрешений и указывайте только необходимые службы (например, SSH, HTTP). +3. **Ограничьте доступ по SSH**: ограничьте доступ по SSH, разрешив только доверенные IP-адреса и отключив вход с правами root. +4. **Используйте ведение журнала с осторожностью**: включите ведение журнала для отклоненных подключений, но ограничьте частоту, чтобы избежать переполнения журналов. + + +# nftables: будущее межсетевых экранов Linux + +**nftables** — это современная замена **iptables** , которая обеспечивает повышение производительности, более простой синтаксис и большую гибкость. Она работает с **netfilter** и предназначена для объединения функций брандмауэра, NAT и искажения пакетов. + +## Установка nftables + +В большинстве последних дистрибутивов Linux nftables предустановлен. Вы можете установить или обновить его с помощью: + +- **Debian/Ubuntu:** +`sudo apt install nftables + +## Базовые команды nftables + +- **Запуск и включение nftables**: +`sudo systemctl start nftables +`sudo systemctl enable nftables + +- **Просмотр активных правил:** +`sudo nft list ruleset + +- **Сброс всех правил**: +`sudo nft flush ruleset + +## Пример конфигурации nftables + +Вот как можно настроить nftables для разрешения трафика SSH, HTTP и HTTPS: + +1. **Откройте файл конфигурации nftables**: +`sudo nano /etc/nftables.conf + +**2. Добавьте набор правил**: + +```sh +table inet filter { + chain input { + type filter hook input priority 0; policy drop; + ct state established,related accept + tcp dport { 22, 80, 443 } accept + } + chain forward { + type filter hook forward priority 0; policy drop; + } + chain output { + type filter hook output priority 0; policy accept; + } +} +``` + +**3. Загрузите наборы правил**: + +`sudo nft -f /etc/nftables.conf + +Эта конфигурация по умолчанию сбрасывает все входящие соединения, но разрешает установленные соединения и новые соединения через порты SSH, HTTP и HTTPS.
\ No newline at end of file |
