Linux サーバー上で実行されている Jenkins にアクセスできるスーパーユーザーは、config.xml ファイルからセキュリティ認証を簡単に無効にし、ログインしてコンソールから機密パスワードを復号化することもできます。
アプリケーション開発者は、アプリケーションがホストされているサーバー管理者から Jenkins (または任意のソフトウェア) をどのように保護できるでしょうか。
スーパーユーザーから保護するためにファイルへの変更を監視する方法はありますか?
答え1
簡単に答えると、できません。コンソール、物理ディスクなどにアクセスできます。
長い答え: これらのマシンの管理者のアクセスを制限し、より詳細なポリシーと監査を行う必要があります。これは何を意味しますか? NDA に署名した管理者にのみルートアクセスを許可し、一部の管理者には sudo 経由でマシン上の特定の操作のみを許可し、リモートマシンへのすべてのアクセスをログに記録します。インストールされるものを制限します。とsyslog
を使用してファイルアクセスを監査できます。ext4 では、 でファイルを不変にすることができます。auditd
auditctl
chattr +i <filename>
もう 1 つの選択肢は、非常に軽量で、アプリケーションのみを備え、SSH またはコンソール アクセスのない OS を使用することです。