Как запустить "UFW" без интерактивного режима?
Я хочу бежать ufw
Несложный брандмауэр из скрипта Python, но обычно он работает в интерактивном режиме. Пример:
subprocess.check_output(["ufw", "enable"])
Имеет следующий вывод:
'Command may disrupt existing ssh connections. Proceed with operation (y|n)? Aborted'
Есть ли способ запустить ufw
без интерактивного режима?
2 ответа
Решение
Использование
ufw --force enable
Возможно, вы захотите взглянуть на исходный код Gufw, он написан на Python. По крайней мере, в Ubuntu 14.10 звонки на ufw
находятся в файле gufw/model/ufw_backend.py
,
Вы можете скачать исходный код, используя
apt-get source gufw
Несмотря на то, что это старый вопрос, это может быть полезно для других. Можно использовать--force
возможность удаления правил. например:
# ufw --force delete 1
Я написал этот фрагмент кода, чтобы удалить все 20 главных правил:
# for i in `seq 20`; do ufw --force delete 1; done