1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
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.
|