LPIC-3 Exam 303: Security　バージョン3.0の勉強方法

# はじめに
本記事はLPIC 303試験よりバージョン3.0の勉強方法について記載しています。

LPIC 303の有効期限が迫っていたため、303試験を受験しました。結果については、passすることで無事に更新できました。

受験を行うにあたりモチベーションは高くありませんでしたが、バージョン更新によって試験範囲が変化した点については、モチベーションを上げるきっかけにもなりました。

しかし、いざ勉強を開始すると、LPIC 303の試験範囲を網羅する日本語に対応した公式的な教材が存在しないため、初学者にとっては受験勉強がしにくいと思いました。

本記事では、新しいバージョン3.0の勉強方法についてまとめているため、これから受験を控えている方の参考になれば幸いです。

## 試験範囲
LPIC 303試験は、2022年にバージョン2.0が廃止されているため、現在[^1]は**バージョン3.0**が最新です。

https://www.lpi.org/ja/our-certifications/lpic-3-303-overview/

バージョン3.0の試験範囲については、上記サイトの[LPIC-3 Exam 303: Security](https://www.lpi.org/ja/exam-303-objectives/)より確認できます。

[^1]: 2025年3月31日時点

### バージョン3.0で追加された内容
以下は、差分と思われる箇所について記載しています。

「課題 333: Access Control」は、恐らく差分はないと思われます。「課題 335: 脅威と脆弱性評価」については新たに新設されたトピックです。

- 課題 331: 暗号化
    - 331.1 X.509証明書と公開鍵基盤 (総重量: 5)
        - Let's Encrypt, ACME, certbotの基本的な特徴の知識
        - CFSSLの基本的な特徴の知識
    - 331.3 暗号化ファイルシステム (総重量: 3)
        - LUKSデバイスのClevisと、TMP2とNetwork Bound Disk Encryption (NBDE)/TangのClevis PINの概念的な理解
    - 331.4 DNSと暗号化 (総重量: 5)
        - CAAやTLSAのようなDNSレコードに関連する、CAAとDANEの理解
        - マルチキャストDNSの知識  
- 課題 332: ホストセキュリティ
    - 332.1 ホストハーデニング (総重量: 5)
        - ブラックリスト・ホワイトリストに分けられたUSBデバイスを、USBGuardを利用して、コンピュータに接続する
        - CAを利用してホストとユーザーキーのSSH CA、SSH証明書を作成し、OpenSSHがSSH証明書を利用するように設定する
        - システムコールとプロセスに対して有効な機能を制限するために、systemdユニットを利用する
        - 特定のファイルやデバイスに、アクセスを制限したりアクセスさせないようにして、プロセスを起動するようにsystemdユニットを利用する
        - 専用のテンポラリディレクトリや/devディレクトリがあり、ネットワークアクセスができない状態のプロセスを起動するように、systemdユニットを利用する
        - プロセスが消費することができるシステムリソースを制限するように、systemdユニットを利用することができる
        - Linux MeltdownとSpectreの回避策の影響の理解と、回避策の有効化・無効化。
        - polkitの知識
        - 仮想化とコンテナ化のセキュリティの利点の知識
    - 332.2 ホストの侵入検知 (総重量: 5)
        - インストールされたファイルの一貫性の検証のため、RPMやDPKGのパッケージ管理ツールの利用
    - 332.3 リソース制御 (総重量: 3)
        - クラス・リミット・アカウンティングを含むcgroupsの理解
        - cgroupsの管理と、cgroup associationの加工
        - スライスを含む、systemdリソース制御の理解
        - systemdユニットのリソース制限の設定
        - cgmanagerとlibcgroupユーティリティーの知識
- 課題 334:ネットワークセキュリティ
    - 334.1 ネットワークハーデニング (総重量: 4)
        - ワイヤレスネットワークのセキュリティ機構を理解する
        - ワイヤレスネットワークを解析し、ワイヤレスネットワークのトラフィックを取得するために、Kismetを利用する
        - aircrack-ngとbettercapの知識
    - 334.4 バーチャルプライベートネットワーク(VPN) (総重量: 4)
        - OpenVPN, IPsec, IKEv2, WIreGuardプロトコルの主な違いと概念を理解している
        - IPsecサーバとクライアントを、strongSwanを利用して設定・操作する
        - WireGuardサーバとクライアントを設定・操作する
- 課題 335: 脅威と脆弱性評価
    - 335.1 一般的なセキュリティの脆弱性と脅威 (総重量: 2)
        - 独立したノードに対する脅威について、概念上の理解がある
        - ネットワークに対する脅威について、概念上の理解がある
        - アプリケーションに対する脅威について、概念上の理解がある
        - 証明書と信頼に対する脅威について、概念上の理解がある
        - ハニーポットついて、概念上の理解がある
    - 335.2 ペネトレーションテスト (総重量: 3)
        - ペネトレーションテストとエシカルハッキングの概念の理解
        - ペネトレーションテストの法的な影響の理解
        - アクティブ・受領的な情報収集・列挙・アクセス権取得・権限昇格・アクセスメンテナンス・カバートラック（侵入後の痕跡を隠す・消すこと）などの、ペネトレーションテストのフェーズを理解する
        - Metasploitのコンポーネントと構造を理解する。これには、MetasploitモジュールタイプとMetasploitが様々なセキュリティツールをどのように統合しているかの理解も含まれる
        - nmapをネットワークとホストスキャンに利用する。これには、様々なスキャンの方法・バージョンスキャン・オペレーティングシステムの認識も含まれる
        - Nmap Scripting Engineの概念の理解と、存在するスクリプトの実行
        - Kali Linux・Armitage・Social Engineer Toolkit(SET)の知識

:::note
情報収集を行う際は、一次情報を常に確認しましょう。
:::

## 勉強方法
試験範囲を踏まえて、バージョン3.0とバージョン2.0を比較した際に、バージョン3.0から新しく追加された主題や無くなった内容について見極めることが重要です。

### 教材
繰り返しになりますが、LPIC 303の試験範囲を網羅する日本語に対応した公式的な教材が存在しないため、試験範囲を元にした自己学習が求めらます。

従って教材として使用されることが多かった以下黒本をベースにした学習は難しいと思います。

https://book.impress.co.jp/books/1116101081

お勧めとしては、　IT試験学習サイトで有名な[Ping-t](https://mondai.ping-t.com/g)です。

2024年7月に「LPIC303(Ver3.0)」対応の問題集がリリース[^2]されています。

最強WEB問題集：497問
コマ問：約400問

筆者は黒本とPing-tを使用しました。Ping-tも久しぶりに利用したらUIなどが大きく変わっていました。

::: note
参考までにポルトガル語ですが、LPIの[学習教材](https://learning.lpi.org/ja/learning-materials/all-materials/)のページより303試験の教材として、[Training LPIC-3 Exam 303: Security, version 3.0](https://hotmart.com/pt-br/marketplace/produtos/preparatorio-para-certificacao-linux-lpic-3-security-v3/K81711408Q)が存在しています。
:::

[^2]: 問題数は2025年3月31日時点 

### 環境
理解を深めるためには、実際にコマンドを実行するなど手を動かすのが一番です。

Linux環境を用意するにあたりVirtualBoxなどの仮想環境があると便利ですが、macOS（Apple シリコン）の場合は、少し前までVirtualBoxが利用しにくい状況でした。

なお、現在この問題は解決されています。macOS（Apple シリコン）でVirtualBoxを使用する方法については、以前書いた「[macOS（Apple シリコン）でVirtualBoxを使用する方法](https://qiita.com/Brutus/items/fc58e00738a2556020ed)」の記事をご参照ください。

## 学習に役立つ情報
[Red Hat Enterprise Linux](https://docs.redhat.com/ja/documentation/red_hat_enterprise_linux)や[Arch Linux](https://archlinux.org/)のドキュメントでは、バージョン3.0で追加された内容の一部ですが、コマンドの例が記載されているため、参考になります。

### Linux
以下は2022年に黒本と同じインプレス社から出版されているLinuxに関する書籍です。

https://book.impress.co.jp/books/1121101019

この書籍では、Linuxシステムの構成や動作について解説しているため、303試験に登場するsystemctl、cgroup、iptablesなどの仕組も記載されているため、Linuxを全体から復習したい場合にはお勧めな書籍です。

### 試験概要
以下は、LPIの日本支部で公開している動画です。

試験範囲や学習ポイントを解説しています。

- [「新バージョンLPIC-3 (303セキュリティVer.3.0）プロの講師が先取り解説！」](https://youtu.be/W1kwaMHm3rE?si=jQkfc1CWoRX1_H8E)
- [LPIC303試験に合格するための学習方法](https://youtu.be/mLKqV_ww0_w?si=2EM0uF4yerCdXRVS)

### その他
バージョン3.0で追加された内容の一部について、参考となるWebサイトの情報を以下に記載しています。

- 課題 331: 暗号化
    - [Let's Encrypt](https://letsencrypt.org/ja/docs/)
    - [cfssl](https://github.com/cloudflare/cfssl)
    - [ACMEについて](https://jprs.jp/pubcert/about/ACME/)
- 課題 332: ホストセキュリティ
    - [USBGuard](https://usbguard.github.io/)
    - [USBGuard](https://wiki.archlinux.jp/index.php/USBGuard)　※Arch Linux
    - [投機的実行に関する脆弱性「Meltdown」と「Spectre」について解説](https://www.trendmicro.com/ja_jp/research/18/a/meltdown-and-spectre-vulnerabilities-related-to-speculative-executions.html)
- 課題 334:ネットワークセキュリティ
    - [strongSwan](https://strongswan.org/)
    - [StrongSwan](https://wiki.archlinux.jp/index.php/StrongSwan)　※Arch Linux
    - [WireGuard](https://www.wireguard.com/)
    - [WireGuard](https://wiki.archlinux.jp/index.php/WireGuard)　※Arch Linux

以下は、筆者が以前書いた記事です。数年前の記事になりますが、参考になれば幸いです。

- [Linuxの監査システム　Auditについて理解する](https://qiita.com/Brutus/items/7ec3d06adf6af6ca24b7)
- [Linuxセキュリテイ対策　ホストの侵入検知（chkrootkit/rkhunter/maldetect）](https://qiita.com/Brutus/items/001ca6285acc9ebc57e1)
- [Linuxセキュリティ　capabilityについて理解する](https://qiita.com/Brutus/items/37d942214b4c6edd08df)
- [Linuxセキュリテイ対策　Snortによる侵入検知](https://qiita.com/Brutus/items/b11c3324492a4e25a152)
- [Linuxのパケットフィルタリングツール](https://qiita.com/Brutus/items/b432e868983cc08533ed)
- [脆弱性とエクスプロイトについて理解する](https://qiita.com/Brutus/items/5b0d332b1f3fd57b714f)

## 試験の受け方
LPICの試験はピアソンVUEで受験しますが、コロナ禍の間に変化があったようです。

### 受験方法
現在は、オンラインで試験可能なOnVUE試験というサービスが提供されています。

詳細については、[OnVUE オンライン監督](https://www.pearsonvue.com/jp/ja/test-takers/onvue-online-proctoring.html)をご確認ください。

::: note
試験を予約する際は、テストセンターで受ける試験と、オンラインのOnVUE試験が表示されるため、ご注意ください。
:::

### バウチャー
Ping-tでは、登録ユーザ向けに受験チケット（バウチャー）が割引価格で販売されています。

会社の経費で落とせない場合は、利用するのが良いかも知れません。

# おわりに
5年ぶりの受験でしたが、試験範囲やピアソンVUEの受験方法も変わっているなど時の流れを感じました。

結果として思ったよりスコアが伸びませんでしたが、とりあえず合格できたので良かったです。

実際に試験を受けると、見たことないコマンドやオプションに遭遇することがあると思いますが、ドキュメントをくまなく読むしか対策のしようがないと思います。

お金と時間をかけて資格を保持する意味についても改めて考えさせられましたが、また一から勉強する機会にもなるため、良かったと思います。

資格の価値は、解釈の仕方ですね。