Ubuntu

Як заблокувати або розблокувати запити пінгу на Ubuntu Server 20.04 LTS

Як заблокувати або розблокувати запити пінгу на Ubuntu Server 20.04 LTS
Ping - це утиліта мережевого адміністрування, яка використовується для перевірки доступності системи в мережі IP. Ping також використовується для перевірки якості мережевого з'єднання шляхом моніторингу часу зворотного зв'язку та втрат пакетів. З іншого боку, зловмисники та хакери мережі також використовують ping для ідентифікації підмереж мережі для пошуку потенційних хостів або для здійснення атак ICMP-повінь. Тому хорошою практикою є блокування запитів пінгу на ваші сервери, щоб запобігти будь-яким атакам.

У цій статті йдеться про те, як заблокувати запити пінгу на Linux Server. Ми також опишемо, як розблокувати запити ping у випадку, якщо вам потрібно використовувати ping для системного адміністрування та усунення несправностей.

Передумови

Примітка: Обговорені тут команди були протестовані на Ubuntu 20.04 LTS.

Блокувати / розблокувати запити пінгу для сервера Linux

Ping працює, надсилаючи пакет ICMP (запит Echo) до системи призначення, а потім отримує відповідь ICMP-пакет (відповідь Echo). У Linux команда ping продовжує надсилати пакети ICMP, доки ви не зупините її, використовуючи Ctrl + C.

Для того, щоб блокувати запити пінгу, вам потрібно буде ігнорувати / блокувати ICMP-ехо-запити, які надсилаються на ваш сервер. Існує два способи, за допомогою яких ви можете блокувати / розблоковувати запити відлуння ICMP на сервер Linux.

Давайте розпочнемо.

Блокувати / розблокувати запити пінгу через параметри ядра

За допомогою параметрів ядра ви можете блокувати запити ping тимчасово або назавжди. Параметри ядра можна змінювати за допомогою sysctl команди, / sys / proc каталог і / etc / sysctl.конф. файл.

Тимчасові запити блокування / розблокування пінгу

Команда sysctl в Linux використовується для читання та запису параметрів ядра в / proc / sys каталог. За допомогою цієї команди ми можемо встановити параметри ядра для блокування / розблокування запитів пінгу. Параметр ядра чистий.ipv4.icmp_echo_ignore_all контролює, чи повинна система відповідати на запит відлуння ICMP. Значенням за замовчуванням є '0 ' що означає відповісти на запит ICMP.

Заблокувати запит пінгу

Щоб заблокувати запит ping, виконайте таку команду в терміналі:

$ sudo sysctl -w net.ipv4.icmp_echo_ignore_all = 1

Ця команда встановлює параметр ядра на '1', що означає ігнорувати всі запити ICMP.

Тепер усі запити на пінг до вашої системи будуть заблоковані, а відправник не отримає відповіді, як показано на скріншоті нижче.

Розблокувати запит Ping

Щоб розблокувати запити ping, знову запустіть ту саму команду, змінивши значення параметра на значення за замовчуванням '0'.

$ sudo sysctl -w net.ipv4.icmp_echo_ignore_all = 0

Крім того, ви можете заблокувати запити ping, змінивши значення параметра ядра в / proc / sys каталог за допомогою команди echo. Однак, щоб використовувати цей метод, вам потрібно буде запустити команду як root.

Для того, щоб заблокувати запит ping, спочатку перейдіть до кореневого облікового запису, використовуючи таку команду в терміналі:

$ su корінь

Коли буде запропоновано ввести пароль, введіть пароль для root.

Потім виконайте таку команду в терміналі:

$ echo 1> / proc / sys / net / ipv4 / icmp_echo_ignore_all

Щоб розблокувати запити пінгу, команда буде такою:

$ echo 0> / proc / sys / net / ipv4 / icmp_echo_ignore_all

Постійно блокувати запити пінгу

Параметри ядра також можна змінити за допомогою / etc / sysctl.конф файл. Цей файл дозволить вам назавжди блокувати запити пінгу на ваш сервер.

Заблокувати запит пінгу

Щоб заблокувати запит пінгу до вашої системи, відредагуйте / etc / sysctl.конф файл:

$ sudo nano / etc / sysctl.конф

Потім додайте наступний рядок у файл:

чистий.ipv4.icmp_echo_ignore_all = 1

Збережіть і закрийте файл.

Потім виконайте таку команду в Терміналі, щоб застосувати цю конфігурацію без перезавантаження:

$ sysctl -p

Розблокувати запит Ping

Щоб розблокувати запити пінгу, відредагуйте / etc / sysctl.конф файл:

$ sudo nano / etc / sysctl.конф

Потім змініть значення чистий.ipv4.icmp_echo_ignore_all до '0 ':

чистий.ipv4.icmp_echo_ignore_all = 0

Збережіть і закрийте файл.

Потім виконайте таку команду в Терміналі, щоб застосувати цю конфігурацію без перезавантаження:

$ sysctl -p

Блокування / розблокування запитів пінгу за допомогою iptables

Iptables - це утиліта брандмауера в Linux, яка контролює вхідний та вихідний трафік на основі певних правил. Він поставляється з попередньо встановленою системою Ubuntu. Якщо він відсутній у системі, ви можете встановити його за допомогою наступної команди в терміналі:

$ sudo apt встановити iptables
Заблокувати запит пінгу

Щоб заблокувати запити пінгу до вашої системи, введіть таку команду в терміналі:

$ sudo iptables -A INPUT -p icmp --icmp-type 8 -j REJECT

Де A прапор використовується для додавання правила в iptables та icmp-типу 8 - це номер типу ICMP, який використовується для запиту луни.

Вищевказана команда додасть у брандмауер правило, яке блокуватиме всі вхідні запити пінгу до вашої системи. Додаючи це правило, кожен, хто надсилає запит ping до вашої системи, побачить “Порт призначення недоступний”, Як показано на знімку екрана нижче.

Якщо ви не хочете, щоб це повідомлення відображалося, скористайтеся наступною командою заміни ВІДХОДИТИ з КРАПЛЕННЯ:

$ sudo iptables -A INPUT -p icmp --icmp-type 8 -j DROP

Тепер кожен, хто надсилає запит ping до вашої системи, побачить такий подібний результат:

Розблокувати запит Ping

Для того, щоб розблокувати запити пінгу на ваш сервер, введіть у терміналі таку команду:

$ sudo iptables -D INPUT -p icmp --icmp-type 8 -j REJECT

Де D прапор використовується для видалення правила в iptables та icmp-типу 8 - це номер типу ICMP, який використовується для запиту луни.

Для того, щоб зробити ці правила стійкими після перезавантаження системи, вам знадобиться iptables-стійкий пакет. Виконайте наведену нижче команду в Терміналі, щоб встановити iptables-persistent:

$ sudo apt install iptables-persistent

Вас попросять підтвердити, чи хочете ви продовжувати встановлення чи ні. Хіт р для продовження, після чого система розпочне встановлення, а після завершення буде готова до використання.

Після додавання або видалення будь-якого правила, виконайте такі команди в Терміналі, щоб пережити перезавантаження системи.

$ sudo netfilter - постійне збереження
Постійне перезавантаження $ sudo netfilter

Для того, щоб переглянути всі правила, додані до ваших iptables, виконайте таку команду в терміналі:

$ sudo iptables -L

Це все! У цій статті ми обговорили, як заблокувати / розблокувати запити пінгу до сервера Linux за допомогою параметрів ядра або за допомогою утиліти iptables. Сподіваюся, це допомагає!

Як встановити League of Legends на Ubuntu 14.04
Якщо ви шанувальник League of Legends, то це можливість для вас тестувати League of Legends. Зверніть увагу, що LOL підтримується на PlayOnLinux, якщо...
Встановіть останню стратегічну гру OpenRA на Ubuntu Linux
OpenRA - це ігровий движок Libre / Free Real Time Strategy, який відтворює ранні ігри Вествуда, такі як класичний Command & Conquer: Red Alert. Пошире...
Встановіть найновіший емулятор Dolphin для Gamecube & Wii на Linux
Емулятор Dolphin дозволяє грати у вибрані вами ігри Gamecube та Wii на персональних комп’ютерах Linux (ПК). Будучи вільно доступним і відкритим ігров...