Вступ
Як вебмайстер, ви, зрештою, матимете справу з образливим користувачем (або кількома). Це більш-менш неминуча перешкода для ведення бізнесу в Інтернеті. Можливо, вони заповнюють ваш розділ коментарів спамом, заповнюють ваш сервер запитами або турбують інших ваших читачів. У будь-якому випадку, ви хочете, щоб вони зникли, перш ніж вони завдадуть вам більше головного болю.
Не хвилюйтесь За умови, що ви розумієте, як працює iptables – це насправді досить легко зробити.
Я розповім вам, як заблокувати IP-адресу, а також розповім про кілька команд, які ви захочете використовувати.
Розпочнімо. Ваш перший крок — увійти на вебсервер через консоль керування або через безпечне з’єднання. Переконайтеся, що у вас є root-доступ – він вам знадобиться.
Як заблокувати IP-адресу або діапазон IP
Ми почнемо з кількох основних команд.
По-перше, ось як запобігти певній IP-адресі отримати доступ до вашого сервера за допомогою команди iptables block ip. Замініть [IP] IP-адресою, яку ви хочете заблокувати:
iptables -A INPUT -s [IP] -j DROP
Тим часом якщо ви хочете заблокувати певний діапазон IP-адрес; введіть наступне, замінивши [START] і [END] на кінцеві точки діапазону (через Chron ):
iptables -A INPUT -m iprange –src-range [START]-[END] -j DROP
Ви також можете заблокувати доступ до свого сайту для цілої підмережі
iptables -i eth1 -A INPUT -s [АДРЕСА ПІДМЕРЕЖІ] -j DROP
Блокування підключення на певному інтерфейсі
Тепер припустимо, що ви хочете лише заблокувати з’єднання через певний інтерфейс. У цьому випадку команда буде наступною:
iptables -A INPUT -i [Ім'я інтерфейсу] -s [IP] -j DROP
Ви можете додати + до кінця назви інтерфейсу, щоб заблокувати будь-який інтерфейс, назва якого починається з введених вами символів
Як заблокувати порт
Якщо ви хочете заблокувати з’єднання на певному порту, скористайтеся такою командою iptables block port:
iptables -A INPUT -s 65.55.44.100 -p tcp –destination-port 25 -j DROP
Перегляд IP-блоків
Якщо в будь-який час ви захочете переглянути свій список заблокованих IP-адрес, ви можете скористатися будь-яким з них
iptables -L -v або /sbin/iptables -L INPUT -v
Видалення IP-блокування
Переглядаючи цей список, ви можете видалити певні записи за допомогою команди відкрити порт iptables або команди дозволити порт iptables. Використовуйте такі команди в порядку:
iptables -L INPUT -n –line-numbersiptables -D INPUT [LINE]iptables -L INPUT -v -n
Звичайно, якщо ви знаєте, якого конкретного запису ви хочете позбутися, наступний синтаксис працюватиме так само добре, використовуючи команду iptables drop ip:
iptables -D INPUT -s 1.2.3.4 -j DROP
Припускаючи, що ви бажаєте реєструвати видалену інформацію про адресу, ви також можете ввімкнути ведення журналу ядра за допомогою:
iptables -i eth1 -A INPUT -s [IP/SUBNET] -j LOG –log-prefix “IP DROP SPOOF A:
Пошук заблокованих IP-адрес
Далі ви можете шукати заблоковані IP-адреси за допомогою:
iptables -L INPUT -v -n | grep [IP]
Збереження змін
Нарешті, щоб зберегти зміни, які ви внесли до свого списку блокувань iptables у CENTOS, RHEL або Fedora, вам потрібно буде використати команду
service iptables save
Додаткові команди, які можна використовувати для блокування трафіку
Наведені вище команди утворюють основну структуру блокування IP-адрес в iptables, але вони не зовсім вичерпні. Якщо ви дійсно хочете відключити від себе IP-адреси, є кілька додаткових команд, які ви повинні знати. Вони такі:
- -OUTPUT: запобігає з’єднанню TCP із сервером і блокує вихідний трафік. Синтаксис
iptables -A OUTPUT -s [IP] -j DROP
- -FORWARD: блокує весь трафік для пересилання. Синтаксис
iptables -A FORWARD -s [IP] -j DROP
- tcp: як і вихід, блокує TCP-з’єднання. Синтаксис
iptables -A INPUT -p tcp -s [IP] -j DROP
- icmp: Блокує зондування портів. Синтаксис:
-A INPUT -p icmp -s [IP] -j DROP
Створення вашого списку блокувань iptables
Тепер, коли ви ознайомилися з основами iptables, ви можете створити свій власний чорний список, виконавши ці команди:
1. Спочатку скиньте всі старі правила за замовчуванням і чинні правила за допомогою команди flush:
iptables -F
2. Далі змініть стандартну політику ланцюга за допомогою такого набору команд:
iptables -P INPUT DROPiptables -P FORWARD DROPiptables -P OUTPUT DROP
3. Налаштуйте IP-блокування, як вважаєте за потрібне, використовуючи команди з попереднього розділу.
Якщо помітили помилки чи неточності, будь ласка, залишіть коментар чи напишіть листа на поштову адресу [email protected]