最終更新日 2025年10月17日

はじめに
LPIC-303(Security)は、Linuxのセキュリティ設計・実装・運用スキルを問う上級資格であり、
LPICシリーズの中でも特に実践的な内容が多い試験です。
暗号技術、アクセス制御、ホスト保護、ネットワークセキュリティなど、セキュリティ運用の核となる知識が幅広く問われます。
この記事では、最新バージョン(Version3.0)に対応したLPIC-303の試験範囲を完全整理。
さらに、各章ごとに「暗記のコツ」や「出題されやすい分野」を解説します。
実務での理解にも役立つ内容なので、試験直前の総復習用チートシートとしても活用できます。
第1章:331 Cryptography(暗号技術)
暗記のポイント
共通鍵暗号(AES)と公開鍵暗号(RSA・ECC)の違いをまず整理。
「共通鍵=高速」「公開鍵=鍵交換・署名」と押さえるのが基本です。
TLS通信では「鍵交換→証明書検証→共通鍵暗号化」という流れを図で覚えると、暗号化通信の全体像が理解しやすくなります。
LUKSやeCryptfsなどLinux固有の暗号化手法も出題頻度が高いので、cryptsetupコマンドの操作例は実機で確認しておくのがおすすめです。
DNSSECやOCSP、Let’s Encryptのような証明書運用系も近年のトレンド問題です。
用語 | 意味 | 主な使い方や構成要素 | 試験でのポイント |
---|---|---|---|
Cryptography | 暗号技術 | データを保護するための数学的技術群 | 暗号化・署名・ハッシュの分類を理解 |
Symmetric Encryption | 共通鍵暗号方式 | 暗号化と復号で同じ鍵を使用 | 代表例:AES、DES、Blowfish |
Asymmetric Encryption | 公開鍵暗号方式 | 公開鍵と秘密鍵を対で利用 | RSA・ECCの構造を理解 |
RSA | 公開鍵暗号方式 | 大きな整数の素因数分解を利用 | 鍵長と性能のバランスが問われる |
ECC | 楕円曲線暗号 | 小さな鍵長で高強度を実現 | TLS1.3で主流(ECDHE) |
AES | 高度暗号化標準 | 共通鍵暗号の標準規格 | CBCとGCMモードの違いを区別 |
DES / 3DES | 古い共通鍵暗号 | 鍵長が短く安全性低下 | AESへの移行が推奨される |
Blowfish | Bruce Schneier設計の暗号 | 高速だが鍵長可変で安全 | SSHやVPNの一部で使用 |
Twofish | Blowfishの改良版 | 256bit鍵で高性能 | AES候補の1つとして有名 |
Hash Function | ハッシュ関数 | データの要約を生成 | 可逆不可、同一入力→同一出力 |
SHA-1 | セキュアハッシュ1 | 160bit出力、脆弱性あり | 現行TLSでは非推奨 |
SHA-256 | SHA-2ファミリ | 256bit出力、安全性高 | GPG、DNSSECなどで利用 |
SHA-3 | Keccakベース | 次世代ハッシュ標準 | Sponge構造を理解 |
MD5 | Message Digest 5 | 古いハッシュ、衝突あり | チェックサム以外では非推奨 |
HMAC | Hash-based MAC | ハッシュ+鍵で認証付与 | SSHやAPI署名で使用 |
Salt | ソルト | パスワードハッシュ強化 | 同一パスでも異なる結果に |
PBKDF2 | Key Derivation Function | パスワードから鍵を導出 | Iteration数を理解 |
bcrypt | パスワードハッシュ関数 | Blowfishベースで高遅延 | /etc/shadowで利用可能 |
scrypt | 強力なKDF | メモリ集約型で耐GPU攻撃 | 暗号資産ウォレットにも使用 |
Argon2 | 近代的KDF | 並列・メモリ制御可能 | 優れた総当り耐性 |
OpenSSL | 暗号ライブラリ/ツール | 証明書・鍵・TLS設定操作 | openssl req , x509 コマンド頻出 |
GPG | GNU Privacy Guard | ファイル・メール暗号化 | 公開鍵の配布と署名理解 |
PGP | Pretty Good Privacy | GPGの元技術 | 鍵リングとトラストモデル |
Digital Signature | 電子署名 | 秘密鍵で署名・公開鍵で検証 | 改ざん検知・認証に利用 |
X.509 | 証明書の標準形式 | サーバ証明書やCAで使用 | PEM/DER形式の違いを覚える |
CSR | Certificate Signing Request | 公開鍵と識別情報を含む | openssl req -new で作成 |
CA | 認証局 | 証明書を発行・署名 | ルート・中間CAの階層構造 |
CRL | 証明書失効リスト | 無効証明書の一覧 | OCSPとの違い理解 |
OCSP | Online Certificate Status Protocol | 証明書の失効を即時確認 | openssl ocsp で確認可能 |
TLS | Transport Layer Security | 通信の暗号化プロトコル | SSLとの後継関係を理解 |
SSL | Secure Sockets Layer | TLSの旧称 | TLS1.0/1.1は廃止済み |
TLS Handshake | ハンドシェイク手順 | 鍵交換・証明書検証 | ECDHE, PSK等を理解 |
Diffie–Hellman | 鍵共有方式 | 共通鍵を安全に生成 | DH, ECDHの違いを理解 |
Ephemeral Key | 一時鍵 | セッション単位の鍵 | 前方秘匿性を実現 |
Perfect Forward Secrecy | 前方秘匿性 | セッション鍵の再利用防止 | ECDHE利用で実現可能 |
LUKS | Linux Unified Key Setup | ディスク暗号化規格 | cryptsetupで操作 |
dm-crypt | カーネル暗号モジュール | LUKSの実装層 | /dev/mapper 構成を理解 |
eCryptfs | 暗号化ファイルシステム | ユーザー単位暗号化 | Ubuntuホーム暗号化など |
FDE | Full Disk Encryption | ディスク全体を暗号化 | OS起動前認証が必要 |
EncFS | ユーザ空間暗号FS | FUSEを利用 | ファイル単位暗号化 |
GPG Agent | 鍵管理デーモン | GPG操作を簡略化 | pinentryなどと連携 |
Keyserver | 鍵配布サーバ | 公開鍵の共有場所 | sks-keyservers.net等 |
TLS Cipher Suite | 暗号スイート | 暗号・認証・ハッシュの組 | ECDHE-RSA-AES256-GCM等 |
HSTS | HTTPS Strict Transport Security | HTTPS強制通信設定 | ヘッダー制御で中間攻撃防止 |
HPKP | Public Key Pinning | サーバ鍵の固定 | 現在は非推奨技術 |
PKCS#12 | 証明書+秘密鍵形式 | .p12 / .pfx 拡張子 | openssl pkcs12 で変換 |
PEM | Base64エンコード証明書 | ヘッダ・フッタ付き | Apache/Nginxで一般的 |
DER | バイナリ証明書形式 | Windowsなどで使用 | PEMとの変換問題に注意 |
PKI | 公開鍵基盤 | CA・証明書・CRL含む | トラストチェーン理解 |
Trust Chain | 信頼の連鎖 | ルート→中間→エンド | 無署名エラーの原因理解 |
Self-signed Certificate | 自己署名証明書 | 内部用途で作成 | ブラウザ警告が出る |
Key Pair | 鍵ペア | 公開鍵と秘密鍵の組 | PEMで管理される |
Private Key | 秘密鍵 | 署名・復号に使用 | 権限600で保護必須 |
Public Key | 公開鍵 | 暗号化・署名検証 | 配布の安全性確保 |
Random Number Generator | 乱数生成器 | 鍵・IV生成に利用 | /dev/random とurandom の違い |
Entropy | エントロピー | 乱数の予測困難性 | セキュリティ品質に直結 |
IV | Initialization Vector | 暗号ブロック初期値 | 再利用禁止が原則 |
CBC | Cipher Block Chaining | 暗号ブロックモード | 同じ平文→異なる暗号文 |
GCM | Galois/Counter Mode | 高速な認証付き暗号 | TLS 1.2以降で主流 |
CTR | Counter Mode | 並列処理が可能 | ストリーム暗号化向き |
OTP | One-Time Pad | 理論上安全な暗号方式 | 実用は困難 |
Kerckhoffs’s Principle | ケルクホフスの原則 | アルゴリズム公開・鍵秘匿 | 暗号理論の基本概念 |
Steganography | ステガノグラフィ | データを隠す技術 | ハッシュや暗号とは別 |
DNSSEC | DNS Security Extensions | DNS応答の署名・検証 | DS, RRSIG, DNSKEYを理解 |
DoT | DNS over TLS | 853番ポートを利用 | 暗号化DNSの1方式 |
DoH | DNS over HTTPS | HTTPS経由でDNS送信 | 検閲回避にも用いられる |
TPM | Trusted Platform Module | 暗号鍵格納用チップ | セキュアブートと連携 |
Secure Boot | 署名済み起動制御 | 改ざん防止機能 | UEFIと連動 |
FIPS 140-3 | 暗号モジュール認証 | 政府調達基準 | OpenSSLのFIPSモード確認 |
rngd | 乱数デーモン | ハードウェアRNG入力 | /dev/random 補強 |
AES-NI | Intel暗号命令拡張 | AES処理高速化 | CPUによるハード支援 |
Key Escrow | 鍵預託 | 第三者による鍵管理 | 組織ポリシーで議論対象 |
Session Key | セッション鍵 | 通信単位で生成 | 前方秘匿性に関与 |
Root CA | 最上位認証局 | 信頼の基点 | 不正発行検知が重要 |
Intermediate CA | 中間認証局 | 発行階層を分離 | 鍵分離により安全性向上 |
User Certificate | 利用者証明書 | クライアント認証用 | mTLSなどで使用 |
Server Certificate | サーバ証明書 | HTTPSやVPNで使用 | CommonName/SAN理解 |
Wildcard Certificate | ワイルドカード証明書 | サブドメイン対応 | *.example.comなど |
OCSP Stapling | サーバ側失効情報提供 | パフォーマンス改善 | TLS応答に失効情報添付 |
Let’s Encrypt | 無料CA | 自動証明書発行 | certbot操作が頻出 |
certbot | ACMEクライアント | 証明書自動取得 | cron更新設定理解 |
ACME | 自動証明書管理プロトコル | HTTP-01等のチャレンジ方式 | Let’s Encryptで使用 |
第2章:332 Host Security(ホストのセキュリティ)
暗記のポイント
ホストのハードニング(不要サービス無効化、最小権限運用)は全章の基礎。
「使わない=閉じる」を意識して構成しましょう。
auditd・AIDE・rkhunterはログ監査・改ざん検知の3大ツール。役割と実行コマンドを区別して覚えることが重要です。
SELinux/AppArmor/PAMの設定ファイルパス(例:/etc/pam.d/)は暗記必須。
実務でよく使うfail2banやfirewalldも頻出。設定構造(zone, jailなど)を押さえると応用問題に対応できます。
/etc/security/limits.confやulimitなどのリソース制御も範囲に含まれます。
用語 | 意味 | 主な使い方や構成要素 | 試験でのポイント |
---|---|---|---|
Host Hardening | ホストの堅牢化 | 不要サービス無効化、最小権限化 | セキュリティの基本概念 |
Minimal Installation | 最小インストール | 不要パッケージを除外 | 攻撃面を最小化 |
Patch Management | パッチ管理 | yum/aptでの更新管理 | 定期更新ポリシー策定 |
yum-cron / unattended-upgrades | 自動更新 | セキュリティパッチ自動適用 | OS別に設定確認 |
Firewall | ファイアウォール | iptables/nftablesを使用 | INPUT/OUTPUTチェーン理解 |
SELinux | 強制アクセス制御 | コンテキストベースの制御 | enforcing/permissive切替 |
AppArmor | プロファイル型MAC | Ubuntu等で使用 | confined/unconfinedモード理解 |
auditd | Linux Auditデーモン | システムイベント記録 | /etc/audit/audit.rules 設定 |
ausearch | 監査ログ検索 | 監査結果フィルタリング | auditctlと併用 |
auditctl | 監査ルール設定 | 動的ルール管理 | 永続設定はaudit.rulesで実施 |
AIDE | 改ざん検知ツール | ファイルのハッシュ検証 | aide --init , --check 理解 |
rkhunter | ルートキット検出 | 既知の不正ファイル探索 | 定期スキャン設定 |
chkrootkit | ルートキット検知 | 軽量検査スクリプト | AIDEと併用推奨 |
Lynis | セキュリティ監査ツール | 総合的脆弱性評価 | lynis audit system 使用 |
psacct / acct | プロセス監査 | コマンド履歴・CPU時間記録 | sa , lastcomm で確認 |
Fail2ban | ログ監視型防御 | ログ解析しIPをブロック | SSHブルートフォース対策 |
logwatch | ログレポート | 日次ログ要約送信 | /etc/logwatch/conf で設定 |
syslog / rsyslog | ログ転送システム | /var/logに記録 | facility.level の理解 |
journald | systemdログ管理 | バイナリ形式ログ | journalctl で閲覧 |
sudo | 特権昇格 | 一時的なroot権限実行 | /etc/sudoers設定と監査 |
visudo | sudo設定エディタ | 構文チェック付き編集 | Defaults logfile も理解 |
su | スーパーユーザ切替 | rootへの直接昇格 | sudoより推奨度低い |
PAM | Pluggable Auth Modules | 認証の統合管理 | /etc/pam.d/ 構成理解 |
pam_unix.so | UNIX認証モジュール | /etc/shadow 連携 | パスワード管理に利用 |
pam_tally2 | ログイン試行制限 | 誤認証回数管理 | アカウントロック対策 |
pam_faillock | 失敗認証制御 | RHEL7以降標準 | deny=3 設定など |
pam_cracklib | パスワード強度検査 | 最小長や複雑性を定義 | pam_pwqualityに移行 |
pam_pwquality | パスワード品質検査 | libpwquality使用 | /etc/security/pwquality.conf |
pam_wheel | 管理者グループ制御 | wheelグループ限定su許可 | su制御問題で頻出 |
passwdコマンド | パスワード変更 | PAM経由で実施 | /etc/shadowを更新 |
shadowファイル | パスワードハッシュ保管 | rootのみ閲覧可 | 最終変更日時も保持 |
nologin | ログイン制限 | シェルをnologinに設定 | サービス専用ユーザ用 |
/etc/security/limits.conf | リソース制限設定 | CPU・メモリ制限 | ulimit と連携 |
ulimit | シェルリソース制限 | 同時プロセス数等制御 | ソフト・ハードリミット理解 |
cgroups | リソース制御機構 | CPU, MEM, IO割当 | systemdと連携可能 |
systemd Resource Control | systemd制御単位 | CPUQuota , MemoryMax 設定 | サービス単位制御理解 |
usermod / groupmod | ユーザ・グループ編集 | UID/GID変更など | ファイル所有権と整合性注意 |
passwd aging | パスワード有効期限管理 | chageで設定 | 有効期限・警告日数 |
chage | パスワード有効期限変更 | -M , -W , -I オプション | shadow情報更新 |
/etc/login.defs | ログイン関連設定 | パスワードポリシー | PASS_MAX_DAYS等設定 |
/etc/security/access.conf | アクセス制御設定 | tty・ホスト制限 | root制限の問題で出題あり |
tcp_wrappers | 接続制御 | /etc/hosts.allow/deny使用 | inetd系で動作 |
hosts.allow / hosts.deny | TCPラッパ設定 | 明示的許可/拒否 | 順序・ワイルドカード理解 |
SSH Hardening | SSHの堅牢化 | rootログイン禁止・鍵認証 | /etc/ssh/sshd_config 設定 |
ssh-keygen | SSH鍵生成 | RSA/ECDSA/ED25519対応 | -t オプションで指定 |
PermitRootLogin | SSH設定項目 | root直接ログイン制御 | no に設定が推奨 |
PasswordAuthentication | パスワード認証可否 | 公開鍵認証推奨 | no でブルート防止 |
AllowUsers / AllowGroups | 接続制限設定 | ログイン制御に利用 | 明示的ホワイトリスト |
Banner | SSHログイン警告 | /etc/issue.net 使用 | 警告文義務化も出題あり |
sftp-server | 安全なファイル転送 | SSH経由で動作 | chroot設定とセットで出題 |
scp | セキュアコピー | SSHトンネル経由転送 | -P , -r オプション理解 |
umask | デフォルト権限設定 | 022/027等指定 | systemd-logind 影響も |
sticky bit | スティッキービット | /tmpファイル保護 | 1777パーミッション理解 |
setuid / setgid | 実行時権限変更 | root権限を委譲 | 不要設定は脆弱性要因 |
capabilities | 細粒度権限管理 | setcap/getcapコマンド | rootレス動作を実現 |
chattr / lsattr | 属性変更ツール | 不変属性+iなど | システムファイル保護 |
sudo logs | sudoログ | /var/log/secure に記録 | 実行履歴と監査に利用 |
/etc/securetty | rootログイン端末制御 | 許可TTY一覧 | 直接rootログイン禁止設定 |
motd | Message of the Day | ログイン時通知 | セキュリティ警告にも活用 |
loginctl | systemdログイン管理 | セッション制御 | ユーザ隔離確認に使用 |
tmpwatch / tmpreaper | 一時ファイル削除 | /tmp自動掃除 | cron設定理解 |
ps / top / htop | プロセス監視 | 不審プロセス確認 | CPU/MEM異常の早期検知 |
netstat / ss | ポート監視 | LISTEN状態確認 | 不要ポート特定に利用 |
lsof | オープンファイル一覧 | ネットワーク関連も確認可 | 不正接続調査 |
systemctl mask | サービス無効化 | 不要デーモン遮断 | マスクとdisableの違い |
cron / crontab | 定期タスク管理 | root権限実行注意 | 改ざん監視に連携 |
atd | 一回限りジョブ | 特定時刻処理 | /etc/at.allow制御 |
tripwire | ファイル整合性検査 | AIDEと類似 | データベース初期化理解 |
firewalld | 動的FW管理 | zoneとservice概念 | firewall-cmd 操作 |
nftables | 新世代FW | iptables後継 | table/chain/rule構造理解 |
tcpdump | パケットキャプチャ | ネットワーク監査 | root権限必須に注意 |
Wireshark | GUIパケット解析 | フィルタ構文使用 | セキュリティ分析でも出題 |
rlimit | リソース制限 | プロセス制御値 | ulimitと同義で出題あり |
auditbeat | 軽量監査ツール | Elastic Stack統合 | auditd代替理解 |
logrotate | ログローテーション | サイズ/期間指定で圧縮 | /etc/logrotate.conf 設定 |
rootkit | 不正侵入型マルウェア | カーネル改ざん | 兆候検知が重要 |
integrity check | 整合性検査 | AIDE・Tripwireで実施 | 初期DBとの比較理解 |
CVE | Common Vulnerabilities | 既知脆弱性識別番号 | CVSSスコアと併用 |
CVSS | Vulnerability Scoring | 脆弱性重大度評価 | Base/Temporalスコア理解 |
Kernel Hardening | カーネル強化 | sysctl設定、ASLR等 | kernel.randomize_va_space |
sysctl | カーネルパラメータ設定 | /etc/sysctl.conf使用 | net.ipv4.conf.all.rp_filter 等 |
ASLR | Address Space Layout Randomization | アドレス空間ランダム化 | バッファ攻撃対策 |
NoExec Stack | 実行不可スタック | NXビット | OSレベル防御技術 |
PaX | カーネル保護パッチ | exec制御 | grsecurityの一部 |
grsecurity | 拡張セキュリティパッチ | RBAC含む | LPIC試験に登場あり |
tmpfs | 一時ファイルシステム | /tmp保護 | noexecオプションで強化 |
mountオプション | noexec/nosuid/nodev | ファイル実行制御 | /etc/fstab 設定で出題あり |
fstab | ファイルシステム設定 | マウント制御 | セキュリティオプション確認 |
rootkit hunter | ルートキット検知 | rkhunter | 更新DBの重要性理解 |
Intrusion Detection | 侵入検知 | AIDE・Snort・OSSEC | 監視種別を理解 |
Intrusion Prevention | 侵入防止 | Fail2ban, SELinux | ホスト防御層の強化 |
Vulnerability Scan | 脆弱性スキャン | OpenVAS, Nessus | CVE参照と対処法理解 |
第3章:333 Access Control(アクセス制御)
暗記のポイント
DAC・MAC・RBACの違いを明確に区別しましょう。
「DAC=所有者任意」「MAC=ポリシー強制」「RBAC=役割基準」と覚えるのが定番です。
SELinuxは「コンテキスト(user:role:type:level)」構造を正確に暗記。
特にtype(例:httpd_t)がアクセス制御の中心です。
AppArmorはプロファイルベースMAC。Ubuntu系で出題されやすいです。
ACL(setfacl / getfacl)のmask・default ACLなども試験に出やすい小ネタ。
PAMモジュールの役割(pam_unix, pam_faillock, pam_access)はファイル連携先とセットで暗記。
用語 | 意味 | 主な使い方や構成要素 | 試験でのポイント |
---|---|---|---|
Access Control | アクセス制御 | システムリソースへの権限管理 | DACとMACの違いを理解 |
DAC | Discretionary Access Control | 所有者がアクセス権を決定 | Unix標準の制御モデル |
MAC | Mandatory Access Control | ポリシーに基づく強制制御 | SELinux/AppArmorが代表 |
RBAC | Role Based Access Control | 役割に基づく制御 | SELinuxのType Enforcementに類似 |
ABAC | Attribute Based Access Control | 属性に基づく動的制御 | Cloud IAMでの概念と比較理解 |
UID | User ID | 各ユーザ識別番号 | root=0 は特権ユーザ |
GID | Group ID | 所属グループ識別番号 | /etc/group で管理 |
/etc/passwd | ユーザ情報ファイル | ユーザ名, UID, GID 等 | ハッシュはx 参照先shadow |
/etc/shadow | パスワード情報 | 暗号化パスワード格納 | rootのみ閲覧可 |
/etc/group | グループ定義 | 成員管理 | 二次グループ制御 |
chown | 所有者変更 | ファイルのUID/GID変更 | -R オプションで再帰変更 |
chmod | 権限変更 | rwx形式または数値指定 | 755や644の意味を理解 |
umask | デフォルト権限設定 | 作成時の逆マスク | 022 → 755/644の生成結果 |
sticky bit | スティッキービット | /tmpなどで他者削除防止 | 1777設定を理解 |
setuid | 実行時に所有者権限で動作 | root権限委譲に利用 | セキュリティリスク高 |
setgid | 実行時にグループ権限付与 | グループ継承 | ディレクトリ共有時に有用 |
ACL | Access Control List | 細粒度アクセス制御 | getfacl , setfacl コマンド |
getfacl | ACL確認 | ファイル権限の拡張表示 | 標準パーミッションとの違い |
setfacl | ACL設定 | u:ユーザ名:rwx など | default ACLも設定可能 |
mask (ACL) | ACL制限マスク | 最大有効権限を定義 | effective権限に影響 |
default ACL | 新規ファイル継承権限 | ディレクトリACLに設定 | d:u:user:rwx 形式 |
SELinux | Security Enhanced Linux | MAC実装 | コンテキストとモード理解 |
SELinux Mode | 動作モード | enforcing, permissive, disabled | 出題頻度高 |
getenforce | モード確認 | 現在のSELinux状態確認 | enforcing=有効 |
setenforce | モード変更 | 一時的に変更 | 永続設定はconfigで行う |
/etc/selinux/config | SELinux設定ファイル | 永続モード設定 | SELINUX=enforcing など |
SELinux Context | セキュリティ属性 | user:role:type:level 構造 | typeが最も重要 |
Type Enforcement | 型強制 | セキュリティドメイン間制御 | httpd_t などドメイン概念理解 |
seinfo | SELinux情報取得 | ポリシー内の要素確認 | audit2allowと併用 |
semanage | コンテキスト管理 | ファイル・ポート・ブール値変更 | semanage fcontext , port など |
restorecon | コンテキスト再設定 | 設定ポリシーを適用 | SELinux修復で頻出 |
chcon | 一時的コンテキスト変更 | 永続ではない | semanageと使い分け |
getsebool / setsebool | ブール値操作 | 機能制御スイッチ | httpd_enable_homedirs 等 |
booleans | SELinuxブール値 | 一時的機能許可 | getsebool -a で一覧 |
audit2allow | ポリシー生成ツール | 拒否ログから許可ルール生成 | SELinuxトラブル解決で必須 |
/var/log/audit/audit.log | SELinuxログ | 拒否動作が記録される | AVCメッセージ解析問題頻出 |
sealert | GUI診断ツール | setroubleshoot連携 | 対処提案を自動生成 |
AppArmor | 軽量MAC実装 | プロファイルベース制御 | Ubuntu系で標準採用 |
/etc/apparmor.d | プロファイル配置場所 | 各プロセス単位定義 | deny/allowルール理解 |
aa-status | 状態確認コマンド | enforce/complain確認 | systemd単位で動作 |
aa-complain / aa-enforce | モード切替 | 試験用or強制適用 | 状況に応じ切替出題 |
aa-logprof | プロファイル生成補助 | ログからポリシー更新 | トレーニング問題で頻出 |
Capability | Linux機能権限分割 | root権限を細分化 | setcap , getcap で操作 |
CAP_NET_BIND_SERVICE | 低ポートバインド権限 | 1024未満ポート使用 | 非rootプロセスに許可可能 |
CAP_SYS_ADMIN | 最強権限 | root相当操作 | 乱用厳禁・危険性高 |
setcap | ケーパビリティ付与 | setcap CAP_NET_BIND_SERVICE=+ep /bin/app | 実行ファイル単位設定 |
getcap | ケーパビリティ確認 | ファイル権限を確認 | セキュリティ監査で活用 |
suid binary | setuidバイナリ | root昇格可能プログラム | /usr/bin/passwd など |
sudoersファイル | sudo設定ファイル | /etc/sudoers | visudo 経由で編集 |
visudo | 安全なsudo設定エディタ | 構文エラー防止 | 環境変数制御も可 |
Defaults logfile | sudoログ設定 | 実行履歴記録 | コンプライアンス試験に出題 |
requiretty | TTY必須設定 | リモート実行制御 | CI環境設定で話題 |
wheel group | 管理者グループ | su制限に使用 | pam_wheelと併用可能 |
PAM | 認証モジュール体系 | login/su/sudo制御 | /etc/pam.d/ 構造理解 |
/etc/pam.d/system-auth | 共通認証設定 | パスワードやロックポリシー | 変更が全サービスに影響 |
pam_access.so | アクセス制御モジュール | ホスト・ユーザ単位制御 | /etc/security/access.conf 連携 |
pam_time.so | 時間制御モジュール | ログイン許可時間制限 | 勤務時間外アクセス制御 |
pam_tally2.so / pam_faillock.so | ログイン試行制限 | 失敗回数に応じロック | deny= 設定を理解 |
pam_limits.so | リソース制限 | /etc/security/limits.conf使用 | CPU/MEM制限も可 |
pam_exec.so | コマンド実行 | 認証時に任意コマンド起動 | カスタム認証で使用 |
pam_listfile.so | ホワイト/ブラック制御 | リスト参照で許可判断 | ファイル経路設定問題あり |
chage | パスワード有効期限設定 | -M , -W , -I 指定 | 定期変更ルール理解 |
login.defs | ログイン定義 | PASS_MAX_DAYS等設定 | aging関連出題多い |
/etc/security/pwquality.conf | パスワード品質設定 | 最小長・複雑性 | pam_pwqualityと連携 |
password aging | パスワード有効期限 | 定期変更要求 | セキュリティポリシー策定 |
usermod -L / -U | アカウントロック解除 | 認証拒否状態制御 | ロック機構との違い理解 |
nologin | ログイン禁止シェル | アカウント制限 | サービス専用ユーザで使用 |
restricted shell | 制限付きシェル | コマンド実行制限 | chroot環境で補強可 |
chroot | ルート変更 | 仮想的隔離環境 | SFTP/FTPなどで利用 |
jailkit | chroot補助ツール | 限定シェル実装 | /etc/passwd設定で出題あり |
RBAC in SELinux | ロールベース制御 | roleとtypeの関連 | Linux版RBAC理解が重要 |
MLS | Multi-Level Security | ラベルによる階層制御 | 機密区分制御 (Secret等) |
MCS | Multi-Category Security | 分類別アクセス制御 | SELinuxカテゴリ管理 |
seuser | SELinuxユーザ | Linuxユーザと対応付け | semanage login -l 確認 |
semanage login | SELinuxログインマッピング | Linuxユーザ→seuser対応 | role/typeと紐付く |
selinuxlabel | ファイルラベル | system_u:object_r:httpd_sys_content_t:s0 | typeが最も重要 |
permissive domain | 部分的無効モード | 特定タイプのみpermissive | 調査・学習用途で出題 |
user private group | ユーザ専用グループ | 1ユーザ=1グループ | ファイル共有制御に関係 |
groupadd / groupdel | グループ操作 | 管理対象を制御 | 所属変更の影響理解 |
suid root exploit | setuid脆弱性 | 権限昇格攻撃 | 検出・削除対策理解 |
file permission bits | 9ビット権限 | rwx構成 | SUID, SGID, Sticky含む |
extended attributes | 拡張属性 | chattr/lsattrで管理 | 不変+i属性出題あり |
Immutable Bit | 不変属性 | ファイル削除防止 | rootでも変更不可 |
ACL inheritance | 継承制御 | default ACL適用 | ディレクトリ操作時理解 |
POSIX ACL | ACL標準仕様 | getfacl/setfacl準拠 | 拡張パーミッション理解 |
capability bounding set | カーネル能力制限 | systemd unit単位で設定 | コンテナ制御にも関連 |
systemd sandboxing | サービス分離 | ProtectSystem, NoNewPrivileges | SELinux連携も試験対象 |
NoNewPrivileges | 新規権限獲得防止 | systemd設定 | true で安全化 |
PrivateTmp | systemd隔離機能 | サービスごとの/tmp分離 | 競合防止に有効 |
ProtectHome | systemd設定 | /homeアクセス遮断 | Webサーバ設定で出題あり |
protect kernel tunables | カーネル制御防止 | ProtectKernelTunables | systemdセキュリティ強化項目 |
第4章:334 Network Security(ネットワークセキュリティ)
暗記のポイント
ネットワーク問題は「iptables→nftables→firewalld」の進化系統を押さえるのがカギ。
コマンド構造・テーブル・チェーンの関連を図で覚えると整理しやすいです。
VPN関連はIPsec(AH/ESP/IKE)とOpenVPN/WireGuardを比較して暗記。
設定ファイル名・ポート番号・暗号方式を押さえましょう。
IDS/IPS(Snort, Suricata, OSSEC)などの検知系は「検出層と動作モード(inline / passive)」の違いを理解。
/etc/sysctl.confによるカーネルレベル防御設定(rp_filter, tcp_syncookies)も出題頻度高めです。
DNSSECやDoT/DoHなどの新プロトコルも最新バージョン(3.0)では要チェック。
用語 | 意味 | 主な使い方や構成要素 | 試験でのポイント |
---|---|---|---|
Network Hardening | ネットワーク堅牢化 | 不要ポート・サービス停止 | セキュリティ基本対策 |
iptables | パケットフィルタリング | 旧来のLinux FW機能 | チェーン構造を理解 |
nftables | 次世代パケットフィルタ | iptables後継 | table , chain , rule 構成 |
firewalld | 動的FW管理 | zone, service 概念 | firewall-cmd 操作問題多い |
zone | Firewalldセキュリティ領域 | trusted, publicなど | インターフェース単位設定 |
masquerade | NAT変換設定 | 内部→外部IP変換 | ソースNAT設定で頻出 |
DNAT / SNAT | 宛先・送信元NAT | ポート転送設定 | iptables/nftablesで共通 |
ipset | IP集合管理 | 多数IPの高速処理 | ホワイト/ブラックリスト用途 |
conntrack | コネクショントラッキング | ステートフルFWの基礎 | ESTABLISHED状態を理解 |
INPUT / OUTPUT / FORWARD | iptablesチェーン | パケット方向別制御 | どのチェーンで動作するか出題 |
DROP / REJECT | パケット破棄動作 | 応答有無の違い | テストでの挙動理解 |
LOG target | ログ出力設定 | 監査記録を残す | rate-limit制御併用可 |
fail2ban | ログ監視型防御 | SSHブルートフォース防止 | jail設定理解 |
Port Knocking | ポートノック認証 | 隠しアクセス制御 | IDS回避策理解 |
tcp_wrappers | 接続制御(古典的) | /etc/hosts.allow/deny使用 | inetd環境での制御理解 |
TCP Wrappers廃止 | systemd-socket代替 | 新環境では無効 | 試験での差異理解 |
SSH Hardening | SSH強化設定 | root禁止・鍵認証 | sshd_config 主要項目理解 |
PermitRootLogin | SSH設定項目 | rootログイン制御 | no に設定推奨 |
PasswordAuthentication | パスワード認証可否 | 鍵認証を推奨 | no 指定理解 |
AllowUsers / AllowGroups | 接続制御設定 | 特定ユーザのみ許可 | 安全運用に必須 |
Port Forwarding | ポート転送 | ssh -L ローカル転送 | 動作方向を理解 |
Reverse Tunnel | 逆方向トンネル | ssh -R | FW越え通信に利用 |
ProxyCommand | SSHプロキシ設定 | bastion経由接続 | JumpHost構成理解 |
scp / sftp | 安全なファイル転送 | SSH経由転送 | 暗号化転送を実現 |
TLS | 通信暗号化 | HTTPS, SMTP, IMAP等 | ハンドシェイク理解 |
STARTTLS | 通信中暗号化開始 | SMTP/IMAP/POP等で使用 | 明示TLSとの違いを理解 |
stunnel | 汎用TLSトンネル | 平文通信をTLS化 | SMTP/IMAPなどで応用 |
VPN | 仮想専用ネットワーク | 暗号化トンネル通信 | site-to-site / remote区別 |
IPsec | ネットワーク層VPN | AH, ESPプロトコル | トランスポート/トンネル理解 |
ESP | Encapsulating Security Payload | データ暗号+認証 | AHとの違いを理解 |
AH | Authentication Header | 認証のみ | NAT環境非対応に注意 |
IKE | Internet Key Exchange | 鍵交換プロトコル | IKEv1/v2の違い理解 |
IKEv2 | IPsec鍵交換最新版 | 再接続効率改善 | strongSwan設定に使用 |
strongSwan | IPsec実装 | /etc/ipsec.confで設定 | 認証方式RSA/EAP理解 |
OpenVPN | SSLベースVPN | TLS利用・ポートUDP/1194 | 証明書と鍵設定問題あり |
WireGuard | 近代VPN | UDPベース・シンプル構成 | wgコマンド構成理解 |
wg / wg-quick | WireGuard設定 | wg0.conf で定義 | 秘密鍵とピア鍵対応理解 |
TUN/TAP | 仮想ネットIF | L3/L2モードVPN用 | トンネル動作理解 |
GRE Tunnel | 汎用カプセル化 | IP-in-IP転送 | 暗号なしVPN構成 |
SSH Tunnel | SSHベースVPN | 簡易暗号トンネル | OpenVPN比較理解 |
Netfilter | Linuxパケット制御層 | iptables/nftables基盤 | フックポイント理解 |
conntrack-tools | コネクション追跡 | conntrack -L | 状態保持確認 |
IDS | Intrusion Detection System | 不正侵入検知 | Snort, Suricataなど |
IPS | Intrusion Prevention System | 不正侵入防止 | inlineモード理解 |
Snort | 代表的IDS | ルールベース検知 | /etc/snort/rules/ 設定 |
Suricata | 高速IDS/IPS | マルチスレッド対応 | YAML設定構成理解 |
OSSEC | ホスト型IDS | ログ監視・HIDS | agent/server構成理解 |
Tripwire | 整合性監査 | ファイル改ざん検出 | 初期DB作成理解 |
AIDE | 軽量整合性検出 | ファイル変更監視 | --init , --check 出題頻出 |
auditd | カーネル監査デーモン | イベントロギング | /etc/audit/rules.d/ 構成理解 |
SIEM | Security Information Management | ログ統合分析 | OSSIM, Splunk等理解 |
tcpdump | パケットキャプチャ | CLI解析ツール | root権限で利用 |
Wireshark | GUIキャプチャ | TLS復号可能 | フィルタ構文に慣れる |
netstat / ss | ソケット一覧 | ポート・接続確認 | 不正通信発見に利用 |
nmap | ネットワークスキャナ | ポート/OS検出 | -sS , -sU オプション理解 |
Hping3 | パケット生成ツール | ファイアウォール検査 | ステルススキャン理解 |
OpenVAS | 脆弱性スキャナ | CVE参照 | レポート分析問題に出題 |
Nessus | 商用脆弱性スキャナ | WebUIで制御 | CVSSスコアとの関係理解 |
ARP Spoofing | 攻撃手法 | ARPキャッシュ偽装 | arpwatch検知が有効 |
MAC Flooding | スイッチ攻撃 | CAMテーブル枯渇 | port security対策理解 |
Port Mirroring | ミラーポート設定 | IDS接続用途 | 監視用トラフィック複製 |
SSL/TLS Inspection | 通信復号監査 | ProxyによるTLS中継 | 信頼証明書導入理解 |
HTTPS Proxy | 暗号通信プロキシ | MITM監査に使用 | 企業環境での利用出題 |
DNSSEC | DNS応答署名 | RRSIG, DS, DNSKEY利用 | 署名検証手順理解 |
DoT | DNS over TLS | ポート853利用 | 中間者攻撃対策 |
DoH | DNS over HTTPS | ポート443利用 | プライバシー保護 |
VPN Split Tunnel | 一部通信をVPN外 | 柔軟なルーティング | 情報漏えいリスク理解 |
Proxy Server | トラフィック中継 | Squidなど | キャッシュ+フィルタ理解 |
Squid | 代表的Proxy | ACLで制御可能 | キャッシュ制御理解 |
reverse proxy | 逆プロキシ | WAFやロードバランス用途 | Nginx/Apache設定問題 |
WAF | Web Application Firewall | HTTP層保護 | OWASP Top10対策理解 |
ModSecurity | Apache用WAFモジュール | CRSルール使用 | ログ監視で分析問題あり |
Failover Cluster | 高可用性構成 | Heartbeat, Corosync利用 | HAとセキュリティ併用理解 |
HAProxy | 負荷分散兼FW制御 | TCP/HTTP LB | ACLルール理解 |
Reverse Path Filtering | 送信元検証 | rp_filter sysctl設定 | IPスプーフィング防止 |
rp_filter | カーネルパラメータ | 0/1/2モード設定 | 全方向チェック理解 |
sysctl | ネット設定管理 | /etc/sysctl.conf | net.ipv4.conf.all.accept_source_route=0 |
ICMP Redirect | ルーティング更新通知 | 無効化が推奨 | 攻撃悪用されやすい |
Source Routing | 送信元経路指定 | 無効化必須 | accept_source_route=0 設定 |
SYN Flood | DoS攻撃 | 半開TCPセッション攻撃 | SYN Cookies対策理解 |
SYN Cookies | カーネル防御機能 | TCP握手保護 | net.ipv4.tcp_syncookies=1 |
DDoS | 分散DoS攻撃 | 複数ホストから攻撃 | IDS/Rate-limit対策 |
Rate Limit | 通信制限 | iptables limitモジュール | --limit 10/s 構文理解 |
QoS / tc | 帯域制御 | tc qdisc add | 帯域制限+防御応用 |
VPN Authentication | VPN認証方式 | PSK, RSA, EAP | IKE方式ごとに出題あり |
TLS Version | 暗号化プロトコル世代 | TLS1.2/1.3比較 | 廃止プロトコルを理解 |
Cipher Suite | 暗号スイート | AES-GCM, ChaCha20等 | 強度順序理解 |
HSTS | HTTPS強制通信 | HTTPヘッダー設定 | 中間者攻撃防止に重要 |
Public Key Pinning | 鍵固定化技術 | HPKPヘッダー | 現在非推奨の知識確認 |
VPN Split Tunneling | 部分ルーティング | 柔軟だがリスク有 | 情報漏えいの要因理解 |
SIEM Integration | ログ統合分析 | Syslog→Elastic連携 | 複数ホスト監査の基盤 |
Zero Trust Network | ゼロトラスト概念 | 認証・暗号化前提 | 現代セキュリティ潮流 |
IPSec Policy | IPsecポリシー | /etc/ipsec.conf | トンネル/トランスポート指定 |
certificate-based VPN | 証明書認証VPN | OpenVPN, IPsec共通 | 鍵管理と失効制御 |
その他参考情報
LPIC303に関するその他参考情報を以下に記載します。
LPIC-3 303 試験概要(Version 3.0対応)
項目 | 内容 |
---|---|
試験コード | 303-300 |
試験時間 | 90分 |
問題数 | 60問(選択式+記述式) |
認定の有効期間 | 5年 |
前提条件 | LPIC-2 の認定を保持していること |
試験テーマ | Linuxセキュリティ(暗号化、アクセス制御、ネットワークセキュリティなど) |
試験バージョン | Version 3.0 |
注意事項 | LPIC-3 シリーズの中でもセキュリティに特化した試験で、Linuxシステムの防御・暗号化・アクセス制御を中心に出題されます。 |
出題範囲(Topic別・重み付き)
トピック | 主な内容 | 重み(試験での比率目安) |
---|---|---|
331:Cryptography(暗号技術) | X.509証明書とPKI、証明書管理、暗号化ファイルシステム(LUKS/eCryptfs)、DNSSEC、GPGなど | 約5 |
332:Host Security(ホストセキュリティ) | システムハードニング、侵入検知(IDS)、リソース制御(ulimit、cgroups)、ログ監査 | 約6 |
333:Access Control(アクセス制御) | DAC、MAC(SELinux/AppArmor)、ACL、拡張属性、認可ポリシー設計 | 約6 |
334:Network Security(ネットワークセキュリティ) | ファイアウォール、VPN、侵入防止(IPS)、IDS設定、無線LAN暗号化 | 約5 |
335:Threats and Vulnerability Assessment(脅威と脆弱性評価) | スキャン(nmap)、脆弱性分析、ペネトレーションテスト、脅威モデリング | 約3 |
各トピックの補足説明・要注意点
トピック | 主な内容・キーワード |
---|---|
331:Cryptography(暗号技術) | – X.509証明書の構造、公開鍵基盤(PKI)、証明機関(CA)の信頼チェーン – 証明書署名、CRL、OCSP、自己署名証明書の作成・管理 – ファイル暗号化(LUKS、eCryptfs)、DNSSEC、GPGの基本操作 |
332:Host Security(ホストセキュリティ) | – システムハードニング手法(不要サービスの停止、権限管理) – 侵入検知:chkrootkit、rkhunter、AIDEなど – リソース制御:ulimit、cgroups、auditdによる監査 – ログの整合性検証・改ざん検知 |
333:Access Control(アクセス制御) | – DAC(任意アクセス制御)、MAC(SELinux/AppArmor) – 拡張属性(xattr)、ACL(getfacl/setfacl) – SELinuxのモード(enforcing/permissive/disabled)とコンテキスト管理 – 認可ポリシー、ユーザ権限の最小化設計 |
334:Network Security(ネットワークセキュリティ) | – iptables/nftablesによるパケットフィルタリング – IDS/IPS(Snort、Suricata)の検知・ルール設定 – VPN構築(OpenVPN、IPsec、WireGuard) – 無線セキュリティ(WPA2/WPA3)とTLS通信の安全設計 |
335:Threats and Vulnerability Assessment(脅威と脆弱性評価) | – 脆弱性スキャン:nmap、OpenVAS、Metasploitの概要 – 脅威分析、脆弱性評価手順、ペネトレーションテストの流れ – OS識別・ポートスキャン・サービス検出・脅威軽減策の実装 |