Как заблокировать трафик BitTorrent с помощью IPtables

0 Акции
0
0
0
0

IPTABLES — это приложение пользовательского пространства, которое позволяет системному администратору настраивать таблицы, предоставляемые брандмауэром ядра Linux (реализованным в виде различных модулей Netfilter), а также его хранимые цепочки и правила.

Настройте правила IPtables

Чтобы заблокировать трафик BitTorrent с помощью IPTABLES, вы можете отредактировать /etc/sysconfig/iptables (CentOS 7) и включить следующее:

vim /etc/sysconfig/iptables

.Сначала вам нужно добавить цепочку чуть выше первых правил.

:RH-Firewall-1-INPUT - [0:0]

 

Затем добавьте следующее над строкой COMMIT.

# Torrent ALGO Strings using Boyer-Moore
-A RH-Firewall-1-INPUT -m string --algo bm --string "BitTorrent" -j DROP
-A RH-Firewall-1-INPUT -m string --algo bm --string "BitTorrent protocol" -j DROP
-A RH-Firewall-1-INPUT -m string --algo bm --string "peer_id=" -j DROP
-A RH-Firewall-1-INPUT -m string --algo bm --string ".torrent" -j DROP
-A RH-Firewall-1-INPUT -m string --algo bm --string "announce.php?passkey=" -j DROP
-A RH-Firewall-1-INPUT -m string --algo bm --string "torrent" -j DROP
-A RH-Firewall-1-INPUT -m string --algo bm --string "announce" -j DROP
-A RH-Firewall-1-INPUT -m string --algo bm --string "info_hash" -j DROP
-A RH-Firewall-1-INPUT -m string --algo bm --string "/default.ida?" -j DROP
-A RH-Firewall-1-INPUT -m string --algo bm --string ".exe?/c+dir" -j DROP
-A RH-Firewall-1-INPUT -m string --algo bm --string ".exe?/c_tftp" -j DROP

# Torrent Keys
-A RH-Firewall-1-INPUT -m string --string "peer_id" --algo kmp -j DROP
-A RH-Firewall-1-INPUT -m string --string "BitTorrent" --algo kmp -j DROP
-A RH-Firewall-1-INPUT -m string --string "BitTorrent protocol" --algo kmp -j DROP
-A RH-Firewall-1-INPUT -m string --string "bittorrent-announce" --algo kmp -j DROP
-A RH-Firewall-1-INPUT -m string --string "announce.php?passkey=" --algo kmp -j DROP

# Distributed Hash Table (DHT) Keywords
-A RH-Firewall-1-INPUT -m string --string "find_node" --algo kmp -j DROP
-A RH-Firewall-1-INPUT -m string --string "info_hash" --algo kmp -j DROP
-A RH-Firewall-1-INPUT -m string --string "get_peers" --algo kmp -j DROP
-A RH-Firewall-1-INPUT -m string --string "announce" --algo kmp -j DROP
-A RH-Firewall-1-INPUT -m string --string "announce_peers" --algo kmp -j DROP

 

Перезапустить IPtables

/etc/init.d/iptables restart

Просмотр IPtables/Проверка правил

iptables -L

Пример вывода

Chain RH-Firewall-1-INPUT (0 references)
target     prot opt source               destination         
DROP       all  --  anywhere             anywhere            STRING match "BitTorrent" ALGO name bm TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "BitTorrent protocol" ALGO name bm TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "peer_id=" ALGO name bm TO 65535 
DROP       all  --  anywhere             anywhere            STRING match ".torrent" ALGO name bm TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "announce.php?passkey=" ALGO name bm TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "torrent" ALGO name bm TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "announce" ALGO name bm TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "info_hash" ALGO name bm TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "/default.ida?" ALGO name bm TO 65535 
DROP       all  --  anywhere             anywhere            STRING match ".exe?/c+dir" ALGO name bm TO 65535 
DROP       all  --  anywhere             anywhere            STRING match ".exe?/c_tftp" ALGO name bm TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "peer_id" ALGO name kmp TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "BitTorrent" ALGO name kmp TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "BitTorrent protocol" ALGO name kmp TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "bittorrent-announce" ALGO name kmp TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "announce.php?passkey=" ALGO name kmp TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "find_node" ALGO name kmp TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "info_hash" ALGO name kmp TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "get_peers" ALGO name kmp TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "announce" ALGO name kmp TO 65535 
DROP       all  --  anywhere             anywhere            STRING match "announce_peers" ALGO name kmp TO 65535

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *


Вам также может понравиться
Включение и отключение Cloudflare Universal SSL — практическое и безопасное руководство для администраторов серверов и разработчиков.

Включение и отключение Cloudflare Universal SSL — практическое и безопасное руководство для администраторов серверов и разработчиков.

В этой статье мы подробно и технически объясним, как включить и отключить Universal SSL в Cloudflare. Это руководство поможет вам максимально эффективно использовать этот сервис для защиты вашего сайта. Узнайте, как его включить и отключить, и ознакомьтесь с настройками безопасности.
Как работает DNSSEC и для чего он используется.

Как работает DNSSEC и для чего он используется.

DNSSEC — это протокол безопасности для аутентификации и обеспечения целостности данных DNS. В этой статье мы рассмотрим, как работает DNSSEC и что необходимо для его внедрения. Использование этой технологии позволит читателям значительно повысить безопасность своих сервисов.
Полное руководство по созданию SSH-ключей для серверов Amazon и облачных центров обработки данных.

Полное руководство по созданию SSH-ключей для серверов Amazon и облачных центров обработки данных.

В этой статье вы узнаете, как безопасно и профессионально генерировать SSH-ключи для защищенного входа на облачные серверы и в центры обработки данных Amazon. Вы изучите практические методы работы с Windows и Linux, а также лучшие практики обеспечения безопасности и управления серверами.
Пошаговое руководство по настройке и конфигурации OpenVPN в Ubuntu 22.04

Пошаговое руководство по настройке и конфигурации OpenVPN в Ubuntu 22.04

В этой статье вы узнаете, как установить и настроить сервер OpenVPN на Ubuntu 22.04. Руководство охватывает различные этапы, включая установку пакетов, настройку брандмауэра и советы по безопасности.
Установка и настройка прокси-сервера Shadowsocks-libev на Ubuntu 24.04

Установка и настройка прокси-сервера Shadowsocks-libev на Ubuntu 24.04

В этой статье вы узнаете, как установить и настроить Shadowsocks-libev на Ubuntu 24.04. Это руководство включает советы по безопасности и оптимизации, чтобы вы могли настроить надежный и эффективный прокси-сервер.
Разница между прямым и обратным прокси-сервером.

Разница между прямым и обратным прокси-сервером.

В этой статье мы рассмотрим ключевые различия между прямыми и обратными прокси-серверами. Понимание этих концепций поможет вам принимать более взвешенные решения при проектировании сетевой инфраструктуры. Статья включает определения, примеры применения и практические примеры конфигурации.