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)'