安全なサーバーを新しくセットアップする方法については、多くのチュートリアルがあります。
しかし、誰かが以前にセットアップしたサーバーを管理する必要があり、その構成についてまだよく知らない場合はどうなりますか?
「通常の容疑者」を自動的にチェックするツールや、明らかなセキュリティホールが存在しないことを確認するために実行できるチェックリストはありますか?脆弱性をリモートでチェックするWebサービスはありますか?
安全なサーバーを新しくセットアップする方法については、多くのチュートリアルがあります。
しかし、誰かが以前にセットアップしたサーバーを管理する必要があり、その構成についてまだよく知らない場合はどうなりますか?
「通常の容疑者」を自動的にチェックするツールや、明らかなセキュリティホールが存在しないことを確認するために実行できるチェックリストはありますか?脆弱性をリモートでチェックするWebサービスはありますか?
回答:
Nessusをダウンロードして、ネットワークチェックを実行します。リモートで悪用可能な脆弱性について説明します。
また、Ossecをインストールします。それはその主な目的ではありませんが、いくつかの一般的な誤構成(不適切に構成されたアカウントなど)を見つけます。そして、その主要な機能であるホストベースの侵入検知は、誰かが脆弱性を悪用しようとしているかどうかを見つけるのに役立ちます。
Center for Internet Securityの「ベンチマーク」チェックリストから始めます。これらは、さまざまなプラットフォームおよびソフトウェアパッケージ用にセキュリティ専門家がまとめたコンセンサスベースのチェックリストです。チェックリストに記載されている、またはセキュリティの問題を探すのに役立つ一般的に推奨されているいくつかのツール:
(tcpdumpは多くのLinuxシステムにデフォルトでインストールされているか、パッケージリポジトリから簡単にインストールでき、包括的なmanページがあります)
これが対象の会社に当てはまる場合は、セキュリティ分析が管理者によって承認されていること、およびスキャンによって停止やアプリケーションの問題が発生しないことを確認してください。はい、単純なポートスキャンは問題を引き起こす可能性があります-古いHP Laserjetプリンターをポートスキャンすると、大量の用紙が排出されます。
私はhttp://www.bastille-unix.org/でBastille-Linuxをチェックアウトします。これは、実行可能なスクリプトのセットであり、システム設定、ファイルのアクセス許可、ユーザー設定などをチェックします。私自身のボックスで1回または2回、デフォルトのインストールで問題が見つかった場合(主にrsh / rsync utilsでr_x)。html / java + curses / flatテキストとして出力します。
どんなディストリビューション?
一般:
あなたが心配しているなら、私はあなたが言及したそれらのチュートリアルに従ってサーバーを再構築することをお勧めします。特に、他の管理者が何か悪いものを残したと思う場合。新しい管理者は、とにかく再実行するサービスをデプロイする方法を知っている必要があります。
すべてを最初にバックアップすることを確認してください。すべてのパーティションをイメージ化して、本当に正しく機能することを確認できます。
あなたの上司があなたを許さないならば、それから他の誰もが私に良い音を出します:-)
ここで非常に良い応答のいくつかに加えて、http://www.sans.org/をチェックしてください。「徹底的な防御」をよりよく理解するために少し読んでも構わないと思っている場合は、非常に優れたドキュメントがいくつかあります。
非常に基本的な前提のいくつか:
また、chkrootkitも試してください。ほとんどのディストリビューションの標準リポジトリに含まれており、インストールは非常に簡単です。多くの既知の脆弱性、ルートキット、ワームについてシステムをチェックします。
Chrootkit / rkhunterは、長くぶら下がっている果物です。ルートキットがインストールされている場合、報告されたすべての内容が危険にさらされるため、あまり役に立ちません。既知のソースからダウンロードしてください。ボックスにあるものは使用しないでください。別の良いトリックは、あなたが知っているカーネルをインストールすることです(パッケージから、または自分でロールする)。バックドアをチェックします(lsof -iおよび0 uid非rootアカウント)。ファイアウォールルールを検査すると、通常、以前の管理者の習慣について多くのことがわかります。それにwireshark / snortを置き、異常なものを見つけてみてください。ログの場所を確認します。異常なコマンドがないか、すべての.profile / .bashrcファイルを確認してください。.ssh / known_hostsで危険なホストを探します。