EPELを使用してFail2banをインストールしyum install
てからバックアップするのを忘れた後、設定を混乱させました/etc/fail2ban
。
さて、元の設定を復元したいと思います。
最初に試してみましたが、既存の設定ファイルを上書きしないyum reinstall fail2ban
ので愚かでした。yum install
その後、別の場所で再試行しましたがmv
、古いブログの記事の中には元の設定が提供されます。そんな幸運はありません。アンインストールして再インストールしてみました。そんな幸運はありません。私は何か奇妙なシステム発見が進んでいると思い、欲求不満を感じ、私のディレクトリを編集しました。再インストール後もまだ機能しません。/etc/fail2ban
yum reinstall fail2ban
rpm -e
rm -rf
/etc/fail2ban.backup
最後に、RPMソースコードをダウンロードして解凍し、ディレクトリをrsync
編集するとconfig
ほぼ/etc/fail2ban
完了です。ただし、ログファイルを設定してsystemdと統合する方法にはまだいくつかの違いがあります。私は何かを一緒に投げたくないだけで元の構成を復元したいと思います。
YUMまたは他のツールを使用してRPMパッケージ(構成およびログファイルを含む)を強制的に新規インストールする方法はありますか?私は標準のLinode CentOS 7イメージを使用しています(重要な場合)。
答え1
私の考えでは、yumはあなたが望むことをするのはとても保守的だと思います。最良の結果を得るには、いくつかのrpmコマンドを使用する準備ができている必要があります。
これにより、rpm(ergo yum)が認識しているか、Fail2banパッケージに属するすべての信頼できるファイルが消去されます。
rpm -e --justdb --nodeps fail2ban
その後、/ etcファイルを削除/移動すると、yumが再インストールされます。
yum / rpmが設定ファイルで実行するすべての魔法はRPM仕様ファイルにあります。これには、プレフィックス "%config(noreplace)" とマクロ "%{_sysconfdir}" が含まれます。これはあなたの場合は「/ etc」を意味します。これらをすべて除外すると、rpmはすべてのデフォルト設定ファイルをインストールします。
%config(noreplace) %{_sysconfdir}/fail2ban
%config(noreplace) %{_sysconfdir}/logrotate.d/fail2ban
%config(noreplace) %{_sysconfdir}/fail2ban/jail.d/00-firewalld.conf
%config(noreplace) %{_sysconfdir}/fail2ban/action.d/hostsdeny.conf
%config(noreplace) %{_sysconfdir}/fail2ban/action.d/complain.conf
%config(noreplace) %{_sysconfdir}/fail2ban/action.d/mail-*.conf
%config(noreplace) %{_sysconfdir}/fail2ban/action.d/sendmail-*.conf
%config(noreplace) %{_sysconfdir}/fail2ban/action.d/shorewall.conf
%config(noreplace) %{_sysconfdir}/fail2ban/jail.d/00-systemd.conf
自分で確認してください:
curl 'http://pkgs.fedoraproject.org/cgit/rpms/fail2ban.git/plain/fail2ban.spec?h=epel7' |
grep '^%config(noreplace)'
答え2
私のシステムでは、fall2banは実際には複数のパッケージに分散しています。
- 失敗2禁止
- Fail2ban - ファイアウォール
- failure2ban-systemd
- 失敗2では、電子メールの送信は禁止されています。
- Fail2ban - サーバー
- システムPython
明らかに、上記の一部またはすべてがインストールされていない場合、構成ファイルは生成されません。yum autoremove
これを削除し、yum install fail2ban
元のプロファイルを復元します。
答え3
同じ問題を解決するには、次の手順を実行する必要があります。
sudo yum autoremove fail2ban -y
sudo yum autoremove fail2ban-server -y
sudo yum install fail2ban -y