Практично всі користувачі дистрибутива CentOS 7 встановлюють в систему різні засоби, для коректної роботи яких необхідно відкривати порти певних номерів. Це потрібно для забезпечення нормального з'єднання з вузлами і безпечного обміну інформацією. Здійснюється поставлена ​​задача шляхом зміни правил брандмауера. Звичайно, кожен користувач може використовувати найрізноманітніші брандмауери, однак стандартним є iptables. Саме на його прикладі ми і пропонуємо відкрити порти, дотримуючись наведених далі інструкцій.

Відкриваємо порти в CentOS 7

Відкриття портів - завдання нескладне, адже для цього доведеться ввести лише кілька команд в консоль. Однак якщо ви спочатку не виробляли додаткових налаштувань з фаєрволом або використовуєте стороннє засіб, доведеться додатково змінити важливі параметри. Тому ми розділили нашу статтю на етапи, щоб початківцям юзерам було простіше розібратися з кожним кроком, а зараз почнемо з безпосередньою інсталяції iptables в CentOS 7.

Крок 1: Інсталяція або оновлення iptables

Як вже було сказано вище, iptables в CentOS 7 виступає в якості брандмауера за замовчуванням. Якщо вручну не було вироблено ніяких змін, можна сміливо пропускати цей крок, виконавши тільки останній етап з інсталяцією утиліт брандмауера. У разі необхідності перевірки оновлень або повторної установки даного інструменту радимо скористатися наступним керівництвом.

  1. Всі дії, описувані сьогодні, будуть проводитися в «Терміналі», Тому все починається з його запуску. Використовуйте для цього гарячу клавішу Ctrl + Alt + T або значок, для якого створено розділ «Вибране» в меню додатків.
  2. Запуск терміналу для установки iptables в CentOS 7 при відкритті портів

  3. Тут введіть команду sudo yum install iptables, А потім натисніть на кнопку Enter.
  4. Введення команди для інсталяції утиліти iptables в CentOS 7 перед відкриттям портів

  5. Для підтвердження цієї команди буде потрібно вказати пароль користувача root. Враховуйте, що при такому типі написання Зауважте, що ви не відображаються.
  6. Підтвердження установки iptables в CentOS 7 перед відкриттям портів

  7. Ви будете повідомлені про те, що інсталяція або оновлення успішно проведені. Якщо ж в операційну систему і так додана остання версія iptables, На екрані з'явиться рядок «Виконувати нічого».
  8. Інформація про успішну інсталяції утиліти iptables в CentOS 7

  9. Завершіть цей крок командою sudo yum -y install iptables-services. Це запустить інсталяцію необхідних сервісів.
  10. Команда для інсталяції допоміжних утиліт для iptables в CentOS 7

  11. Можна переходити до наступного етапу, якщо на екрані з'явилося повідомлення про успішне додаванні компонентів.
  12. Успішна інсталяція допоміжних утиліт для iptables в CentOS 7

Крок 2: Скидання стандартних правил брандмауера

Якщо раніше системним адміністратором або користувачем не проводилася настройка iptables, Стандартні настройки слід скинути, щоб в майбутньому не виникло проблем з сумісністю правил. Додатково буде потрібно вказати і стандартні правила, забезпечивши коректність виконання вхідних і вихідних з'єднань. Все це відбувається так:

  1. Введіть в консолі команду iptables -L -v -n, Щоб переглянути список поточних параметрів.
  2. Команда для перегляду стандартних правил утиліти iptables в CentOS 7

  3. Якщо вони вас не влаштовують, значить доведеться здійснювати скидання і ручну конфігурацію.
  4. Відображення стандартних правил утиліти iptables в CentOS 7

  5. Видалення існуючих правил виконується за допомогою всього одного рядка sudo iptables -F.
  6. Команда для скидання всіх правил команди iptables в CentOS 7

  7. Далі дозвольте все вводяться дані сервера, вставивши sudo iptables -A INPUT -i lo -j ACCEPT.
  8. Команда для створення правил на вхідні з'єднання iptables в CentOS 7

  9. Для вихідних з'єднань може бути застосована практично така ж команда: sudo iptables -A OUTPUT -o lo -j ACCEPT.
  10. Команда для створення правил на вихідні з'єднання iptables в CentOS 7

  11. Рекомендується обмежити нові з'єднання і вирішити вже існуючі, щоб забезпечити безпеку і налагодити роботу зазначених раніше правил. Відбувається це через sudo iptables -A INPUT -m state --state ESTABLISHED, RELATED -j ACCEPT.
  12. Команда для забезпечення безпеки з'єднань iptables в CentOS 7

Всі подальші настройки розглянутої утиліти здійснюються користувачем вручну, включаючи і відкриття портів. Про останню темі ми поговоримо в наступних кроках, а розширена конфігурація не входить в рамки сьогоднішнього матеріалу. Замість цього рекомендуємо ознайомитися зі спеціальним навчальним матеріалом з даної теми, скориставшись розташованої нижче посиланням.

Докладніше: Налаштування iptables в CentOS 7

Крок 3: Відключення FirewallD

До цього кроку слід придивитися тим користувачам, хто раніше встановлював FirewallD або він був доданий автоматично.Під час налаштування портів через iptables даний інструмент може заважати коректному виконанню правил, тому його потрібно деактивувати.

  1. Для початку зупиніть виконання служби через sudo systemctl stop firewalld.
  2. Команда для відключення захисника при налаштуванні iptables в CentOS 7

  3. Далі зробіть повне відключення, скориставшись командою sudo systemctl disable firewalld.
  4. Команда для деактивації захисника при налаштуванні iptables в CentOS 7

  5. Ви отримаєте інформацію про те, що символічні посилання були видалені, отже, FirewallD з цього моменту не працює.
  6. Повідомлення про успішне відключення FirewallD при налаштуванні iptables в CentOS 7

Якщо ви хочете вручну видалити папки, що зберігають в собі настройки FirewallD, пропустивши перераховані вище команди, вставте в «Термінал» по черзі такі рядки і активуйте їх.

rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
rm '/etc/systemd/system/basic.target.wants/firewalld.service'

В майбутньому будь-якому користувачеві може знадобитися активація і подальша настройка FirewallD, особливо коли доводиться працювати з різними веб-серверами і утилітами. Ми пропонуємо зробити це, використовуючи наведене далі керівництво.

Докладніше: Налаштування Firewall в CentOS 7

Крок 4: Відкриття портів через iptables

Прийшов час провести основна дія, чому і присвячена сьогоднішня стаття. Вище ми виконали абсолютно всі підготовчі роботи, щоб зараз відкрити порти в CentOS 7. Тепер з цим не повинно виникнути ніяких проблем, тому можна вводити такі команди.

  1. В обов'язковому порядку додайте міжмережевий екран в автозавантаження, щоб не запускати його постійно вручну. У цьому допоможе команда sudo systemctl enable iptables.
  2. Команда для додавання сервісів iptables в CentOS 7 в автозавантаження

  3. Ви будете повідомлені про створення символічного посилання.
  4. Інформація про додано успішно iptables в CentOS 7 в автозавантаження

  5. Активуйте постійні права суперкористувача, ввівши su, Щоб для кожної команди цієї термінальної сесії не потрібно було приписувати sudo.
  6. Використання команди для постійних прав суперкористувача при налаштуванні

  7. Підтвердіть це дія, написавши свій пароль.
  8. Введення пароля для активації постійних прав суперкористувача при налаштуванні

  9. Відкрийте порт через команду iptables -I INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT, де 22 замініть на необхідне число.
  10. Введення команди для відкриття порту через iptables в CentOS 7

  11. Відразу ж можна відкрити і наступний порт, наприклад, під номером 25 (SMTP-сервер). Для цього введіть iptables -I INPUT -p tcp --dport 25 -m state --state NEW -j ACCEPT.
  12. Друга команда для відкриття портів через iptables в CentOS 7

  13. Збережіть всі зміни, вставивши рядок service iptables save.
  14. Збереження змін при відкритті портів через iptables в CentOS 7

  15. Ви будете повідомлені про те, що конфігурація успішно застосована.
  16. Інформація про успішне збереження змін у налаштуваннях iptables в CentOS 7

  17. Перезавантажте міжмережевий екран, щоб всі зміни вступили в силу. Здійснюється це через команду systemctl restart iptables.
  18. Перезапуск iptables в CentOS 7 для застосування змін

  19. В кінці ми пропонуємо використовувати sudo iptables -nvL, Щоб вивчити всі відкриті порти.
  20. Перегляд стану iptables в CentOS 7 після відкриття портів

У цій статті ви дізналися все про відкриття портів в CentOS 7. Як бачите, це не займе багато часу, а всі зміни будуть застосовані відразу ж після перезавантаження сервісів. Використовуйте розглянуті вище команди, змінюючи тільки номери портів, щоб все пройшло успішно.