ステータス:非推奨

この記事では、サポートされなくなったバージョンのUbuntuについて説明します。 現在Ubuntu12.04を実行しているサーバーを運用している場合は、サポートされているバージョンのUbuntuにアップグレードまたは移行することを強くお勧めします。

理由:
Ubuntu 12.04は2017年4月28日に保守終了(EOL)に達しました and no longer receives security patches or updates. This guide is no longer maintained.

代わりに参照してください:このガイドは参照として役立つ場合がありますが、他のUbuntuリリースでは機能しない場合があります。 可能な場合は、使用しているUbuntuのバージョン用に作成されたガイドを使用することを強くお勧めします。 ページ上部の検索機能を使用して、より新しいバージョンを見つけることができます。

序章


Bastilleは、セキュリティのレベルを強化または評価しようとしているすべてのレベルのシステム管理者およびLinuxユーザーにとって非常に便利なツールです。 一見すると、Bastille自体[およびその関心のあるポイント]はデスクトップコンピューティングドメイン内にあるように見えるかもしれません。 さらに、最近人気を失い、人気のあるアプリケーションの1つではなく、オンラインコミュニティの間で非クールツールになりました。

しかし、バスティーユは寛大に賞賛されるべき真の宝石です。 これは、OS(オペレーティングシステム)の強化だけでなく、セキュリティ評価と教育の真の芸術に特化した素晴らしいシステム管理ツールです。

このDigitalOceanの記事では、Bastilleを使用して、システムのセキュリティを強化し、Bastilleが本質的に教えようとしていることを分析し、さまざまな側面を分析することで、Linuxシステムの強化に関する知識と理解を大幅に強化します。プロセス。

オペレーティングシステムの強化

オペレーティングシステムの強化(または単に強化)は、情報を盗んだり、操作を妨害したり、一般的に損害を与えたりする悪意のある当事者による侵入攻撃を防ぐことを目的として、ユーザー(メンテナ、システム管理者など)が実行するアクションの総称です。可能。

セキュリティは底なしの落とし穴の1つであり、費やした労力や適用した経験のレベルに関係なく、完全な証拠となる解決策に到達することはできず、安全を確保することは決して安全ではありません。 次の未知のものは攻撃の形でやって来て引き継ぐかもしれません。

ただし、幸いなことに、今日の「不明」は、一般的な知識、比較的成熟した(d)システム、およびバスティーユなどの使いやすいツールの助けを借りて譲歩する奇妙な出来事です。多くの人が簡単にアクセスできます。

脆弱性を引き起こすいくつかの一般的なシステムの側面

前述のように、セキュリティを強化するために注意すべき点は無限にあります。 以下では、脆弱性を引き起こし、攻撃や危害を引き起こす行動に道を譲る可能性のある[システム]の側面のいくつかに言及しようとします。

  • デフォルトのオペレーティングシステムアプリケーションとそのツールは、最新の状態に保つ必要があります。

  • エクスプロイトを防ぐために、さまざまなシステムリソースにアクセスできる不要なアプリケーションでシステムをオーバーロードすることは避けなければなりません。

  • 不要な(および未使用の)デフォルトの実行可能ファイル/バイナリおよびアクセスメソッドはすべて削除するか、無効にする必要があります。

  • パスワードの共有とより高いレベルの辞書攻撃を促進するために、システムとそのユーザーに対して強力なパスワードとキーのローテーションを設定する必要があります。

  • (短い)パスワードの代わりに暗号化されたキーを使用することをお勧めします。

  • プレーンテキスト(暗号化されていない)通信と転送は重要な情報を漏らします-暗号化された方法を使用する必要があります。

  • 必要がなく、(明らかな)デフォルトとは異なる場合を除いて、すべてのポートを閉じたままにします。これらは、(通常は自動化された)攻撃のターゲットとして選択できます。

  • ソケットの作成は厳重に監視する必要があります。

  • ログの分析は定期的に実行する必要があります。できれば、ログの自動分析およびレポートツールを使用して、侵入の試みやセキュリティ上の欠陥の可能性を特定してください。

  • ブルートフォース攻撃を防ぐために、ログインに何度も失敗した後は、アカウントアクセスを無効にしてロックダウンする必要があります。

  • 単一のアカウントの乗っ取り時にルートレベルのアクセスを防ぐために、ユーザーレベルのアクセスは厳格な体制で制限する必要があります。

  • ルートとしてのログインは許可されるべきではありません。

  • 侵入防止/戦闘アプリケーションは、特定のパターンに従って自動的に攻撃と戦うことができるため、使用することをお勧めします。

  • サーバーを外部に公開することは、必要な場合を除いて行わないでください。可能な場合は常に内部ネットワーク接続を選択することをお勧めします。

  • リカバリとデータの整合性を確保するために、確実なバックアップポリシーを設定する必要があります。

  • システムとそのアプリケーションでディスクを動作不能にすることを目的とした特定の攻撃を防ぐために、ディスクのパーティション分割を検討する必要があります。

  • 必要な場合を除いて、外部への応答やルックアップの試みは許可されるべきではなく、特定のアプリケーションレベルの障害の悪用を助長しないように、アプリケーションのバージョンを隠しておく必要があります。

  • データセンターの監査と物理サーバーのセキュリティを確保する必要があります。

バスティーユによる硬化と評価


バスティーユとは何かについて話し、脆弱性に変わる可能性のあるいくつかのシステムの側面を経験したので、バスティーユが何をするかについて話す準備ができています。

注: Bastilleはシステムレベルの変更(および重要な変更も!)を行うため、最初にサーバーの新規インストールで試すことをお勧めします。 また、何か新しいことを試す前に、(いつものように)バックアップをとってください。 バスティーユを使用するときは、非常に価値があるため、バスティーユが実行するシステムチューニングの説明を読むことを強くお勧めします。 ここでは、Ubuntu Long Term Support(LTS)バージョン-10.04および12.04–を使用しています。これは、それらの成熟度、安定性、および会社からの長期サポートのためです。 非LTSまたは最新バージョンのいずれかを使用している場合は、特定のもの(例: sources.listファイル)は少し異なって見えるかもしれません。

システムの準備


推奨されるように、システムのアプリケーションソースリストを更新し(パッケージマネージャー – aptitudeなど–アプリケーションを探す)、必要に応じてアップグレードすることから始める必要があります。

Ubuntuの場合、以下を実行します。

 sudo aptitude update
 sudo aptitude -y upgrade

バスティーユ硬化および評価ツールのインストール


Ubuntuのバージョンによっては、Bastilleを入手するために、Universeリポジトリを有効にする必要がある場合があります(以下の説明を参照)。 続いてBastilleをインストールしてみてください。パッケージマネージャー(aptitude)からBastilleが見つからないと苦情があった場合は、次のセクション(トラブルシューティング)に進んでもう一度試してください。

Bastilleをダウンロードしてインストールするには、aptitudeを介してinstallコマンドを実行します。

sudo aptitude install -y bastille

Ubuntuリポジトリ

Ubuntuにはデフォルトでさまざまなアプリケーションパッケージスコープがあり、Ubuntuの世界では、すべてのソフトウェアが4つの異なるカテゴリ(リポジトリ/スコープ)に分類されます。

これらは:

  • 主要
  • 制限付き
  • 宇宙
  • 多元宇宙

Main は、すべてのUbuntuがサポート、推奨、および(十分に)維持されているfreeアプリケーションが存在する場所です。

制限付きには、Ubuntuを「日常のハードウェア」で動作させるために必要な独自のドライバーとその他の重要なシステムツールが含まれています。

Universe は、ほぼすべての無料の(そしてオープンソースの)Linuxアプリケーションを見つけてインストールできる場所であり、ここからBastilleを取得します。

最後に、 Multiverse には、残りの部分と、特に無料ではないアプリケーションを含むその他すべてが含まれています。

トラブルシューティング


バスティーユをダウンロードできなかった場合:

aptitudeがバスティーユを見つけることができないという苦情を言った場合は、以下を実行してください。

 sudo nano /etc/apt/sources.list

これにより、テキストエディタnanoが表示されます。 ここでは、Ubuntuパッケージリポジトリの一連のURL(およびコメントアウトされた可能性のあるテキスト)が表示されます。

Ubuntuのバージョン(明快、正確など)に応じて、このファイルの先頭に次の行(URL)を追加する必要があります(バージョン名を自分のものに置き換えてください)。

Ubuntuのバージョン名がわからない場合は、次を実行してください。
$ cat /etc/lsb-release

DISTRIB_CODENAMEで始まる行は、システムのバージョンの名前を示します。

元: DISTRIB_CODENAME=lucid

ユニバースリポジトリのURLの例:

# Example URLs:
# deb http://archive.ubuntu.com/ubuntu [version name] universe
# deb http://archive.ubuntu.com/ubuntu [version name]-updates universe

# For Ubuntu 'precise' you would need to use: 
deb http://archive.ubuntu.com/ubuntu precise universe
deb http://archive.ubuntu.com/ubuntu precise-updates universe

「CTRL+X」を押し、「Y」を入力して確定することにより、ファイルを閉じて保存します。

ソースにURLを追加したら、次を実行してリポジトリリストを更新する必要があります。

 aptitude update

これで、aptitudeを介して上記のようにBastilleをダウンロードできるようになります。

硬化のためのバスティーユの使用


Bastilleをインストールすると、使用できるようになります。

Bastilleを実行するには、次のコマンドを実行します。

 sudo bastille

注: Bastilleには、CLI(コマンドラインインターフェイス)とGUI(グラフィカルユーザーインターフェイス)の2つの動作モードがあります。 Xベースのインタラクティブ(グラフィカル)インターフェイスを備えたデスクトップシステムで作業している場合は、代わりにsudo bastille -xを実行してGUIを使用できます(PerlのTkモジュールをインストールする必要がある場合があります– aptitude install perl-tk)。

アプリケーションを実行すると、Bastille、その機能、およびBastilleが実行することと実行しないことに関する免責事項が表示されます。 免責事項を注意深く読み、「accept」と入力してEnterを押して実際のプログラムを続行します。 矢印キーとTABの使用法が説明されている2番目のはじめに画面を読み、もう一度Enterを押して続行します。

これからは、質問が1つずつ表示されます。 それらに答え、一部の場合はテキスト(警告メッセージなど)を入力するように求められます。 以下で選択すべき説明と推奨される回答を含む質問を見つけてください。

硬化のためのバスティーユの質問に答える


質問:

  • 管理ユーティリティにさらに制限のある権限を設定しますか?

一般に、ほとんどのベンダーによって設定されたデフォルトのファイル権限はかなり安全です。 ただし、それらをより安全にするために、一部の管理者機能へのroot以外のユーザーアクセスを削除することができます。

このオプションを選択すると、root以外のユーザーが読み取りまたは実行できないように、いくつかの一般的なシステム管理ユーティリティのアクセス許可を変更することになります。 これらのユーティリティ(linuxconf、fsck、ifconfig、runlevel、portmapを含む)は、ほとんどのユーザーがアクセスする必要がないはずのユーティリティです。 このオプションを使用すると、システムのセキュリティが向上しますが、ユーザーに不便をかける可能性があります。

推奨される回答は「はい」です

質問番号2に進む前に、「SUID」に関する詳細な(そして非常に役立つ)説明が提供されます。 Enterを押して続行します。

  • マウント/アンマウントのSUIDステータスを無効にしますか?

マウントとアンマウントは、起動時に自動的にマウントされなかったドライブのマウント(アクティブ化)とアンマウント(非アクティブ化)に使用されます。 これには、フロッピードライブとCD-ROMドライブが含まれる場合があります。 SUIDを無効にしても、rootパスワードを持っている人なら誰でもドライブをマウントおよびアンマウントできます。

推奨される回答は「はい」です

  • pingのSUIDステータスを無効にしますか?

pingは、ネットワーク接続のテストに使用されます。 具体的には、このマシンから別のマシンにパケットを送受信するネットワークの機能をテストするためのものです。 rootユーザーのみがrawソケットを開くことができるため、pingプログラムはSUIDです。 ただし、通常はrootアクセス権を持つホストのネットワーク担当者のみが使用することが多いため、SUIDステータスを無効にすることをお勧めします。

推奨される回答は「はい」です

  • tracerouteのSUIDステータスを無効にしますか?

tracerouteユーティリティは、ネットワーク接続をテストするために使用されます。 これはネットワークの問題をデバッグするのに役立ちますが、特に非特権ユーザーの場合は、通常は必要ありません。 root以外のユーザーがネットワーク接続をデバッグする必要がある場合は、tracerouteにSUIDビットを残しておくことができます。 それ以外の場合は、無効にする必要があります。

推奨される回答は「はい」です

  • Bastilleは、IPベースの認証を使用するクリアテキストのrプロトコルを無効にする必要がありますか?

BSD r-toolsはIPベースの認証に依存しています。つまり、192.168.1.1のルートアクセス権を持つすべてのユーザーに、192.168.1.2のルートアクセス権を許可できます。 管理者や他のユーザーは、パスワードを再入力しなくても、あるホストから別のホストに接続できるため、これが便利であると従来から考えていました。 .rhosts ファイルには、信頼できると見なされるアカウントとマシンの名前が含まれています。 ただし、IPベースの認証の問題は、侵入者が、信頼できるマシン上の信頼できるユーザーからのものであると主張する「なりすまし」または偽造されたパケットを作成する可能性があることです。 r-toolsは認証のためにIPアドレス(およびリモートユーザー名)に完全に依存しているため、スプーフィングされたパケットは実際のものとして受け入れられます。 一部のユーザー、またはこのマシンの他の管理者でさえ、BSDr-toolsのセキュリティ問題に気付いていない可能性があります。 この場合、クラッカーがマシンにアクセスできる可能性のある.rhostsファイルを作成する可能性があります。 このオプションは、マシンから、およびマシンにログインする手段として、これらのr-toolsの使用を無効にします。

推奨される回答は「はい」です

  • パスワードエージングを強制しますか?

ここで変更するオペレーティングシステムのデフォルトの動作は、99、999日以内にパスワードが変更されていない場合にアカウントを無効にすることです。 この間隔は長すぎて役に立ちません。 デフォルトを60日に設定できます。 60日が経過する前のある時点で、システムはユーザーにパスワードの変更を要求します。 60日の終わりに、パスワードが変更されていない場合、アカウントは一時的に無効になります。 この警告期間は少なくとも5日間であることを確認します。 この変更は/etc/login.defsで行います

推奨される回答は「はい」です

  • デフォルトのumaskを設定しますか?

umaskは、作成するファイルのデフォルトの権限を設定します。 Bastilleは、デフォルトのログイン構成ファイルにいくつかのumaskの1つを設定できます。 これらは、cshのような標準シェルと、bash、sh、およびkshのようなほとんどのbourneシェルバリアントをカバーします。 他のシェルをインストールする場合は、自分で構成する必要があります。 少なくとも最小のデフォルトのumaskを設定しない唯一の理由は、すでに設定していることが確実な場合です。

推奨される回答は「はい」で、「077」(引用符なし)を選択します。 TABEnterを押して続行します。

  • ttyの1-6でrootログインを禁止する必要がありますか?

どのttyのルートにログインできるかを制限できます。 一部のサイトでは、rootログインを制限することを選択しているため、管理者は通常のユーザーアカウントでログインしてから、「su」を使用して「root」になる必要があります。 これにより、rootパスワードを盗むことしかできなかった攻撃者が直接ログインするのを防ぐことができます。 彼は、ttyを介してrootパスワードを利用するために、2番目のアカウントのパスワードを盗む必要があります。

推奨される回答は「いいえ」です

  • GRUBプロンプトをパスワードで保護しますか?

攻撃者がこのマシン、特にキーボードに物理的にアクセスできる場合、攻撃者はGrand Unified Bootloader(GRUB)コマンドラインを介してスーパーユーザーアクセスを取得する可能性があります。 これを防ぐ他の方法については後で説明しますが、簡単な方法の1つは、GRUBプロンプトをパスワードで保護することです。 GRUBがパスワードで保護されている場合、すべてのユーザーがマシンを正常に再起動できますが、パスワードを持つユーザーのみがGRUBプロンプトに引数を渡すことができます。 デュアルブートでは、2つのオペレーティングシステムのいずれかをブートするためにO / S名を入力する必要があることが多いため、このオプションは2番目のオペレーティングシステムとのデュアルブートを妨げる可能性があることに注意してください。 このマシンが汎用ラボとデュアルブートにある場合は、おそらくこのオプションを選択しないでください。 それ以外の場合、これは、自分の部屋に閉じ込められていない汎用ワークステーションおよびサーバーに強くお勧めします。

推奨される答えは仮想サーバー上にいる場合は「いいえ」です。

  • シングルユーザーモードをパスワードで保護しますか?

システムと物理的に対話できる人は誰でも、ブートローダーにマシンを「シングルユーザーモード」で起動するように指示できます。このモードでは、root権限が与えられ、他のすべての人はシステムからロックアウトされます。 これは、ほとんどのUnixシステムではパスワードを必要としません。 この方法は、使用しているブートローダーによって異なります。したがって、オペレーティングシステムのリビジョンとアーキテクチャごとに異なります。 LILO:プロンプトで「linuxsingle」と入力すると、LILOを使用するLinuxシステムでこの攻撃をテストできます。 Bastilleは、ブートプロンプトをパスワードで保護できます。 別のパスワードを覚えておく必要はありません。シングルユーザーモード、つまり「ルート」モードでは、ルートパスワードが必要になります。 シングルユーザーモードでパスワードを保護することを強くお勧めします。

推奨される回答は「はい」です

  • TCP Wrappersとxinetdにデフォルトの拒否を設定しますか?

ほとんどのユーザーには推奨されません:多くのネットワークサービスは、特定のネットワークアドレスへのアクセスを制限するように構成できます(Linuxのxinetdサービスの場合-Mandrake8.0およびRedHat 7.x、その他の基準も同様) 。 古いinetdスーパーサーバー(古いバージョンのLinux-MandrakeとRed Hat、および現在のバージョンのその他のディストリビューションにあります)で実行されているサービスの場合、OpenSSHなどのスタンドアロンサービス、および(特に構成されていない限り)Redで実行されているサービスHatのxinetdスーパーサーバー。/etc/hosts.allowのネットワークアドレスに基づいて制限を構成できます。 inetdまたはxinetdを使用するサービスには、通常、telnet、ftp、pop、imap、finger、およびその他の多くのサービスが含まれます。 必要に応じて、Bastilleは、すべてのinetd、xinetd、およびTCP Wrappers対応サービスのデフォルトポリシーを構成して、すべての接続試行を拒否できます。 バスティーユのファイアウォールをインストールすることをすでに選択している場合でも、これらのサービスにデフォルトの拒否ポリシーを設定すると、多層防御が強化されます。 これにより、現在インストールされているxinetdサービスがxinetdのより柔軟なアクセス制御を使用し、ではなく/etc/hosts.allowを使用するようにxinetdも構成されます。 sshdのような他のすべてのラッパーベースのプログラムは、default-denyに従います。 特別な例外として、Bastilleは現在、デフォルトで「sshd」を許可しています。 これもブロックしたい場合は、hosts.allowで手動で行を変更してください。

推奨される回答は「いいえ」です

  • Bastilleは、telnetサービスがこのシステムで実行されないようにする必要がありますか?

Telnetは安全ではありません。

Telnetは、下位互換性のためにほとんどのオペレーティングシステムに同梱されており、信頼できないネットワークでは使用しないでください。

Telnetはクリアテキストプロトコルです。つまり、パスワードを含め、転送されたすべてのデータをネットワーク上の他のユーザーが監視できます(スイッチはセキュリティではなくパフォーマンスを目的として設計されており、ブロードキャストできるため、スイッチングルーターを使用している場合でも) )。 telnetセッションが複数のLANを通過する場合、他のネットワークもこの情報を監視できます。

他にももっと活発な攻撃があります。 たとえば、盗聴できる人なら誰でも、通常、HuntやEttercapなどのツールを使用してTelnetセッションを引き継ぐことができます。

セキュリティを重視するサイトの標準的な方法は、telnetからSecure Shellにできるだけ早く移行することです(コマンド:ssh)。 できるだけ早くこの動きをすることをお勧めします。 セキュアシェルの実装は、openssh.orgおよびssh.comから入手できます。 ほとんどのオペレーティングシステムベンダーはセキュアシェルのバージョンも配布しているため、最初にベンダーに問い合わせて、OSでテストされたバージョンがあるかどうかを確認してください。

注:「telnetd」サービスを無効にしても、telnetクライアントには影響しません。

推奨される回答は「はい」です

  • Bastilleは、inetdのFTPサービスがこのシステムで実行されないようにする必要がありますか?

Ftpは別の問題のあるプロトコルです。 まず、これはtelnetのようなクリアテキストプロトコルです。これにより、攻撃者はセッションを盗聴してパスワードを盗むことができます。 これにより、攻撃者はHuntやEttercapなどのクリアテキスト乗っ取りツールを使用してFTPセッションを乗っ取ることができます。 第二に、FTPは多くのポートを開いたままにする必要があるため、効果的なファイアウォールを困難にする可能性があります。 第三に、すべての主要なFTPデーモンには、セキュリティの脆弱性の長い歴史があります。これらは、リモートルート攻撃の主要な成功した攻撃ベクトルの1つです。

FTPは、SecureShellのscpおよびsftpプログラムに置き換えることができます。

注:この質問に「はい」と答えると、このマシンを匿名のftpサーバーとして使用することもできなくなります。

推奨される回答は「はい」です

  • ログイン時に「許可された使用」メッセージを表示しますか?

この時点で、サイトの「許可された使用のみ」メッセージを作成できます。 これらは、システムに侵入しようとして捕まえる可能性のあるシステムクラッカーを起訴するのに非常に役立つ場合があります。 バスティーユはデフォルトのメッセージを作成でき、後で編集することができます。 これは、コンピュータの「アンチウェルカムマット」のようなものです。

推奨される回答はデフォルトで「いいえ」です。他のユーザーがいる場合は「はい」です。

ウェルカムマットメッセージを設定して決定し、TABを押して続行します。

  • このマシンを使用する許可を与える責任は誰にありますか?

バスティーユは、このマシンの責任者をユーザーに伝えることで、バナーをより具体的にし始めます。 これにより、ユーザーがこのマシンを使用するための認証を誰から取得する必要があるかが明示的に示されます。 このマシンを所有または責任を負う会社、個人、またはその他の組織の名前を入力してください。

システム所有者の名前を決定し、 TAB を押してから、Enterを押して続行します。

  • システムリソースの使用を制限しますか?

サービス拒否攻撃は、ターゲットマシンへのいかなる種類のアクセスも必要としないため、防御するのが非常に難しいことがよくあります。 Webサーバー、名前サーバー、FTPサーバーなど、いくつかの主要なデーモンが特定のユーザーとして実行される可能性があるため、/etc/security/limits.confを変更することで、多くのサービス拒否攻撃の効果を制限できます。 この方法で利用可能なリソースを制限すると、ほとんどのサービス拒否攻撃を効果的に無効にすることができます。

このオプションを選択すると、リソース使用量に次の初期制限が設定されます。

  • 許可されるコアファイルの数はゼロに設定されます。 コアファイルはシステムの問題を診断するのに役立ちますが、非常に大きなファイルであり、攻撃者がファイルシステムをいっぱいにするために悪用する可能性があります。 また、脆弱性エクスプロイトツールの調整にも使用できます。 最後に、攻撃者はクラッシュしたプログラムのコアファイルを使用して、プログラムによってダンプされた特権データを取得する可能性があります。

  • 個々のユーザーは、それぞれ150プロセスに制限されています。 これは、通常のシステムの使用には十分すぎるはずであり、マシンをダウンさせるには十分ではありません。 (Linuxのみ)

これらの値はすべて後で編集できます。

推奨される回答は「いいえ」です

  • コンソールアクセスを少数のユーザーアカウントグループに制限する必要がありますか?

一部のディストリビューションでは、コンソールにログインしているユーザーには、特別なアクセス権(CD-ROMドライブをマウントする機能など)があります。 この特別なアクセスを完全に無効にすることもできますが、より柔軟なオプションは、コンソールアクセスを信頼できるユーザーアカウントの小さなグループに制限することです。

推奨される回答は「はい」です:ルート

  • ロギングを追加しますか?

システムに追加のロギングを構成したいと思います。 サイトにすでにリモートホストがある場合は、リモートホストにログインするオプションを提供します。 デフォルト設定に2つのログファイルを追加し、7番目と8番目の仮想端末(ALT-F7ALT-F8を押したときに表示されるもの)にいくつかのステータスメッセージを記録します。 この追加のログは既存のログファイルをまったく変更しないため、これは決して「危険な」動きではありません。

推奨される回答は「はい」です

ロギングを設定し、TABを押してからEnterを押して続行します。

  • リモートロギングホストはありますか?

すでにリモートロギングホストをお持ちの場合は、このマシンにログオンするように設定できます。

推奨される回答はある場合を除き「いいえ」、それ以外の場合は「はい」です。

  • プロセスアカウンティングを設定しますか?

Linuxには、どのコマンドがいつ誰によって実行されたかをログに記録する機能があります。 これは、潜在的なクラッカーが実際に実行したものを再構築しようとする場合に非常に役立ちます。 欠点は、ログがすぐに大きくなり(これを相殺するためにログローテーションモジュールが含まれている)、コマンドのパラメーターが記録されないこと、およびすべてのログファイルと同様に、攻撃者がルートを持っている場合はアカウンティングログを削除できることです。 これはかなりディスクとCPUを集中的に使用するため、このオプションを慎重に検討していない限り、[いいえ]を選択してください。

推奨される答えは好みに応じて「はい」または「いいえ」です。

  • acpidおよび/またはapmdを無効にしますか?

apmdおよびacpidは、バッテリーの電力を監視するために使用され、ノートブック/ラップトップコンピューターでほぼ独占的に使用されます。

推奨される回答は「はい」です

  • NFSとSambaを非アクティブ化しますか?

ネットワークファイルシステムNFS(ほとんどのUnixバリアントに共通のネットワークファイルシステム)とSMB(ほとんどのLinuxディストリビューションに付属しているSamba)を無効にします。 これらの両方を無効にすることを強くお勧めします。 NFSには、主要なセキュリティの脆弱性の歴史があります。 Sambaはわずかに優れていますが、それでも共有ファイルシステムであり、潜在的に深刻なセキュリティ上の懸念を引き起こします。 どちらのサービスもクリアテキストを使用します。つまり、転送されたデータはネットワーク上の他のユーザーが監視できます(スイッチはセキュリティではなくパフォーマンスを目的として設計されているため、スイッチングルーターを使用している場合でも)。 転送されるデータにはファイルハンドルが含まれ、ファイルハンドルを使用してファイルを変更できます。

これらのサービスは、いずれかのパケットがネットワークに出入りするのをブロックするようにファイアウォールを設定できる場合はより安全ですが、必要かどうか、およびそれらを最適に保護する方法を調査できるまで、非アクティブ化するのがおそらく最善です。

推奨される回答は「はい」です

  • sendmailがデーモンモードで実行されないようにしますか?

電子メールを送受信するためにsendmailをデーモンモードで実行する必要はありません。また、常時ネットワーク接続がない限り、sendmailをデーモンモードで実行することはできません。 デーモンモードは、sendmailがメールの受信を待機しているネットワーク接続を常にリッスンしていることを意味します。

デーモンモードを無効にすると、Bastilleは、送信メールのキューを処理するために数分ごとにsendmailを実行するかどうかを尋ねてきます。 メールを送信するほとんどのプログラムはすぐに送信し、キューの処理によって一時的なエラーが処理されます。

ISPが提供するPOP/IMAPメールボックスを介してすべての電子メールを受信する場合、特別なフェッチメールスタイルのPOP / IMAPベースの取得プログラムを実行していない限り、デーモンモードのsendmailは必要ない場合があります。 たとえば、Netscapeの一般的なPOP / IMAP読み取り機能を介してメールを読み取る場合は、デーモンモードをオフにすることができます。 sendmailをデーモンモードで実行する唯一の理由は、メールサーバーを実行している場合です。

推奨される回答は「はい」ですが、サーバーの役割によって異なります。

  • Apache Webサーバーを非アクティブ化しますか?

Apache Webサーバーをすぐに使用しますか? 繰り返しになりますが、ミニマリズムは優れたサイトセキュリティの重要な部分です。 Webサーバーを実行する必要がない場合は、少なくとも現時点では、非アクティブ化する必要があります。

/sbin/chkconfig httpd onと入力すると、後でWebサーバーを再起動できます。

推奨される回答は「はい」ですが、強くはシステムの役割によって異なります。

  • 印刷を無効にしますか?

このマシンで印刷する必要がない場合は、印刷スケジューラを停止し、すべての印刷ユーティリティの権限を制限する必要があります。

Linuxでは、次のように入力することで、後でこれを元に戻すことができます。

$ /bin/chmod 06555 /usr/bin/lpr /usr/bin/lprm

$ /sbin/chkconfig lpd on

これは、このマシンが近い将来印刷に使用されない場合にのみ推奨されます。 これを無効にした場合、後で印刷を再度有効にすることにした場合に備えて、上記のコマンドを書き留めておくことをお勧めします。

推奨される回答はサーバーの場合は「はい」です。

  • 印刷を無効にしますか?

このマシンで印刷する必要がない場合は、印刷スケジューラを停止し、すべての印刷ユーティリティの権限を制限する必要があります。

Linuxでは、次のように入力することで、後でこれを元に戻すことができます。

$ /bin/chmod 0755 /usr/bin/lpr /usr/bin/lprm /usr/bin/lpstat
$ /bin/chmod 04755 /usr/bin/lppasswd
$ /sbin/chkconfig cups on

これは、このマシンが近い将来印刷に使用されない場合にのみ推奨されます。 これを無効にした場合、後で印刷を再度有効にすることにした場合に備えて、上記のコマンドを書き留めておくことをお勧めします。

推奨される回答はサーバーの場合は「はい」です。

  • TMPDIR / TMPスクリプトをインストールしますか?

多くのプログラムは、マルチユーザーシステムで危険な方法で/tmpディレクトリを使用します。 これらのプログラムの多くは、TMPDIRまたはTMP環境変数で指定されている場合、代替ディレクトリーを使用します。 ユーザーがログインしたときに実行されるスクリプトをインストールして、適切な一時ディレクトリを安全に作成し、TMPDIRおよびTMP環境変数を設定できます。 これは、/etc/profile.dスクリプトをサポートしているシステムによって異なります。

推奨される回答はマルチユーザーシステムの場合は「はい」、そうでない場合は「いいえ」です。

  • パケットフィルタリングスクリプトを実行しますか?

パケットフィルタリングスクリプトを使用すると、Linuxカーネルを介してパケットフィルタリング/変更を行うことができます。 これを使用して、マシンとの間の特定の種類の接続をブロックしたり、マシンを小さなファイアウォールに変えたり、ネットワークアドレス変換(「IPマスカレード」とも呼ばれます)を実行したりできます。これにより、複数のマシンで1つのIPアドレスを共有できます。 。

パケットフィルタリングスクリプトをインストールすると、ファイアウォールの指示が作成されます。 さまざまな選択を行うように求められますが(デフォルトが推奨されます)、特定のサイトに合わせて編集する必要があり、個別にアクティブ化する必要があります。

このスクリプトは、カーネル2.2(ipchains)と2.4(利用可能な場合はiptables、それ以外の場合はipchains)の両方をサポートします。

推奨される回答は「いいえ」ですが、目的によっては「はい」になる場合があります。

行われる変更の承認


すべての質問に答えると、それが完了したことを確認するように求められます。 確認を行った後、バスティーユはその仕事をし、(文字通り)クレジットを表示します。

Enter を押すと、Linuxシェルに戻ることができます。

バスティーユの変更を元に戻す


Bastilleがシステムに加えた変更を元に戻す場合は、次のコマンドを実行して元に戻すことができます。

 sudo RevertBastille

これによりすべてが元に戻され、バスティーユが再び必要になった場合は、各ステップを1つずつ実行する必要があります。

注:通常、オペレーティングシステムには、デフォルトで正しく設定された多くのセキュリティオプションがすでに付属しています。 バスティーユの変更を元に戻した後、変更されていないことがわかっても心配しないでください。これは、システムのデフォルトが原因です。

評価のためのバスティーユの使用


記事の冒頭で述べたように、Bastilleは、考えられる脆弱性の特定の側面に関する優れたレポートを非常に簡単に提供するため、優れたシステムセキュリティ評価ツールでもあります。

評価の生成


評価レポートを取得するには、次の手順を実行します。

 sudo bastille --assessnobrowser

テストを完了すると、バスティーユは次のようなことを教えてくれます。

Bastille Hardening Assessment Completed

You can find a report in HTML format at:
file:///var/log/Bastille/Assessment/assessment-report.html

You can find a report in text format at:
/var/log/Bastille/Assessment/assessment-report.txt

You can find a more machine-parseable report at:
/var/log/Bastille/Assessment/assessment-log.txt

評価結果の表示


評価レポートを表示するために、テキストエディタ(nano)を使用してテキスト形式でレポートを開きます。

$ cat /var/log/Bastille/Assessment/assessment-report.txt

ここでは、セキュリティのさまざまな側面に関するシステムの設定の概要を取得できます。

また、ドキュメントの最後を見ると、Bastilleによってスコア付けされたセキュリティレベルを知ることができます。

投稿者: https ://twitter.com/ostezer