Por que você não está adicionando explicitamente no arquivo fail2ban
service que deve começar depois de shorewall
com After=shorewall.service
?
Executando Debian unstable com shorewall para o firewall e fail2ban. Estava recebendo "shorewall não executando erros" após a inicialização no log do fail2ban, mas isso foi corrigido com
After=network.target
em /lib/systemd/system/fail2ban.service. No entanto, ainda recebo esses erros no desligamento ou reinicialização. Como eu digo ao shorewall para esperar o desligamento até que o fail2ban seja feito?
Por que você não está adicionando explicitamente no arquivo fail2ban
service que deve começar depois de shorewall
com After=shorewall.service
?
Eu procurei a resposta para isso por um bom tempo. @Munir (nos comentários sobre a primeira resposta) praticamente tem isso. Para certificar-se de que as edições suportam atualizações de pacotes, não edite /lib/systemd/system/fail2ban.service, em vez disso, use o mecanismo de substituição do systemd. Por exemplo. crie um arquivo /etc/systemd/system/fail2ban.service.d/override.conf. Nesse arquivo, coloque
[Unit]
Requires=shorewall.service
After=shorewall.service
Isso faz com que o shorewall.service seja adicionado ao Requer e ao Depois (além do que pode ser especificado em /lib/systemd/system/fail2ban.service) e não será sobrescrito no caso do fail2ban sendo atualizado.
No meu caso, eu já tinha um repositório reprepro privado configurado, então criei um pacote que insere esse arquivo (e também adiciona minha configuração padrão do fail2ban em /etc/fail2ban/jail.d/local.conf) e uma dependência de pacote em fail2ban e shorewall. Ligue para o pacote f2b-shorewall. Tudo o que tenho que fazer para colocar isso em funcionamento em um servidor é instalar o f2b-shorewall, e ele puxará o fail2ban e o shorewall, com a configuração padrão do fail2ban jail, deixando apenas a necessidade de configurar o shorewall (que normalmente é diferente para cada servidor, de qualquer forma).