Как включить firewalld без нарушения работы приложения?

Cambiaría el nombre del directorio y lo movería dentro de uno nuevo, aproximadamente como lo hizo usted. Para insertar var1/entre fooy su contenido:

d=$(mktemp -d./tmp.XXXXXX)
mkdir "$d"; mv foo "$d"/var1; mv "$d" foo

Eso funciona para el contenido del directorio. Sin embargo, es un poco más complicado si también consideramos el propietario, los bits de acceso, las ACL, los atributos extendidos, el número de inodo, etc. del directorio.

Si queremos mantener foointacto, entonces necesitaremos crear var1de nuevo y mover los contenidos. Uso de bash:

cd foo
mkdir var1
shopt -s dotglob    # to get any dotfiles
mv * var1           # ignore the error about moving var1 to itself

O, para evitar el error, utiliceextglob:

shopt -s extglob 
mv !(var1) var1

Tenga en cuenta que $(ls | grep -v)no incluirá archivos de puntos, y no funcionará si tiene nombres de archivo con espacios en blanco o líneas nuevas (por dos razones diferentes ).

2
24.06.2019, 15:34
2 ответа

Легко. Просто добавьте параметр --permanentко всем своим правилам, например.

firewall-cmd --zone=trusted --add-port=1234/tcp --permanent

Это зарегистрирует правила в постоянной конфигурации, но не применит их, пока вы не выполните команду

firewall-cmd --reload

Кстати, это рекомендуемый способ работы firewalld; если вы не используете опцию --permanent, изменения будут применены временно и будут удалены при следующей перезагрузке или перезапуске брандмауэра.

0
27.01.2020, 22:08

Перед запуском службы firewalldнеобходимо указать параметры через конфигурационные файлы. Рекомендую вам создать файл правил для каждого сервиса (GlusterFS, Pacemaker... )и прописать в файле все необходимые вам порты. Например, (для кардиостимулятора получено из Настройка брандмауэра iptables для разрешения компонентов кластера)/etc/firewalld/services/pacemaker.xml:

<?xml version="1.0" encoding="utf-8"?>
<service>
  <short>Pacemaker</short>
  <description>Pacemaker service</description>
  <port protocol="tcp" port="2224"/>
  <port protocol="tcp" port="3121"/>
  <port protocol="tcp" port="5403"/>
  <port protocol="udp" port="5404"/>
  <port protocol="udp" port="5405"/>
  <port protocol="tcp" port="21064"/>
</service>

Дополнительную информацию с примерами вы можете получить из Как настроить брандмауэр с помощью FirewallD в CentOS 7 .

После этого вы можете начать firewalldбезопасно.

Если вы боитесь сломать firewalldредактирование файлов зон вручную, вы можете протестировать их в виртуальной среде, прежде чем применять в рабочей системе.

2
27.01.2020, 22:08

Теги

Похожие вопросы