Lynisを使用してLinuxシステムのセキュリティを監査する方法

公開: 2022-01-29
Linuxシステムのターミナルプロンプト。
Fatmawati Achmad Zaenuri / Shutterstock

Lynisを使用してLinuxコンピューターでセキュリティ監査を実行すると、マシンが可能な限り保護されていることが保証されます。 インターネットに接続されたデバイスのセキュリティはすべてです。安全にロックダウンされていることを確認する方法は次のとおりです。

Linuxコンピュータはどれくらい安全ですか?

Lynisは、Linuxオペレーティングシステムの多くのシステムコンポーネントと設定を徹底的に検査する一連の自動テストを実行します。 調査結果は、色分けされたASCIIレポートに、段階的な警告、提案、および実行する必要のあるアクションのリストとして表示されます。

サイバーセキュリティはバランスをとる行為です。 完全なパラノイアは誰にとっても役に立たないので、どの程度心配する必要がありますか? 信頼できるWebサイトにのみアクセスし、添付ファイルを開いたり、迷惑メールのリンクをたどったり、ログインするすべてのシステムに異なる堅牢なパスワードを使用したりしない場合、どのような危険が残りますか? 特にLinuxを使用している場合はどうでしょうか。

それらに逆に対処しましょう。 Linuxはマルウェアの影響を受けません。 実際、最初のコンピュータワームは、1988年にUnixコンピュータを標的とするように設計されました。ルートキットは、Unixスーパーユーザー(root)と、検出を回避するためにインストールするソフトウェア(kit)のコレクションにちなんで名付けられました。 これにより、スーパーユーザーは脅威アクター(つまり、悪者)にアクセスできるようになります。

なぜ彼らはルートにちなんで名付けられているのですか? 最初のルートキットは1990年にリリースされ、SunOSUnixを実行しているSunMicrosystemsを対象としているためです。

広告

そのため、マルウェアはUnixで始まりました。 Windowsが離陸し、脚光を浴びたとき、それはフェンスを飛び越えました。 しかし、Linuxが世界を動かしている今、それは戻ってきました。 LinuxやmacOSのようなUnixライクなオペレーティングシステムは、脅威の攻撃者の注目を集めています。

コンピュータを使用するときに注意深く、賢明で、注意を払うと、どのような危険が残りますか? 答えは長くて詳細です。 それをいくらか凝縮するために、サイバー攻撃は多く、多様です。 彼らは、ほんの少し前には不可能と考えられていたことができるのです。

Ryukのようなルートキットは、Wake-on-LAN監視機能を危険にさらすことにより、電源がオフになっているときにコンピューターに感染する可能性があります。 概念実証コードも開発されました。 ネゲブベングリオン大学の研究者は、脅威の攻撃者がエアギャップのあるコンピューターからデータを盗み出すことを可能にする「攻撃」の成功を実証しました。

サイバー脅威が将来何を可能にするかを予測することは不可能です。 ただし、コンピュータの防御のどのポイントが脆弱であるかは理解しています。 現在または将来の攻撃の性質に関係なく、事前にそれらのギャップを埋めるのは理にかなっています。

サイバー攻撃の総数のうち、特定の組織または個人を意識的に標的にしているのはごくわずかです。 マルウェアはあなたが誰であるかを気にしないため、ほとんどの脅威は無差別です。 自動ポートスキャンやその他の手法は、脆弱なシステムを探し出し、攻撃するだけです。 あなたは無防備になることによって自分を犠牲者として指名します。

そして、それがLynisの出番です。

Lynisのインストール

LynisをUbuntuにインストールするには、次のコマンドを実行します。

 sudo apt-get install lynis 

Fedoraで、次のように入力します。

 sudo dnf install lynis 

Manjaroでは、 pacmanを使用します:

 sudo pacman -Sy lynis 

監査の実施

Lynisは端末ベースであるため、GUIはありません。 監査を開始するには、ターミナルウィンドウを開きます。 クリックしてモニターの端にドラッグし、完全な高さにスナップするか、できるだけ高く伸ばします。 Lynisからの出力はたくさんあるので、ターミナルウィンドウが高いほど、レビューが簡単になります。

広告

Lynis専用のターミナルウィンドウを開くと便利です。 上下にスクロールすることが多いので、前のコマンドの乱雑さに対処する必要がないため、Lynis出力のナビゲートが簡単になります。

監査を開始するには、次の簡単なコマンドを入力します。

 sudolynis監査システム

テストの各カテゴリが完了すると、カテゴリ名、テストタイトル、および結果がターミナルウィンドウでスクロールします。 監査にはせいぜい数分しかかかりません。 終了すると、コマンドプロンプトに戻ります。 調査結果を確認するには、ターミナルウィンドウをスクロールするだけです。

監査の最初のセクションでは、Linuxのバージョン、カーネルリリース、およびその他のシステムの詳細を検出します。

確認する必要のある領域は、琥珀色(提案)と赤(対処する必要のある警告)で強調表示されます。

以下は警告の例です。 Lynisは、 postfixメールサーバーの構成を分析し、バナーに関係するフラグを立てました。 何が見つかったのか、なぜそれが問題になるのかについては、後で詳しく知ることができます。

以下で、Lynisは、使用しているUbuntu仮想マシンにファイアウォールが構成されていないことを警告しています。

広告

結果をスクロールして、Lynisがフラグを立てたものを確認します。 監査レポートの下部に、要約画面が表示されます。

「硬化指数」はあなたの試験のスコアです。 100のうち56を取得しましたが、これは素晴らしいことではありません。 222のテストが実行され、1つのLynisプラグインが有効になっています。 Lynis Community Editionプラグインのダウンロードページにアクセスしてニュースレターを購読すると、他のプラグインへのリンクが表示されます。

GDPR、ISO27001、PCI-DSSなどの標準に対する監査用のプラグインを含む多くのプラグインがあります。

緑のVはチェックマークを表します。 また、琥珀色の疑問符と赤いXが表示される場合があります。

ファイアウォールとマルウェアスキャナーがあるため、緑色のチェックマークが付いています。 テストの目的で、ルートキット検出器であるrkhunterもインストールして、Lynisがそれを検出するかどうかを確認しました。 あなたが上で見ることができるように、それはしました。 「マルウェアスキャナー」の横に緑色のチェックマークが付いています。

監査でコンプライアンスプラグインが使用されなかったため、コンプライアンスステータスは不明です。 このテストでは、セキュリティモジュールと脆弱性モジュールを使用しました。

広告

ログファイルとデータファイルの2つのファイルが生成されます。 「/var/log/lynis-report.dat」にあるデータファイルは、関心のあるファイルです。このファイルには、ターミナルウィンドウに表示される結果のコピー(色の強調表示なし)が含まれています。 。 これらは、時間の経過とともに硬化指数がどのように向上するかを確認するのに役立ちます。

ターミナルウィンドウを後方にスクロールすると、提案のリストと別の警告が表示されます。 警告は「高額な」アイテムなので、それらを見ていきます。

これらは5つの警告です:

  • 「Lynisのバージョンは非常に古く、更新する必要があります」:これは実際にはUbuntuリポジトリにあるLynisの最新バージョンです。 生後わずか4か月ですが、Lynisはこれを非常に古いと見なしています。 ManjaroおよびFedoraパッケージのバージョンはより新しいものでした。 パッケージマネージャーの更新は、常にわずかに遅れる可能性があります。 最新バージョンが本当に必要な場合は、GitHubからプロジェクトのクローンを作成し、同期を維持できます。
  • 「シングルモードにパスワードが設定されていません」:シングルは、rootユーザーのみが操作できるリカバリおよびメンテナンスモードです。 デフォルトでは、このモードにはパスワードは設定されていません。
  • 「レスポンシブネームサーバーが2つ見つかりませんでした」: Lynisは2つのDNSサーバーと通信しようとしましたが、失敗しました。 これは、現在のDNSサーバーに障害が発生した場合、別のサーバーへの自動ロールオーバーが行われないという警告です。
  • 「SMTPバナーに情報開示が見つかりました」:情報開示は、アプリケーションまたはネットワーク機器が標準の応答でメーカーとモデル番号(またはその他の情報)を提供するときに発生します。 これにより、脅威アクターまたは自動化されたマルウェアの洞察を、チェックする脆弱性のタイプに与えることができます。 接続しているソフトウェアまたはデバイスを特定したら、簡単なルックアップで悪用しようとする可能性のある脆弱性を見つけます。
  • 「iptablesモジュールがロードされましたが、アクティブなルールがありません」: Linuxファイアウォールは稼働していますが、ルールが設定されていません。

警告のクリア

各警告には、問題とそれを修正するためにできることを説明するWebページへのリンクがあります。 リンクの1つにマウスポインタを合わせ、Ctrlキーを押しながらクリックするだけです。 デフォルトのブラウザがそのメッセージまたは警告のWebページで開きます。

前のセクションで説明した4番目の警告のリンクをCtrlキーを押しながらクリックすると、以下のページが開きました。

Lynis監査警告Webページ。

これらのそれぞれを確認して、対処する警告を決定できます。

上記のWebページでは、Ubuntuコンピューターで構成されたpostfixメールサーバーに接続するときにリモートシステムに送信されるデフォルトの情報スニペット(「バナー」)が冗長すぎると説明しています。 あまりにも多くの情報を提供することにメリットはありません。実際、それはあなたに対してしばしば使用されます。

広告

Webページには、バナーが「/etc/postfix/main.cf」にあることも示されています。 「$ myhostnameESMTP」のみを表示するようにトリミングする必要があることをお勧めします。

Lynisが推奨するように、ファイルを編集するには次のように入力します。

 sudo gedit /etc/postfix/main.cf 

バナーを定義するファイル内の行を見つけます。

Lynisが推奨するテキストのみを表示するように編集します。

変更を保存してgeditを閉じます。 変更を有効にするには、 postfixメールサーバーを再起動する必要があります。

 sudo systemctl restart postfix 

それでは、もう一度Lynisを実行して、変更が効果を発揮したかどうかを確認しましょう。

広告

「警告」セクションには、4つしか表示されなくなりました。 postfixを参照しているものはなくなりました。

1つ下がって、あと4つの警告と50の提案があります。

どこまで行けばいいの?

コンピュータでシステムの強化を行ったことがない場合は、ほぼ同じ数の警告と提案が表示される可能性があります。 それらすべてを確認し、それぞれのLynis Webページに基づいて、対処するかどうかについて判断を下す必要があります。

もちろん、教科書の方法はそれらをすべてクリアしようとすることです。 しかし、それは言うよりも簡単かもしれません。 さらに、いくつかの提案は、平均的な家庭用コンピュータにはやり過ぎかもしれません。

USBカーネルドライバーをブラックリストに登録して、使用していないときにUSBアクセスを無効にしますか? 機密性の高いビジネスサービスを提供するミッションクリティカルなコンピュータの場合、これが必要になる場合があります。 しかし、Ubuntuの家庭用PCの場合はどうでしょうか。 おそらくそうではありません。