---
# System prepended metadata

title: Практическая iptables

---

# Практическая iptables


Поменяли порт у SSH:
![](https://i.imgur.com/vmI0C2m.png)

Смотрим, что порт прослушивается после перезагрузки:
![](https://i.imgur.com/CqtnCI0.png)

И что при подключении 22 не доступен, однако 2200 доступен:
![](https://i.imgur.com/RqQqYDX.png)

iptables установлен в ubuntu:
![](https://i.imgur.com/KVBJQag.png)
:::info
в пунктах 4-6 допущена ошибка, едйствие LOG должно быть применено ПЕРЕД DROP.
:::
4. Запретили пинг с записью в файл двумя способами:
![](https://i.imgur.com/vw0tHFb.png)
```
iptables - A INPUT -s 0/0 -p icmp -j LOG
iptables - A INPUT -s 0/0 -p icmp -j DROP
iptables - A INPUT -s 0/0 -p icmp --icmp-type echo-request -j LOG
iptables - A INPUT -s 0/0 -p icmp --icmp-type echo-request -j DROP
iptables -A INPUT -j ACCEPT
iptables -A OUTPUT -j ACCEPT
```


5. Запрещаем SSH на наш сервер по destination порту и делаем запись в лог файл:
![](https://i.imgur.com/5X3c2HF.png)

```
iptables -A INPUT -p tcp --dport 2200 -j LOG
iptables -A INPUT -p tcp --dport 2200 -j DROP
iptables -A INPUT -p udp --dport 2200 -j LOG
iptables -A INPUT -p udp --dport 2200 -j DROP
iptables -A INPUT -j ACCEPT
iptables -A OUTPUT -j ACCEPT
```

6. Запрещаем весь трафик и логируем:
![](https://i.imgur.com/F6raQK7.png)
```
iptables -A INPUT -j LOG
iptables -A INPUT -j DROP
iptables -A OUTPUT -j LOG
iptables -A OUTPUT -j DROP

```

7. Разрешаем доступ по SSH, после чего запрещаем весь трафик
![](https://i.imgur.com/xQzCDTv.png)
![](https://i.imgur.com/KiWyiqE.png)

```
iptables -A INPUT -p tcp --dport 2200 -j LOG
iptables -A INPUT -p tcp --dport 2200 -j ACCEPT
iptables -A INPUT -p udp --dport 2200 -j LOG
iptables -A INPUT -p udp --dport 2200 -j ACCEPT
iptables -A INPUT -j LOG
iptables -A INPUT -j DROP
iptables -A OUTPUT -j LOG
iptables -A OUTPUT -j DROP
```
8. Заблокировали соединения с одного хоста:
![](https://i.imgur.com/psEegyu.png)
```
iptables -A INPUT -s 192.168.1.1/24 -p tcp -j LOG
iptables -A INPUT -s 192.168.1.1/24 -p udp -j LOG
iptables -A INPUT -s 192.168.1.1/24 -p icmp -j LOG
iptables -A INPUT -s 192.168.1.1/24 -p tcp -j DROP
iptables -A INPUT -s 192.168.1.1/24 -p udp -j DROP
iptables -A INPUT -s 192.168.1.1/24 -p icmp -j DROP
iptables -A INPUT -j ACCEPT
iptables -A OUTPUT -j ACCEPT
```

9. Запрещаем весь трафик, кроме подключения по ssh с ip-адреса 192.168.232.137
![](https://i.imgur.com/zdCdLt1.png)
```
iptables -A INPUT -s 192.168.232.137/24 -p tcp --dport 2200 -j LOG
iptables -A INPUT -s 192.168.232.137/24 -p udp --dport 2200 -j LOG
iptables -A INPUT -s 192.168.232.137/24 -p tcp --dport 2200 -j ACCEPT
iptables -A INPUT -s 192.168.232.137/24 -p udp --dport 2200 -j ACCEPT
iptables -A INPUT -j LOG
iptables -A INPUT -j DROP
iptables -A OUTPUT -j LOG
iptables -A OUTPUT -j DROP
```
Проверяем:
Подключились с используемого ip-адреса по ssh:
![](https://i.imgur.com/3tjsgQd.png)
А теперь пробуем подключаться с другого хоста:
![](https://i.imgur.com/OkLuQH6.png)

10. Блокируем трафик от диапазона адресов 192.168.232.0/24
![](https://i.imgur.com/uzH9lDz.png)

```
iptables -A INPUT -s 192.168.232.0/24 -p tcp -j LOG
iptables -A INPUT -s 192.168.232.0/24 -p udp -j LOG
iptables -A INPUT -s 192.168.232.0/24 -p icmp -j LOG
iptables -A INPUT -s 192.168.232.0/24 -p icmp -j DROP
iptables -A INPUT -s 192.168.232.0/24 -p tcp -j DROP
iptables -A INPUT -s 192.168.232.0/24 -p udp -j DROP
iptables -A INPUT -j ACCEPT
iptables -A OUTPUT -j ACCEPT
```

11. Блокируем диапазон портов от 255.255.0.0:
![](https://i.imgur.com/IuhbVo8.png)
```
iptables -A INPUT -s 255.255.0.0/16 -p tcp --dport 3000:4000 -j LOG
iptables -A INPUT -s 255.255.0.0/16 -p tcp --dport 3000:4000 -j LOG
iptables -A INPUT -s 255.255.0.0/16 -p udp --dport 3000:4000 -j DROP
iptables -A INPUT -s 255.255.0.0/16 -p tcp --dport 3000:4000 -j DROP
iptables -A INPUT -j ACCEPT
iptables -A OUTPUT -j ACCEPT
```
12. Проброс портов
![](https://i.imgur.com/pdNId4G.png)
```
iptables -A FORWARD -i ens33 -o ens33 -j ACCEPT
iptables -t nat -A POSTROUTING -p tcp --dport 1000:5000 --dst 192.168.232.137 -j SNAT --to-source 192.168.232.156
iptables -t nat -A PREROUTING -p tcp --dport 1000:5000 -d 192.168.232.156/24 -j DNAT --to-destination 192.168.232.137
```


