LPIC-303 Objectives V3.0(JA)
Contents
はじめに
ここ修正!!これは、 LPIC-3認定試験LPIC-3認定試験[LPIC-3|here]]に必要な項目です。
バージョン情報
の試験範囲は、バージョン3.0.0です。
試験範囲の翻訳
このwikiに、以下の試験範囲の翻訳があります:
- 英語
- 日本語
試験範囲
課題 331: 暗号化
331.1 X.509証明書と公開鍵基盤 (総重量: 5)
総重量 | 5 |
説明 | X.509証明書と公開鍵基盤を理解している必要がある。認証局/CAを実装するのために、OpenSSLを設定し利用したり、様々な目的のために、SSL証明書を発行することを知っている必要があります。 |
主な知識分野:
- X.509証明書、X.509証明書のライフサイクル、X.509証明書のフィールドとX.509v3証明書拡張を理解している。
- 証明書の透明性(CT: certificate transparency)を含む、信頼の連鎖(trust chains)と公開鍵基盤を理解している。
- 公開鍵と秘密鍵の生成と管理。
- 認証局/CAを作成・操作・厳重に管理する。
- サーバ・クライアント証明書を、要求・署名・管理する。
- 証明書と認証局/CAを無効にする。
- Let's Encrypt, ACME, certbotの基本的な特徴の知識。
- CFSSLの基本的な特徴の知識。
用語とユーティリティ:
- openssl (関連するサブコマンドを含む)
- OpenSSLの設定
- PEM, DER, PKCS
- CSR
- CRL
- OCSP
331.2 暗号化・署名・認証のためのX.509証明書 (総重量: 4)
総重量 | 4 |
説明 | サーバ・クライアント認証両方のために、X.509証明書を利用することができる。 これには、Apache HTTPDのユーザとサーバ認証の実装が含まれる。Apache HTTPDのバージョンは2.4以上を対象としている。 |
主な知識分野:
- プロトコルバージョンと暗号(cipher)を含む、SSL, TLSの理解。
- Apache HTTPDのmod_sslを利用して、SNI, HSTSを含む、HTTPSサービスを提供できるように設定する。
- 証明書の連鎖を提供し、cipherの設定を調節して、Apache HTTPDのmod_sslを設定する(cipherに特化した知識ではない)。
- 証明書を利用して、ユーザ認証をするようにApache HTTPDのmod_sslをせっていする。
- OCSPを提供するように、Apache HTTPDのmod_sslを設定する。
- OpenSSLを、SSL/TLSクライアントとサーバのテストに利用する。
用語とユーティリティ:
- httpd.conf
- mod_ssl
- openssl (関連するサブコマンドを含む)
331.3 暗号化ファイルシステム (総重量: 3)
総重量 | 3 |
説明 | 暗号化ファイルシステムを構築し設定できる。 |
主な知識分野:
- ブロックデバイスとファイルシステム暗号化を理解する。
- ブロックデバイスを暗号化するために、LUKS1によるdm-cryptを利用する。
- ファイルシステムを暗号化するために、eCryptfsを利用する。これには、ホームディレクトリとPAM統合を含まれる。
- plainモードのdm-cryptの知識
- LUKS2機能の知識
- LUKSデバイスのClevisと、TMP2とNetwork Bound Disk Encryption (NBDE)/TangのClevis PINの概念的な理解。
用語とユーティリティ:
- cryptsetup (関連するサブコマンドを含む)
- cryptmount
- /etc/crypttab
- ecryptfsd
- ecryptfs-* commands
- mount.ecryptfs, umount.ecryptfs
- pam_ecryptfs
331.4 DNSと暗号化 (総重量: 5)
総重量 | 5 |
説明 | BINDを利用した際の、DNSの背景と実装について、暗号化の知識と経験がある。BINDのバージョンは9.7とそれ以上を対象としている。 |
主な知識分野:
- DNS・ゾーン・リソースレコードの概念を理解している。
- 鍵署名鍵、ゾーン署名鍵、DS, DNSKEY, RRSIG, NSEC, NSEC3, NSEC3PARAMなどの関連するDNSレコードを含み、DNSSECを理解している。
- DNSSECセキュアゾーンを提供している権威のあるネームサーバとしての、BINDの設定をトラブルシューティング。
- DNSSECの署名されたゾーンを管理する。これには、キー生成・キーのロールオーバー・ゾーンの再署名が含まれます。
- クライアントの振る舞いがDNSSECバリデーションとして機能する、再帰ネームサーバとしてBINDを設定する。
- CAAやTLSAのようなDNSレコードに関連する、CAAとDANEの理解。
- DNSで、X.509証明書と認証局/CAの情報を発行する、CAAとDANEを利用する。
- BINDでセキュアな接続を行うため、TSIGを利用する。
- DNS over TLSとDNS over HTTPSの知識。
- マルチキャストDNSの知識。
用語とユーティリティ:
- named.conf
- dnssec-keygen
- dnssec-signzone
- dnssec-settime
- dnssec-dsfromkey
- rndc (関連するサブコマンドを含む)
- dig
- delv
- openssl (関連するサブコマンドを含む)
課題 332: ホストセキュリティ
332.1 ホストハードニング (総重量: 5)
総重量 | 5 |
説明 | 一般的な脅威に対して、Linuxが稼働しているコンピュータをよりセキュアにする。 |
主な知識分野:
- BIOSとboot loader(GRUB 2)セキュリティの設定。
- 利用していないソフトウエアとサービスを無効化する。
- 特定のsystemdユニットと全体システムに対して、不必要な機能を理解し削除する。
- アドレス空間のランダム化(ASLR: Address Space Layout Randomization )、Data Execution Prevention (DEP) 、 Exec-Shieldを理解し設定する。
- ブラックリスト・ホワイトリストに分けられたUSBデバイスを、USBGuardを利用して、コンピュータに接続する。
- CAを利用してホストとユーザーキーのSSH CA、SSH証明書を作成し、OpenSSHがSSH証明書を利用するように設定する。
- chroot環境での作業
- システムコールとプロセスに対して有効な機能を制限するために、systemdユニットを利用する。
- 特定のファイルやデバイスに、アクセスを制限したりアクセスさせないようにして、プロセスを起動するようにsystemdユニットを利用する。
- 専用のテンポラリディレクトリや/devディレクトリがあり、ネットワークアクセスができない状態のプロセスを起動するように、systemdユニットを利用する。
- プロセスが消費することができるシステムリソースを制限するように、systemdユニットを利用することができる。
- Linux MeltdownとSpectreの回避策の影響の理解と、回避策の有効化・無効化。
- polkitの知識
- 仮想化とコンテナ化のセキュリティの利点の知識
用語とユーティリティ:
- grub.cfg
- systemctl
- getcap
- setcap
- capsh
- sysctl
- /etc/sysctl.conf
- /etc/usbguard/usbguard-daemon.conf
- /etc/usbguard/rules.conf
- usbguard
- ssh-keygen
- /etc/ssh/
- ~/.ssh/
- /etc/ssh/sshd_config
- chroot
332.2 ホストの侵入検知 (総重量: 5)
総重量 | 5 |
説明 | 一般的なのホスト侵入検知ソフトウエアの利用と設定の知識がある必要がある。これには、Linux Auditシステムとシステムの一貫性の検証が含まれる。 |
主な知識分野:
- Linux Auditシステムの設定と利用
- chkrootkitの利用
- rkhunterの、利用・設定・アップデート
- Linux Malware Detect(マルウェア検出ツール)の利用。
- cronを利用したホストのスキャンの自動化。
- インストールされたファイルの一貫性の検証のため、RPMやDPKGのパッケージ管理ツールの利用。
- ルール管理を含んだAIDEの設定と利用。
- OpenSCAPの知識
用語とユーティリティ:
- auditd
- auditctl
- ausearch, aureport
- auditd.conf
- audit.rules
- pam_tty_audit.so
- chkrootkit
- rkhunter
- /etc/rkhunter.conf
- maldet
- conf.maldet
- rpm
- dpkg
- aide
- /etc/aide/aide.conf
332.3 リソース制御 (総重量: 3)
総重量 | 3 |
説明 | サービスとプログラムが利用可能なリソースを制限できる。 |
主な知識分野:
- ulimitsの理解と設定
- クラス・リミット・アカウンティングを含むcgroupsの理解。
- cgroupsの管理と、cgroup associationの加工。
- スライスを含む、systemdリソース制御の理解
- systemdユニットのリソース制限の設定。
- cgmanagerとlibcgroupユーティリティーの知識。
用語とユーティリティ:
- ulimit
- /etc/security/limits.conf
- pam_limits.so
- /sys/fs/group/
- /proc/cgroups
- systemd-cgls
- systemd-cgtop
課題 333: Access Control
333.1 任意アクセス制御 (総重量: 3)
総重量 | 3 |
説明 | 任意アクセス制御(DAC: discretionary access control)を理解していて、アクセス制御リスト(ACL: access control list)を利用してどのように実装するかの知識があります。さらに、拡張された属性をどのように利用するかを理解しているひつようがあります。 |
主な知識分野:
- SetUID, SetGIDビットを含む、ファイルの所有権・パーミッションの管理と理解。
- アクセス制御リスト(ACL)の管理と理解。
- 拡張属性と属性クラスの管理と理解。
用語とユーティリティ:
- getfacl
- setfacl
- getfattr
- setfattr
333.2 Mandatory Access Control (weight: 5)
Weight | 5 |
Description | Candidates should be familiar with mandatory access control (MAC) systems for Linux. Specifically, candidates should have a thorough knowledge of SELinux. Also, candidates should be aware of other mandatory access control systems for Linux. This includes major features of these systems but not configuration and use. |
Key Knowledge Areas:
- Understand the concepts of type enforcement, role based access control, mandatory access control and discretionary access control
- Configure, manage and use SELinux
- Awareness of AppArmor and Smack
Partial list of the used files, terms and utilities:
- getenforce
- setenforce
- selinuxenabled
- getsebool
- setsebool
- togglesebool
- fixfiles
- restorecon
- setfiles
- newrole
- setcon
- runcon
- chcon
- semanage
- sestatus
- seinfo
- apol
- seaudit
- audit2why
- audit2allow
- /etc/selinux/*
Topic 334: Network Security
334.1 Network Hardening (weight: 4)
Weight | 4 |
Description | Candidates should be able to secure networks against common threats. This includes analyzing network traffic of specific nodes and protocols. |
Key Knowledge Areas:
- Understand wireless networks security mechanisms
- Configure FreeRADIUS to authenticate network nodes
- Use Wireshark and tcpdump to analyze network traffic, including filters and statistics
- Use Kismet to analyze wireless networks and capture wireless network traffic
- Identify and deal with rogue router advertisements and DHCP messages
- Awareness of aircrack-ng and bettercap
The following is a partial list of the used files, terms and utilities:
- radiusd
- radmin
- radtest
- radclient
- radlast
- radwho
- radiusd.conf
- /etc/raddb/*
- wireshark
- tshark
- tcpdump
- kismet
- ndpmon
334.2 Network Intrusion Detection (weight: 4)
Weight | 4 |
Description | Candidates should be familiar with the use and configuration of network security scanning, network monitoring and network intrusion detection software. This includes updating and maintaining the security scanners. |
Key Knowledge Areas:
- Implement bandwidth usage monitoring
- Configure and use Snort, including rule management
- Configure and use OpenVAS, including NASL
Partial list of the used files, terms and utilities:
- ntop
- snort
- snort-stat
- /etc/snort/*
- openvas-adduser,
- openvas-rmuser
- openvas-nvt-sync
- openvassd
- openvas-mkcert
- /etc/openvas/*
334.3 Packet Filtering (weight: 5)
Weight | 5 |
Description | Candidates should be familiar with the use and configuration of the netfilter Linux packet filter. |
Key Knowledge Areas:
- Understand common firewall architectures, including DMZ
- Understand and use iptables and ip6tables, including standard modules, tests and targets
- Implement packet filtering for IPv4 and IPv6
- Implement connection tracking and network address translation
- Manage IP sets and use them in netfilter rules
- Awareness of nftables and nft
- Awareness of ebtables
- Awareness of conntrackd
Partial list of the used files, terms and utilities:
- iptables
- ip6tables
- iptables-save
- iptables-restore
- ip6tables-save
- ip6tables-restore
- ipset
334.4 Virtual Private Networks (weight: 4)
Weight | 4 |
Description | Candidates should be familiar with the use of OpenVPN, IPsec and WireGuard to set up remote access and site to site VPNs. |
Key Knowledge Areas:
- Understand the principles of bridged and routed VPNs
- Understand the principles and major differences of the OpenVPN, IPsec, IKEv2 and WireGuard protocols
- Configure and operate OpenVPN servers and clients
- Configure and operate IPsec servers and clients using strongSwan
- Configure and operate WireGuard servers and clients
- Awareness of L2TP
Partial list of the used files, terms and utilities:
- /etc/openvpn/
- openvpn
- /etc/strongswan.conf
- /etc/strongswan.d/
- /etc/swanctl/swanctl.conf
- /etc/swanctl/
- swanctl
- /etc/wireguard/
- wg
- ip
Topic 335: Threats and Vulnerability Assessment
335.1 Common Security Vulnerabilities and Threats (weight: 2)
Weight | 2 |
Description | Candidates should understand the principle of major types of security vulnerabilities and threats. |
Key Knowledge Areas:
- Conceptual understanding of threats against individual nodes
- Conceptual understanding of threats against networks
- Conceptual understanding of threats against application
- Conceptual understanding of threats against credentials and confidentiality
- Conceptual understanding of honeypots
The following is a partial list of the used files, terms and utilities:
- Trojans
- Viruses
- Rootkits
- Keylogger
- DoS and DDoS
- Man in the Middle
- ARP and NDP forgery
- Rogue Access Points, Routers and DHCP servers
- Link layer address and IP address spoofing
- Buffer Overflows
- SQL and Code Injections
- Cross Site Scripting
- Cross Site Request Forgery
- Privilege escalation
- Brute Force Attacks
- Rainbow tables
- Phishing
- Social Engineering
335.2 Penetration Testing (weight: 3)
Weight | 3 |
Description | Candidates understand the concepts of penetration testing, including an understand of commonly used penetration testing tools. Furthermore, candidates should be able to use nmap to verify the effectiveness of network security measures. |
Key Knowledge Areas:
- Understand the concepts of penetration testing and ethical hacking
- Understand legal implications of penetration testing
- Understand the phases of penetration tests, such as active and passive information gathering, enumeration, gaining access, privilege escalation, access maintenance, covering tracks
- Understand the architecture and components of Metasploit, including Metasploit module types and how Metasploit integrates various security tools
- Use nmap to scan networks and hosts, including different scan methods, version scans and operating system recognition
- Understand the concepts of Nmap Scripting Engine and execute existing scripts
- Awareness of Kali Linux, Armitage and the Social Engineer Toolkit (SET)
Partial list of the used files, terms and utilities:
- nmap