3

Мне нужно открыть несколько разных портов (не в диапазонах) на машине CentOS.

Я знаю, как открыть порт с помощью firewall-cmd , но это мешает открывать как 40 и более портов.

Есть ли файл конфигурации, в котором я могу определить все открытые порты в одном месте? К сожалению, я ничего не нашел по этому поводу.

3 ответа3

5

Вы всегда можете сделать небольшой скрипт / однострочник:

#!/bin/bash
for i in 80 443 22 123 21 1337 31337
do
  firewall-cmd --zone=public --add-port=${i}/tcp
done
0

Если эти открытые порты находятся в диапазоне, например 2379-2385, вы можете сделать следующее:

firewall-cmd --zone=zone_name --add-port=2379-2385/tcp 

Чтобы сделать его постоянным, добавьте опцию --permanent в конце.

0

Вы можете определить сервис из xml-файла, содержащего все необходимые порты, добавить сервис из него и затем включить его. Создайте файл service.xml следующим образом:

<?xml version="1.0" encoding="utf-8"?>
 <service>
  <port port="port1" protocol="proto1"/>
  <port port="port2" protocol="proto2"/>
  <port port="port3" protocol="proto3"/>
  <port port="port4" protocol="proto4"/>
 </service>

Добавить новый сервис:

# firewall-offline-cmd --new-service-from-file=service.xml --name=My_Service

Перезагрузить firewall-cmd:

# firewall-cmd --reload

Затем добавьте свой сервис:

# firewall-cmd --add-service My_Service

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .