Difference between revisions of "LPIC-2 Objectives V4"

From LPI Wiki
Jump to: navigation, search
Line 11: Line 11:
 
These objectives are version 4.0.0rc1.  Weightings are estimates and will be finalised shortly.
 
These objectives are version 4.0.0rc1.  Weightings are estimates and will be finalised shortly.
  
This is also a [[LPIC2AndLPI300SummaryVersion3To4|summary and detailed information]] on the changes from version 3.5.x to 4.0.0 of the objectives.
+
This is also a [[LPIC2SummaryVersion3To4|summary and detailed information]] on the changes from version 3.5.x to 4.0.0 of the objectives.
 
<br /><br />
 
<br /><br />
  
Line 44: Line 44:
 
===''Topic 201: Linux Kernel''===
 
===''Topic 201: Linux Kernel''===
  
====<span style="color:navy">201.1 Kernel Components</span>====
+
====<span style="color:navy">201.1 Kernel components (weight: 2)</span>====
  
 
{|
 
{|
Line 55: Line 55:
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
  
| style="background:#eaeaea" | Candidates should be able to utilise kernel components that are necessary to specific hardware, hardware drivers, system resources and requirements. This objective includes implementing different types of kernel images, identifying stable and development kernels and patches, as well as using kernel modules.
+
| style="background:#eaeaea" | Candidates should be able to utilise kernel components that are necessary to specific hardware, hardware drivers, system resources and requirements. This objective includes implementing different types of kernel images, understanding stable and longterm kernels and patches, as well as using kernel modules.
 
|}
 
|}
  
Line 76: Line 76:
 
<br />
 
<br />
  
====<span style="color:navy">201.2 Compiling a kernel</span>====
+
====<span style="color:navy">201.2 Compiling and patching a Linux kernel (weight: 3)</span>====
  
 
{|
 
{|
Line 83: Line 83:
 
'''Weight'''
 
'''Weight'''
  
| style="background:#eaeaea" | 2
+
| style="background:#eaeaea" | 3
 
|-
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
  
| style="background:#eaeaea" | Candidates should be able to properly configure a kernel to include or disable specific features of the Linux kernel as necessary. This objective includes compiling and recompiling the Linux kernel as needed, updating and noting changes in a new kernel, creating an initrd image and installing new kernels.
+
| style="background:#eaeaea" | Candidates should be able to properly configure a kernel to include or disable specific features of the Linux kernel as necessary. This objective includes patching, removing patches, compiling and recompiling the Linux kernel as needed, updating and noting changes in a new kernel, creating an initrd image and installing new kernels.
 
|}
 
|}
  
Line 94: Line 94:
 
* /usr/src/linux/
 
* /usr/src/linux/
  
* GRUB configuration files
+
* Kernel Makefiles
  
* Kernel 2.6.x make targets  
+
* Kernel 2.6.x/3.x make targets  
  
* Kernel 3.x make targets
+
* Customize the current kernel configuration.
  
'''The following is a partial list of the used files, terms and utilities:'''
+
* Build a new kernel and appropriate kernel modules.
  
* mkinitrd
+
* Install a new kernel and any modules.
  
* mkinitramfs
+
* Ensure that the boot manager can locate the new kernel and associated files.
  
* make
+
* Module configuration files
  
* make targets (config, xconfig, menuconfig, oldconfig, mrproper, zImage, bzImage, modules, modules_install)
+
* Awareness of dracut
  
<br />
+
'''The following is a partial list of the used files, terms and utilities:'''
  
====<span style="color:navy">201.3 Patching a kernel</span>====
+
* mkinitrd
  
{|
+
* mkinitramfs
| style="background:#dadada" |
+
  
'''Weight'''
+
* make
  
| style="background:#eaeaea" | 1
+
* make targets (all, config, xconfig, menuconfig, gconfig, oldconfig, mrproper, zImage, bzImage, modules, modules_install, rpm-pkg, binrpm-pkg, deb-pkg)
|-
+
| style="background:#dadada; padding-right:1em" | '''Description'''
+
 
+
| style="background:#eaeaea" | Candidates should be able to properly patch a kernel to add support for new hardware. This objective also includes being able to properly remove kernel patches from already patched kernels.
+
|}
+
 
+
'''Key Knowledge Areas:'''
+
 
+
* Kernel Makefiles
+
 
+
'''The following is a partial list of the used files, terms and utilities:'''
+
  
 
* patch
 
* patch
Line 137: Line 125:
  
 
* bzip2  
 
* bzip2  
 
<br />
 
 
====<span style="color:navy">201.4 Customise, build and install a custom kernel and kernel modules</span>====
 
 
{|
 
| style="background:#dadada" |
 
 
'''Weight'''
 
 
| style="background:#eaeaea" | 2
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
 
| style="background:#eaeaea" | Candidates should be able to customise, build and install a 2.6 or 3.x kernel for specific system requirements, by patching, compiling and editing configuration files as required. This objective includes being able to assess requirements for a kernel compile as well as build and configure kernel modules.
 
|}
 
 
'''Key Knowledge Areas:'''
 
 
* Customize the current kernel configuration.
 
 
* Build a new kernel and appropriate kernel modules.
 
 
* Install a new kernel and any modules.
 
 
* Ensure that the boot manager can locate the new kernel and associated files.
 
 
* /usr/src/linux/
 
 
* Module configuration files
 
 
'''The following is a partial list of the used files, terms and utilities:'''
 
 
* patch
 
 
* make
 
  
 
* module tools
 
* module tools
 
* /usr/src/linux/*
 
  
 
* /usr/src/linux/.config
 
* /usr/src/linux/.config
  
 
* /lib/modules/kernel-version/*
 
* /lib/modules/kernel-version/*
 
* /boot/*
 
 
* make targets: all, config, menuconfig, xconfig, gconfig oldconfig, modules, install, modules_install, rpm-pkg, binrpm-pkg, deb-pkg
 
  
 
* depmod
 
* depmod
 
* strings
 
  
 
<br />
 
<br />
  
====<span style="color:navy">201.5 Manage/Query kernel and kernel modules at runtime</span>====
+
 
 +
====<span style="color:navy">201.5 Kernel runtime manangement and troubleshooting (weight: 4)</span>====
  
 
{|
 
{|
Line 203: Line 148:
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
  
| style="background:#eaeaea" | Candidates should be able to manage and/or query a 2.6.x or 3.x kernel and its loadable modules.  Candidates should be able to identify and correct common boot and run time issues.  
+
| style="background:#eaeaea" | Candidates should be able to manage and/or query a 2.6.x or 3.x kernel and its loadable modules.  Candidates should be able to identify and correct common boot and run time issues. Candidates should understand device detection and management using udev. This objective includes troubleshooting udev rules.  
 
|}
 
|}
  
Line 223: Line 168:
  
 
* Tools and utilities to analyse information about the available hardware
 
* Tools and utilities to analyse information about the available hardware
 +
 +
* udev rules
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 258: Line 205:
 
* /sbin/sysctl  
 
* /sbin/sysctl  
  
<br />
+
* udevmonitor
  
 +
* /etc/udev
 +
 +
<br />
 
<br />
 
<br />
  
 
===''Topic 202: System Startup''===
 
===''Topic 202: System Startup''===
  
====<span style="color:navy">202.1 Customising system startup and boot processes</span>====
+
====<span style="color:navy">202.1 Customising SysV-init system startup (weight: 3)</span>====
  
 
{|
 
{|
Line 271: Line 221:
 
'''Weight'''
 
'''Weight'''
  
| style="background:#eaeaea" | 4
+
| style="background:#eaeaea" | 3
 
|-
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
Line 281: Line 231:
  
 
* Linux Standard Base Specification (LSB)  
 
* Linux Standard Base Specification (LSB)  
 +
 +
* SysV init environment
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 293: Line 245:
  
 
* update-rc.d
 
* update-rc.d
 +
 +
* telinit
  
 
<br />
 
<br />
  
====<span style="color:navy">202.2 System recovery</span>====
+
====<span style="color:navy">202.2 System recovery (weight: 4)</span>====
  
 
{|
 
{|
Line 312: Line 266:
 
'''Key Knowledge Areas:'''
 
'''Key Knowledge Areas:'''
  
* inittab
+
* GRUB version 2 and Legacy
 
+
* GRUB
+
  
 
* grub shell  
 
* grub shell  
Line 330: Line 282:
 
* Overwriting standard bootloader options and using bootloader shells  
 
* Overwriting standard bootloader options and using bootloader shells  
  
'''The following is a partial list of the used files, terms and utilities:'''
+
* Awareness of UEFI
  
* init
+
'''The following is a partial list of the used files, terms and utilities:'''
  
 
* mount
 
* mount
Line 338: Line 290:
 
* fsck
 
* fsck
  
* telinit  
+
* inittab, telinit and init with SysV init
  
 
* The contents of /boot/ and /boot/grub/
 
* The contents of /boot/ and /boot/grub/
Line 353: Line 305:
  
 
* /etc/lilo.conf  
 
* /etc/lilo.conf  
 
  
 
<br />
 
<br />
 
<br />
 
<br />
====<span style="color:navy">202.3 Alternative Bootloaders</span>====
+
 
 +
====<span style="color:navy">202.3 Alternative Bootloaders (weight: 1)</span>====
  
 
{|
 
{|
Line 368: Line 320:
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
  
| style="background:#eaeaea" | Candidates should be aware of other bootloaders and some major features.
+
| style="background:#eaeaea" | Candidates should be aware of other bootloaders and their major features.
 
|}
 
|}
  
Line 379: Line 331:
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
  
* Hardware Detection Tool (HDT)
+
* syslinux
 +
 
 +
* extlinux
 +
 
 +
* isolinux.bin
 +
 
 +
* isolinux.cfg
 +
 
 +
* pxelinux.0
 +
 
 +
* pxelinux.cfg/*
  
  
Line 385: Line 347:
  
  
====<span style="color:navy">203.1 Operating the Linux filesystem</span>====
+
====<span style="color:navy">203.1 Operating the Linux filesystem (weight: 4)</span>====
  
 
{|
 
{|
Line 405: Line 367:
 
* Tools and utilities for handling SWAP partitions and files
 
* Tools and utilities for handling SWAP partitions and files
  
* Use of UUIDs  
+
* Use of UUIDs for identifying and mounting file systems
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 425: Line 387:
 
<br />
 
<br />
  
====<span style="color:navy">203.2 Maintaining a Linux filesystem</span>====
+
====<span style="color:navy">203.2 Maintaining a Linux filesystem (weight: 3)</span>====
  
 
{|
 
{|
Line 436: Line 398:
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
  
| style="background:#eaeaea" | Candidates should be able to properly maintain a Linux filesystem using system utilities. This objective includes manipulating standard filesystems.
+
| style="background:#eaeaea" | Candidates should be able to properly maintain a Linux filesystem using system utilities. This objective includes manipulating standard filesystems and monitoring SMART devices.
 
|}
 
|}
  
Line 442: Line 404:
  
 
* Tools and utilities to manipulate and ext2, ext3 and ext4
 
* Tools and utilities to manipulate and ext2, ext3 and ext4
 
* Tools and utilities to manipulate reiserfs V3
 
  
 
* Tools and utilities to manipulate xfs  
 
* Tools and utilities to manipulate xfs  
 +
 +
* Awareness of Btrfs
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
  
 
* fsck (fsck.*)
 
* fsck (fsck.*)
 
* badblocks
 
  
 
* mkfs (mkfs.*)
 
* mkfs (mkfs.*)
Line 459: Line 419:
 
* debugfs, debugreiserfs
 
* debugfs, debugreiserfs
  
* tune2fs, reiserfstune
+
* tune2fs
  
 
* mkswap
 
* mkswap
  
 
* xfs_info, xfs_check and xfs_repair  
 
* xfs_info, xfs_check and xfs_repair  
 +
 +
* smartd, smartctl
  
 
<br />
 
<br />
  
====<span style="color:navy">203.3 Creating and configuring filesystem options</span>====
+
====<span style="color:navy">203.3 Creating and configuring filesystem options (weight: 2)</span>====
  
 
{|
 
{|
Line 504: Line 466:
  
 
* mke2fs  
 
* mke2fs  
 
<br />
 
 
====<span style="color:navy">203.4 udev Device Management</span>====
 
 
{|
 
| style="background:#dadada" |
 
 
'''Weight'''
 
 
| style="background:#eaeaea" | 1
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
 
| style="background:#eaeaea" | Candidates should understand device detection and management using udev. This objective includes troubleshooting udev rules.
 
|}
 
 
'''Key Knowledge Areas:'''
 
 
* udev rules
 
 
* Kernel interface
 
 
'''The following is a partial list of the used files, terms and utilities:'''
 
 
* udevmonitor
 
 
* /etc/udev
 
  
 
<br />
 
<br />
Line 538: Line 472:
 
===''Topic 204: Advanced Storage Device Administration''===
 
===''Topic 204: Advanced Storage Device Administration''===
  
====<span style="color:navy">204.1 Configuring RAID</span>====
+
====<span style="color:navy">204.1 Configuring RAID (weight: 2)</span>====
  
 
{|
 
{|
Line 567: Line 501:
 
<br />
 
<br />
  
====<span style="color:navy">204.2 Adjusting Storage Device Access</span>====
+
====<span style="color:navy">204.2 Adjusting Storage Device Access (weight: 1)</span>====
  
 
{|
 
{|
Line 603: Line 537:
 
<br />
 
<br />
  
====<span style="color:navy">204.3 Logical Volume Manager</span>====
+
====<span style="color:navy">204.3 Logical Volume Manager (weight: 3)</span>====
  
 
{|
 
{|
Line 644: Line 578:
 
===''Topic 205: Networking Configuration''===
 
===''Topic 205: Networking Configuration''===
  
====<span style="color:navy">205.1 Basic networking configuration</span>====
+
====<span style="color:navy">205.1 Basic networking configuration (weight: 3)</span>====
  
 
{|
 
{|
Line 680: Line 614:
 
<br />
 
<br />
  
====<span style="color:navy">205.2 Advanced Network Configuration and Troubleshooting</span>====
+
====<span style="color:navy">205.2 Advanced Network Configuration (weight: 4)</span>====
  
 
{|
 
{|
Line 703: Line 637:
  
 
* Utilities to monitor and analyse the TCP/IP traffic
 
* Utilities to monitor and analyse the TCP/IP traffic
 
* OpenVPN
 
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 725: Line 657:
  
 
* /sbin/ip
 
* /sbin/ip
 
* /etc/openvpn/*
 
 
* openvpn
 
  
 
* nmap
 
* nmap
 
* wireshark
 
  
 
<br />
 
<br />
  
====<span style="color:navy">205.3 Troubleshooting network issues</span>====
+
====<span style="color:navy">205.3 Troubleshooting network issues (weight: 4)</span>====
  
 
{|
 
{|
Line 783: Line 709:
  
 
* /etc/hosts
 
* /etc/hosts
 
* /etc/hosts.allow & /etc/hosts.deny
 
  
 
* /etc/hostname | /etc/HOSTNAME
 
* /etc/hostname | /etc/HOSTNAME
Line 791: Line 715:
  
 
* /usr/sbin/traceroute
 
* /usr/sbin/traceroute
 
* /usr/bin/dig
 
  
 
* /bin/dmesg
 
* /bin/dmesg
  
* /usr/bin/host
+
* /etc/hosts.allow, /etc/hosts.deny
  
 
<br />
 
<br />
  
====<span style="color:navy">205.4 Notify users on system-related issues</span>====
 
 
{|
 
| style="background:#dadada" |
 
 
'''Weight'''
 
 
| style="background:#eaeaea" | 1
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
 
| style="background:#eaeaea" | Candidates should be able to notify the users about current issues related to the system.
 
|}
 
 
'''Key Knowledge Areas:'''
 
 
* Automate communication with users through logon messages.
 
 
* Inform active users of system maintenance
 
 
'''The following is a partial list of the used files, terms and utilities:'''
 
 
* /etc/issue
 
 
* /etc/issue.net
 
 
* /etc/motd
 
 
* wall
 
 
* /sbin/shutdown
 
 
<br />
 
 
<br />
 
<br />
  
 
===''Topic 206: System Maintenance''===
 
===''Topic 206: System Maintenance''===
  
====<span style="color:navy">206.1 Make and install programs from source</span>====
+
====<span style="color:navy">206.1 Make and install programs from source (weight: 2)</span>====
  
 
{|
 
{|
Line 844: Line 733:
 
'''Weight'''
 
'''Weight'''
  
| style="background:#eaeaea" | 4
+
| style="background:#eaeaea" | 2
 
|-
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
Line 883: Line 772:
 
<br />
 
<br />
  
====<span style="color:navy">206.2 Backup operations</span>====
+
====<span style="color:navy">206.2 Backup operations (weight: 3)</span>====
  
 
{|
 
{|
Line 890: Line 779:
 
'''Weight'''
 
'''Weight'''
  
| style="background:#eaeaea" | 2
+
| style="background:#eaeaea" | 3
 
|-
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
Line 928: Line 817:
  
 
<br />
 
<br />
 +
 +
====<span style="color:navy">205.4 Notify users on system-related issues (weight: 1)</span>====
 +
 +
{|
 +
| style="background:#dadada" |
 +
 +
'''Weight'''
 +
 +
| style="background:#eaeaea" | 1
 +
|-
 +
| style="background:#dadada; padding-right:1em" | '''Description'''
 +
 +
| style="background:#eaeaea" | Candidates should be able to notify the users about current issues related to the system.
 +
|}
 +
 +
'''Key Knowledge Areas:'''
 +
 +
* Automate communication with users through logon messages.
 +
 +
* Inform active users of system maintenance
 +
 +
'''The following is a partial list of the used files, terms and utilities:'''
 +
 +
* /etc/issue
 +
 +
* /etc/issue.net
 +
 +
* /etc/motd
 +
 +
* wall
 +
 +
* /sbin/shutdown
 +
 
<br />
 
<br />
 +
 +
===''Topic 306: Capacity Planning''===
 +
 +
====<span style="color:navy">306.1 Measure Resource Usage (weight: 4)</span>====
 +
 +
{|
 +
| style="background:#dadada" |
 +
 +
'''Weight'''
 +
 +
| style="background:#eaeaea" | 4
 +
|-
 +
| style="background:#dadada; padding-right:1em" |
 +
 +
'''Description'''
 +
 +
| style="background:#eaeaea" |
 +
 +
Candidates should be able to measure hardware resource and network bandwidth usage.
 +
 +
|}
 +
 +
'''Key Knowledge Areas:'''
 +
 +
* Measure CPU usage.
 +
 +
* Measure memory usage.
 +
 +
* Measure disk I/O.
 +
 +
* Measure network I/O.
 +
 +
* Measure firewalling and routing throughput.
 +
 +
* Map client bandwidth usage.
 +
 +
'''The following is a partial list of the used files, terms and utilities:'''
 +
 +
* iostat
 +
 +
* vmstat
 +
 +
* netstat
 +
 +
* pstree, ps
 +
 +
* w
 +
 +
* lsof
 +
 +
* top
 +
 +
* uptime
 +
 +
* sar
 +
 +
<br />
 +
 +
====<span style="color:navy">306.2 Troubleshoot Resource Problems (weight: 4)</span>====
 +
 +
{|
 +
| style="background:#dadada" |
 +
 +
'''Weight'''
 +
 +
| style="background:#eaeaea" | 4
 +
|-
 +
| style="background:#dadada; padding-right:1em" |
 +
 +
'''Description'''
 +
 +
| style="background:#eaeaea" |
 +
 +
Candidates should be able to identify and troubleshoot resource problems.
 +
 +
|}
 +
 +
'''Key Knowledge Areas:'''
 +
 +
* Match / correlate system symptoms with likely problems.
 +
 +
* Estimate throughput and identify bottlenecks in a system including networking.
 +
 +
'''The following is a partial list of the used files, terms and utilities:'''
 +
 +
* swap
 +
 +
* processes blocked on I/O
 +
 +
* blocks in
 +
 +
* blocks out
 +
 +
* network
 +
 +
<br />
 +
 +
====<span style="color:navy">306.4 Predict Future Resource Needs (weight: 3)</span>====
 +
 +
{|
 +
| style="background:#dadada" |
 +
 +
'''Weight'''
 +
 +
| style="background:#eaeaea" | 3
 +
|-
 +
| style="background:#dadada; padding-right:1em" |
 +
 +
'''Description'''
 +
 +
| style="background:#eaeaea" |
 +
 +
Candidates should be able to monitor resource usage to predict future resource needs.
 +
 +
|}
 +
 +
'''Key Knowledge Areas:'''
 +
 +
* Use collectd to monitor IT infrastructure usage.
 +
 +
* Predict capacity break point of a configuration.
 +
 +
* Observe growth rate of capacity usage.
 +
 +
* Graph the trend of capacity usage.
 +
 +
* Awareness of MRTG
 +
 +
'''The following is a partial list of the used files, terms and utilities:'''
 +
 +
* diagnose
 +
 +
* predict growth
 +
 +
* resource exhaustion
 +
 +
<br />
 +
<br />
 +
 +
==Objectives: Exam 202==
  
 
===''Topic 207: Domain Name Server''===
 
===''Topic 207: Domain Name Server''===
  
====<span style="color:navy">207.1 Basic DNS server configuration</span>====
+
====<span style="color:navy">207.1 Basic DNS server configuration (weight: 3)</span>====
  
 
{|
 
{|
Line 939: Line 1,001:
 
'''Weight'''
 
'''Weight'''
  
| style="background:#eaeaea" | 2
+
| style="background:#eaeaea" | 3
 
|-
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
Line 953: Line 1,015:
  
 
* Reloading modified configuration and zone files  
 
* Reloading modified configuration and zone files  
 +
 +
* Awareness of dnsmasq, djbdns and PowerDNS as alternate name servers
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 963: Line 1,027:
  
 
* kill  
 
* kill  
 +
 +
* host
 +
 +
* dig
  
 
<br />
 
<br />
  
====<span style="color:navy">207.2 Create and maintain DNS zones</span>====
+
====<span style="color:navy">207.2 Create and maintain DNS zones (weight: 3)</span>====
  
 
{|
 
{|
Line 973: Line 1,041:
 
'''Weight'''
 
'''Weight'''
  
| style="background:#eaeaea" | 2
+
| style="background:#eaeaea" | 3
 
|-
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
Line 1,007: Line 1,075:
 
<br />
 
<br />
  
====<span style="color:navy">207.3 Securing a DNS server</span>====
+
====<span style="color:navy">207.3 Securing a DNS server (weight: 2)</span>====
  
 
{|
 
{|
Line 1,031: Line 1,099:
 
* Configuring and using transaction signatures (TSIG)
 
* Configuring and using transaction signatures (TSIG)
  
* Signing zones using DNSSEC
+
* Awareness of DNSSEC and basic tools
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 1,042: Line 1,110:
  
 
* dnssec-keygen  
 
* dnssec-keygen  
 +
 +
* dnssec-signzone
  
 
<br />
 
<br />
 
==Objectives: Exam 202==
 
  
 
===''Topic 208: Web Services''===
 
===''Topic 208: Web Services''===
  
====<span style="color:navy">208.1 Implementing a web server</span>====
+
====<span style="color:navy">208.1 Basic Apache configuration (weight: 4)</span>====
  
 
{|
 
{|
Line 1,056: Line 1,124:
 
'''Weight'''
 
'''Weight'''
  
| style="background:#eaeaea" | 3
+
| style="background:#eaeaea" | 4
 
|-
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
  
| style="background:#eaeaea" | Candidates should be able to install and configure a web server. This objective includes monitoring the server's load and performance, restricting client user access, configuring support for scripting languages as modules and setting up client user authentication. Also included is configuring server options to restrict usage of resources.
+
| style="background:#eaeaea" | Candidates should be able to install and configure a web server. This objective includes monitoring the server's load and performance, restricting client user access, configuring support for scripting languages as modules and setting up client user authentication. Also included is configuring server options to restrict usage of resources. Candidates should be able to configure a web server to use virtual hosts and customise file access.  
 
|}
 
|}
  
Line 1,076: Line 1,144:
  
 
* Configuration of maximum requests, minimum and maximum servers and clients  
 
* Configuration of maximum requests, minimum and maximum servers and clients  
 +
 +
* Apache 2.x virtual host implementation (with and without dedicated IP addresses)
 +
 +
* Using redirect statements in Apache's configuration files to customise file access
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 1,097: Line 1,169:
 
<br />
 
<br />
  
====<span style="color:navy">208.2 Maintaining a Web Server</span>====
+
====<span style="color:navy">208.2 Apache configuration for HTTPS (weight: 2)</span>====
  
 
{|
 
{|
Line 1,108: Line 1,180:
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
  
| style="background:#eaeaea" | Candidates should be able to configure a web server to use virtual hosts, Secure Sockets Layer (SSL) and customise file access.  
+
| style="background:#eaeaea" | Candidates should be able to configure a web server to provide HTTPS.  
 
|}
 
|}
  
Line 1,116: Line 1,188:
  
 
* SSL certificate handling
 
* SSL certificate handling
 
* Apache 2.x virtual host implementation (with and without dedicated IP addresses)
 
 
* Using redirect statements in Apache's configuration files to customise file access
 
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 1,131: Line 1,199:
 
<br />
 
<br />
  
====<span style="color:navy">208.3 Implementing a Caching Proxy</span>====
+
====<span style="color:navy">208.3 Implementing Squid as a caching proxy (weight: 2)</span>====
  
 
{|
 
{|
Line 1,147: Line 1,215:
 
'''Key Knowledge Areas:'''
 
'''Key Knowledge Areas:'''
  
* Squid 2.x configuration files, terms and utilities
+
* Squid 3.x configuration files, terms and utilities
  
 
* Access restriction methods
 
* Access restriction methods
Line 1,163: Line 1,231:
 
* http_access  
 
* http_access  
  
====<span style="color:navy">208.4 Implementing a Reverse Proxy</span>====
+
====<span style="color:navy">208.4 Implementing NXINX as a web server and a reverse proxy (weight: 2)</span>====
  
 
{|
 
{|
Line 1,174: Line 1,242:
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
  
| style="background:#eaeaea" | Candidates should be able to install and configure a reverse proxy server, Nginx.  Basic configuration of Nginx as a HTTP server is included.  Knowledge of other Nginx features like IMAP/POP3 expected.
+
| style="background:#eaeaea" | Candidates should be able to install and configure a reverse proxy server, Nginx.  Basic configuration of Nginx as a HTTP server is included.  
 
|}
 
|}
  
Line 1,196: Line 1,264:
 
===''Topic 209: File Sharing''===
 
===''Topic 209: File Sharing''===
  
====<span style="color:navy">209.1 SAMBA Server Configuration</span>====
+
====<span style="color:navy">209.1 Samba Server Configuration (weight: 5)</span>====
  
 
{|
 
{|
Line 1,203: Line 1,271:
 
'''Weight'''
 
'''Weight'''
  
| style="background:#eaeaea" | 4
+
| style="background:#eaeaea" | 5
 
|-
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
Line 1,212: Line 1,280:
 
'''Key Knowledge Areas:'''
 
'''Key Knowledge Areas:'''
  
* Samba 4 documentation
+
* Samba version 3 documentation
  
 
* Samba configuration files
 
* Samba configuration files
Line 1,228: Line 1,296:
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
  
* samba, smbd, nmbd
+
* smbd, nmbd
  
 
* smbstatus, testparm, smbpasswd, nmblookup
 
* smbstatus, testparm, smbpasswd, nmblookup
Line 1,242: Line 1,310:
 
<br />
 
<br />
  
====<span style="color:navy">209.2 NFS Server Configuration</span>====
+
====<span style="color:navy">209.2 NFS Server Configuration (weight: 4)</span>====
  
 
{|
 
{|
Line 1,258: Line 1,326:
 
'''Key Knowledge Areas:'''
 
'''Key Knowledge Areas:'''
  
* NFS configuration files
+
* NFS version 3 configuration files
  
 
* NFS tools and utilities
 
* NFS tools and utilities
Line 1,267: Line 1,335:
  
 
* tcpwrappers  
 
* tcpwrappers  
 +
 +
* Awareness of NFSv4
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 1,293: Line 1,363:
 
===''Topic 210: Network Client Management''===
 
===''Topic 210: Network Client Management''===
  
====<span style="color:navy">210.1 DHCP configuration</span>====
+
====<span style="color:navy">210.1 DHCP configuration (weight: 2)</span>====
  
 
{|
 
{|
Line 1,327: Line 1,397:
 
<br />
 
<br />
  
====<span style="color:navy">210.2 PAM authentication</span>====
+
====<span style="color:navy">210.2 PAM authentication (weight: 3)</span>====
  
 
{|
 
{|
Line 1,359: Line 1,429:
 
<br />
 
<br />
  
====<span style="color:navy">210.3 LDAP client usage</span>====
+
====<span style="color:navy">210.3 LDAP client usage (weight: 2)</span>====
  
 
{|
 
{|
Line 1,393: Line 1,463:
 
<br />
 
<br />
  
====<span style="color:navy">210.4 LDAP Server Basics</span>====
+
====<span style="color:navy">210.4 LDAP Server Basics (weight: 4)</span>====
  
 
{|
 
{|
Line 1,404: Line 1,474:
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
  
| style="background:#eaeaea" | Candidates should be able to configure a basic OpenLDAP server including knowledge of LDIF format and essential access controls.
+
| style="background:#eaeaea" | Candidates should be able to configure a basic OpenLDAP server including knowledge of LDIF format and essential access controls. An understanding of the role of SSSD in authentication and identity management is included.
 
|}
 
|}
  
Line 1,414: Line 1,484:
  
 
* Directories
 
* Directories
 +
 +
* Awareness of System Security Services Daemon (SSSD)
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 1,421: Line 1,493:
 
* LDIF
 
* LDIF
  
* ldapadd
+
* slapadd
 +
 
 +
* slapcat
  
 
<br />
 
<br />
Line 1,428: Line 1,502:
 
===''Topic 211: E-Mail Services''===
 
===''Topic 211: E-Mail Services''===
  
====<span style="color:navy">211.1 Using e-mail servers</span>====
+
====<span style="color:navy">211.1 Using e-mail servers (weight: 4)</span>====
  
 
{|
 
{|
Line 1,435: Line 1,509:
 
'''Weight'''
 
'''Weight'''
  
| style="background:#eaeaea" | 3
+
| style="background:#eaeaea" | 4
 
|-
 
|-
 
| style="background:#dadada; padding-right:1em" | '''Description'''
 
| style="background:#dadada; padding-right:1em" | '''Description'''
Line 1,446: Line 1,520:
 
* Configuration files for postfix
 
* Configuration files for postfix
  
* Basic knowledge of the SMTP protocol, sendmail, and exim  
+
* Basic knowledge of the SMTP protocol
 +
 
 +
* Awareness of sendmail and exim  
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
  
 
* Configuration files and commands for postfix
 
* Configuration files and commands for postfix
 
* Basic configuration of sendmail
 
 
* /etc/aliases
 
 
* /etc/mail/*
 
  
 
* /etc/postfix/*
 
* /etc/postfix/*
 +
 +
* /var/spool/postfix
  
 
* sendmail emulation layer commands
 
* sendmail emulation layer commands
  
* /var/spool/mail
+
* /etc/aliases
  
 
* mail-related logs in /var/log/  
 
* mail-related logs in /var/log/  
Line 1,468: Line 1,540:
 
<br />
 
<br />
  
====<span style="color:navy">211.2 Managing Local E-Mail Delivery</span>====
+
====<span style="color:navy">211.2 Managing Local E-Mail Delivery (weight: 2)</span>====
  
 
{|
 
{|
Line 1,500: Line 1,572:
 
<br />
 
<br />
  
====<span style="color:navy">211.3 Managing Remote E-Mail Delivery</span>====
+
====<span style="color:navy">211.3 Managing Remote E-Mail Delivery (weight: 2)</span>====
  
 
{|
 
{|
Line 1,531: Line 1,603:
 
===''Topic 212: System Security''===
 
===''Topic 212: System Security''===
  
====<span style="color:navy">212.1 Configuring a router</span>====
+
====<span style="color:navy">212.1 Configuring a router (weight: 3)</span>====
  
 
{|
 
{|
Line 1,558: Line 1,630:
  
 
* Save and reload filtering configurations  
 
* Save and reload filtering configurations  
 +
 +
* Awareness of ip6tables and filtering
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 1,569: Line 1,643:
 
<br />
 
<br />
  
====<span style="color:navy">212.2 Securing FTP servers</span>====
+
====<span style="color:navy">212.2 Managing FTP servers (weight: 2)</span>====
  
 
{|
 
{|
Line 1,599: Line 1,673:
 
<br />
 
<br />
  
====<span style="color:navy">212.3 Secure shell (SSH)</span>====
+
====<span style="color:navy">212.3 Secure shell (SSH) (weight: 4)</span>====
  
 
{|
 
{|
Line 1,620: Line 1,694:
  
 
* Managing and using server and client keys to login with and without password
 
* Managing and using server and client keys to login with and without password
 
* Usage of XWindow and other application protocols through SSH tunnels
 
 
* Configuration of ssh-agent
 
  
 
* Usage of multiple connections from multiple hosts to guard against loss of connection to remote host following configuration changes  
 
* Usage of multiple connections from multiple hosts to guard against loss of connection to remote host following configuration changes  
Line 1,634: Line 1,704:
  
 
* /etc/ssh/sshd_config
 
* /etc/ssh/sshd_config
 +
 +
* /etc/ssh/*
  
 
* Private and public key files
 
* Private and public key files
 
* ~/.ssh/authorized_keys
 
  
 
* PermitRootLogin, PubKeyAuthentication, AllowUsers, PasswordAuthentication, Protocol  
 
* PermitRootLogin, PubKeyAuthentication, AllowUsers, PasswordAuthentication, Protocol  
Line 1,643: Line 1,713:
 
<br />
 
<br />
  
====<span style="color:navy">212.4 TCP Wrapper</span>====
+
====<span style="color:navy">212.5 Security tasks (weight: 3)</span>====
 
+
{|
+
| style="background:#dadada" |
+
 
+
'''Weight'''
+
 
+
| style="background:#eaeaea" | 1
+
|-
+
| style="background:#dadada; padding-right:1em" | '''Description'''
+
 
+
| style="background:#eaeaea" | Candidates should be able to configure TCP Wrapper to allow connections to specified servers only from certain hosts or subnets.
+
|}
+
 
+
'''Key Knowledge Areas:'''
+
 
+
* TCP Wrapper configuration files, tools and utilities
+
 
+
* inetd configuration files, tools and utilities
+
 
+
'''The following is a partial list of the used files, terms and utilities:'''
+
 
+
* /etc/inetd.conf
+
 
+
* /etc/hosts.allow
+
 
+
* /etc/hosts.deny
+
 
+
* libwrap
+
 
+
* tcpd
+
 
+
<br />
+
 
+
====<span style="color:navy">212.5 Security tasks</span>====
+
  
 
{|
 
{|
Line 1,699: Line 1,735:
 
* Tools and utilities to implement an intrusion detection system (IDS)
 
* Tools and utilities to implement an intrusion detection system (IDS)
  
* Awareness of OpenVAS
+
* Awareness of OpenVAS and Snort
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
Line 1,706: Line 1,742:
  
 
* nmap
 
* nmap
 
* snort
 
  
 
* fail2ban
 
* fail2ban
Line 1,715: Line 1,749:
 
* iptables  
 
* iptables  
  
<br />
 
 
<br />
 
<br />
  
 
+
====<span style="color:navy">212.6 OpenVPN (weight: 2)</span>====
===''Topic 213/214: Capacity Planning''===
+
 
+
====<span style="color:navy">213/214.1 Measure Resource Usage</span>====
+
  
 
{|
 
{|
Line 1,728: Line 1,758:
 
'''Weight'''
 
'''Weight'''
  
| style="background:#eaeaea" | 4
+
| style="background:#eaeaea" | 2
 
|-
 
|-
| style="background:#dadada; padding-right:1em" |  
+
| style="background:#dadada; padding-right:1em" | '''Description'''
 
+
'''Description'''
+
 
+
| style="background:#eaeaea" |
+
 
+
Candidates should be able to measure hardware resource and network bandwidth usage.
+
  
 +
| style="background:#eaeaea" | Candidates should be able to configure a VPN (Virtual Private Network) and create secure point-to-point or site-to-site connections.
 
|}
 
|}
  
 
'''Key Knowledge Areas:'''
 
'''Key Knowledge Areas:'''
  
* Measure CPU usage.
+
* OpenVPN
* Measure memory usage.
+
* Measure disk I/O.
+
* Measure network I/O.
+
* Measure firewalling and routing throughput.
+
* Map client bandwidth usage.
+
  
 
'''The following is a partial list of the used files, terms and utilities:'''
 
'''The following is a partial list of the used files, terms and utilities:'''
  
* iostat
+
* /etc/openvpn/*
* vmstat
+
* netstat
+
* pstree, ps
+
* w
+
* lsof
+
* top
+
* uptime
+
* sar
+
  
<br />
+
* openvpn
 
+
====<span style="color:navy">213/214.2 Troubleshoot Resource Problems</span>====
+
 
+
{|
+
| style="background:#dadada" |
+
 
+
'''Weight'''
+
 
+
| style="background:#eaeaea" | 4
+
|-
+
| style="background:#dadada; padding-right:1em" |
+
 
+
'''Description'''
+
 
+
| style="background:#eaeaea" |
+
 
+
Candidates should be able to identify and troubleshoot resource problems.
+
 
+
|}
+
 
+
'''Key Knowledge Areas:'''
+
 
+
* Match / correlate system symptoms with likely problems.
+
* Estimate throughput and identify bottlenecks in a system including networking.
+
 
+
'''The following is a partial list of the used files, terms and utilities:'''
+
 
+
* swap
+
* processes blocked on I/O
+
* blocks in
+
* blocks out
+
* network
+
  
 
<br />
 
<br />
 
====<span style="color:navy">213/214.3 Analyze Demand</span>====
 
 
{|
 
| style="background:#dadada" |
 
 
'''Weight'''
 
 
| style="background:#eaeaea" | 1
 
|-
 
| style="background:#dadada; padding-right:1em" |
 
 
'''Description'''
 
 
| style="background:#eaeaea" |
 
 
Candidates should be able to analyze capacity demands.
 
 
|}
 
 
'''Key Knowledge Areas:'''
 
 
* Identify capacity demands.
 
* Detail capacity needs of programs.
 
* Determine CPU / memory needs of programs.
 
* Assemble program needs into a complete analysis.
 
 
'''The following is a partial list of the used files, terms and utilities:'''
 
 
* PDQ
 
* CPU usage
 
* memory usage
 
* appropriate measurement time
 
* trend
 
* model
 
* what-if
 
* validate
 
* performance equation
 
 
 
<br />
 
<br />
  
====<span style="color:navy">213/214.4 Predict Future Resource Needs</span>====
 
  
{|
 
| style="background:#dadada" |
 
  
'''Weight'''
+
==Future Change Considerations==
  
| style="background:#eaeaea" | 3
+
Future changes to the objective will/may include:
|-
+
| style="background:#dadada; padding-right:1em" |
+
  
'''Description'''
+
* EFI shell, gdisk, parted not included.  More appropriate in LPIC-1 update.
  
| style="background:#eaeaea" |
+
* lighttpd would have been too much coverage of web services.  Perhaps reduce Apache next revision to make room.
  
Candidates should be able to monitor resource usage to predict future resource needs.
+
* host level IDS (tripwire, AIDE, etc) to be covered in future LPIC-1.
  
|}
+
* sieve and maildrop to be considered in a future update.
  
'''Key Knowledge Areas:'''
+
* SAN and iSCSI, AoE, and FCoE to be considered in a future update.
 
+
* Use Nagios to monitor IT infrastructure.
+
* Predict capacity break point of a configuration.
+
* Observe growth rate of capacity usage.
+
* Graph the trend of capacity usage.
+
 
+
'''The following is a partial list of the used files, terms and utilities:'''
+
 
+
* diagnose
+
* predict growth
+
* average
+
* resource exhaustion
+
 
+
<br />
+
<br />
+
 
+
==Future Change Considerations==
+
 
+
Future changes to the objective will/may include:
+
  
* add here
+
* encrypted file systems are covered in-depth in LPI-303 exam.

Revision as of 16:58, 22 May 2013

Contents

Introduction

This is a required exam for LPI certification Level 2. It covers advanced skills for the Linux professional that are common across all distributions of Linux.

We are attempting to create a Body of Knowledge for these objectives.

Version Information

These objectives are version 4.0.0rc1. Weightings are estimates and will be finalised shortly.

This is also a summary and detailed information on the changes from version 3.5.x to 4.0.0 of the objectives.

Addenda

Version Update Addendum (Apr 1st, 2013)

  • updated to version 4.0.0rc1



Translations of Objectives

The following translations of the objectives are available on this wiki:


Objectives: Exam 201

Topic 201: Linux Kernel

201.1 Kernel components (weight: 2)

Weight

2
Description Candidates should be able to utilise kernel components that are necessary to specific hardware, hardware drivers, system resources and requirements. This objective includes implementing different types of kernel images, understanding stable and longterm kernels and patches, as well as using kernel modules.

Key Knowledge Areas:

  • Kernel 2.6.x documentation
  • Kernel 3.x documentation

The following is a partial list of the used files, terms and utilities:

  • /usr/src/linux
  • /usr/src/linux/Documentation
  • zImage
  • bzImage


201.2 Compiling and patching a Linux kernel (weight: 3)

Weight

3
Description Candidates should be able to properly configure a kernel to include or disable specific features of the Linux kernel as necessary. This objective includes patching, removing patches, compiling and recompiling the Linux kernel as needed, updating and noting changes in a new kernel, creating an initrd image and installing new kernels.

Key Knowledge Areas:

  • /usr/src/linux/
  • Kernel Makefiles
  • Kernel 2.6.x/3.x make targets
  • Customize the current kernel configuration.
  • Build a new kernel and appropriate kernel modules.
  • Install a new kernel and any modules.
  • Ensure that the boot manager can locate the new kernel and associated files.
  • Module configuration files
  • Awareness of dracut

The following is a partial list of the used files, terms and utilities:

  • mkinitrd
  • mkinitramfs
  • make
  • make targets (all, config, xconfig, menuconfig, gconfig, oldconfig, mrproper, zImage, bzImage, modules, modules_install, rpm-pkg, binrpm-pkg, deb-pkg)
  • patch
  • gzip
  • bzip2
  • module tools
  • /usr/src/linux/.config
  • /lib/modules/kernel-version/*
  • depmod



201.5 Kernel runtime manangement and troubleshooting (weight: 4)

Weight

4
Description Candidates should be able to manage and/or query a 2.6.x or 3.x kernel and its loadable modules. Candidates should be able to identify and correct common boot and run time issues. Candidates should understand device detection and management using udev. This objective includes troubleshooting udev rules.

Key Knowledge Areas:

  • Use command-line utilities to get information about the currently running kernel and kernel modules.
  • Manually load and unload kernel modules.
  • Determine when modules can be unloaded.
  • Determine what parameters a module accepts.
  • Configure the system to load modules by names other than their file name.
  • /proc filesystem
  • Content of /, /boot , and /lib/modules
  • Tools and utilities to analyse information about the available hardware
  • udev rules

The following is a partial list of the used files, terms and utilities:

  • /lib/modules/kernel-version/modules.dep
  • module configuration files in /etc
  • /proc/sys/kernel/
  • /sbin/depmod
  • /sbin/rmmod
  • /sbin/modinfo
  • /bin/dmesg
  • /sbin/lspci
  • /usr/bin/lsdev
  • /sbin/lsmod
  • /sbin/modprobe
  • /sbin/insmod
  • /bin/uname
  • /usr/bin/lsusb
  • /etc/sysctl.conf, /etc/sysctl.d/
  • /sbin/sysctl
  • udevmonitor
  • /etc/udev



Topic 202: System Startup

202.1 Customising SysV-init system startup (weight: 3)

Weight

3
Description Candidates should be able to query and modify the behaviour of system services at various run levels. A thorough understanding of the init structure and boot process is required. This objective includes interacting with run levels.

Key Knowledge Areas:

  • Linux Standard Base Specification (LSB)
  • SysV init environment

The following is a partial list of the used files, terms and utilities:

  • /etc/inittab
  • /etc/init.d/
  • /etc/rc.d/
  • chkconfig
  • update-rc.d
  • telinit


202.2 System recovery (weight: 4)

Weight

4
Description Candidates should be able to properly manipulate a Linux system during both the boot process and during recovery mode. This objective includes using both the init utility and init-related kernel options. Candidates should be able to determine the cause of errors in loading and usage of bootloaders. GRUB and LILO are the bootloaders of interest.

Key Knowledge Areas:

  • GRUB version 2 and Legacy
  • grub shell
  • boot loader start and hand off to kernel
  • kernel loading
  • hardware initialisation and setup
  • daemon/service initialisation and setup
  • Know the different bootloader install locations on a hard disk or removable device
  • Overwriting standard bootloader options and using bootloader shells
  • Awareness of UEFI

The following is a partial list of the used files, terms and utilities:

  • mount
  • fsck
  • inittab, telinit and init with SysV init
  • The contents of /boot/ and /boot/grub/
  • GRUB
  • grub-install
  • initrd, initramfs
  • Master boot record
  • lilo
  • /etc/lilo.conf



202.3 Alternative Bootloaders (weight: 1)

Weight

1
Description Candidates should be aware of other bootloaders and their major features.

Key Knowledge Areas:

  • SYSLIUNX, ISOLINUX, PXELINUX
  • Understanding of PXE

The following is a partial list of the used files, terms and utilities:

  • syslinux
  • extlinux
  • isolinux.bin
  • isolinux.cfg
  • pxelinux.0
  • pxelinux.cfg/*


Topic 203: Filesystem and Devices

203.1 Operating the Linux filesystem (weight: 4)

Weight

4
Description Candidates should be able to properly configure and navigate the standard Linux filesystem. This objective includes configuring and mounting various filesystem types.

Key Knowledge Areas:

  • The concept of the fstab configuration
  • Tools and utilities for handling SWAP partitions and files
  • Use of UUIDs for identifying and mounting file systems

The following is a partial list of the used files, terms and utilities:

  • /etc/fstab
  • /etc/mtab
  • /proc/mounts
  • mount and umount
  • sync
  • swapon
  • swapoff


203.2 Maintaining a Linux filesystem (weight: 3)

Weight

3
Description Candidates should be able to properly maintain a Linux filesystem using system utilities. This objective includes manipulating standard filesystems and monitoring SMART devices.

Key Knowledge Areas:

  • Tools and utilities to manipulate and ext2, ext3 and ext4
  • Tools and utilities to manipulate xfs
  • Awareness of Btrfs

The following is a partial list of the used files, terms and utilities:

  • fsck (fsck.*)
  • mkfs (mkfs.*)
  • dumpe2fs, xfsdump, xfsrestore
  • debugfs, debugreiserfs
  • tune2fs
  • mkswap
  • xfs_info, xfs_check and xfs_repair
  • smartd, smartctl


203.3 Creating and configuring filesystem options (weight: 2)

Weight

2
Description Candidates should be able to configure automount filesystems using AutoFS. This objective includes configuring automount for network and device filesystems. Also included is creating filesystems for devices such as CD-ROMs and a basic feature knowledge of encrypted filesystems.

Key Knowledge Areas:

  • autofs configuration files
  • UDF and ISO9660 tools and utilities
  • awareness of CD-ROM filesystems (UDF, ISO9660, HFS)
  • awareness of CD-ROM filesystem extensions (Joliet, Rock Ridge, El Torito)
  • basic feature knowledge of encrypted filesystems

The following is a partial list of the used files, terms and utilities:

  • /etc/auto.master
  • /etc/auto.[dir]
  • mkisofs
  • dd
  • mke2fs



Topic 204: Advanced Storage Device Administration

204.1 Configuring RAID (weight: 2)

Weight

2
Description Candidates should be able to configure and implement software RAID. This objective includes using and configuring RAID 0, 1 and 5.

Key Knowledge Areas:

  • Software raid configuration files and utilities

The following is a partial list of the used files, terms and utilities:

  • mdadm.conf
  • mdadm
  • /proc/mdstat
  • fdisk


204.2 Adjusting Storage Device Access (weight: 1)

Weight

1
Description Candidates should be able to configure kernel options to support various drives. This objective includes software tools to view & modify hard disk settings.

Key Knowledge Areas:

  • Tools and utilities to configure DMA for IDE devices including ATAPI and SATA
  • Tools and utilities to manipulate or analyse system resources (e.g. interrupts)
  • Awareness of sdparm command and its uses

The following is a partial list of the used files, terms and utilities:

  • hdparm
  • sdparm
  • tune2fs
  • sysctl
  • /dev/hd* & /dev/sd*


204.3 Logical Volume Manager (weight: 3)

Weight

3
Description Candidates should be able to create and remove logical volumes, volume groups, and physical volumes. This objective includes snapshots and resizing logical volumes.

Key Knowledge Areas:

  • Tools in the LVM suite
  • Resizing, renaming, creating, and removing logical volumes, volume groups, and physical volumes
  • Creating and maintaining snapshots
  • Activating volume groups

The following is a partial list of the used files, terms and utilities:

  • /sbin/pv*
  • /sbin/lv*
  • /sbin/vg*
  • mount
  • /dev/mapper/



Topic 205: Networking Configuration

205.1 Basic networking configuration (weight: 3)

Weight

3
Description Candidates should be able to configure a network device to be able to connect to a local, wired or wireless, and a wide-area network. This objective includes being able to communicate between various subnets within a single network including both IPv4 and IPv6 networks.

Key Knowledge Areas:

  • Utilities to configure and manipulate ethernet network interfaces
  • Configuring wireless networks

The following is a partial list of the used files, terms and utilities:

  • /sbin/route
  • /sbin/ifconfig
  • /sbin/ip
  • /usr/sbin/arp
  • /sbin/iwconfig
  • /sbin/iwlist


205.2 Advanced Network Configuration (weight: 4)

Weight

4
Description Candidates should be able to configure a network device to implement various network authentication schemes. This objective includes configuring a multi-homed network device, configuring a VPN client and resolving communication problems.

Key Knowledge Areas:

  • Utilities to manipulate routing tables
  • Utilities to configure and manipulate ethernet network interfaces
  • Utilities to analyse the status of the network devices
  • Utilities to monitor and analyse the TCP/IP traffic

The following is a partial list of the used files, terms and utilities:

  • /sbin/route
  • /sbin/ifconfig
  • /bin/netstat
  • /bin/ping
  • /usr/sbin/arp
  • /usr/sbin/tcpdump
  • /usr/sbin/lsof
  • /usr/bin/nc
  • /sbin/ip
  • nmap


205.3 Troubleshooting network issues (weight: 4)

Weight

4
Description Candidates should be able to identify and correct common network setup issues, to include knowledge of locations for basic configuration files and commands.

Key Knowledge Areas:

  • Location and content of access restriction files
  • Utilities to configure and manipulate ethernet network interfaces
  • Utilities to manage routing tables
  • Utilities to list network states.
  • Utilities to gain information about the network configuration
  • Methods of information about the recognised and used hardware devices
  • System initialisation files and their contents (SysV init process)

The following is a partial list of the used files, terms and utilities:

  • /sbin/ifconfig
  • /sbin/route
  • /bin/netstat
  • /etc/network || /etc/sysconfig/network-scripts/
  • System log files such as /var/log/syslog & /var/log/messages
  • /bin/ping
  • /etc/resolv.conf
  • /etc/hosts
  • /etc/hostname | /etc/HOSTNAME
  • /bin/hostname
  • /usr/sbin/traceroute
  • /bin/dmesg
  • /etc/hosts.allow, /etc/hosts.deny



Topic 206: System Maintenance

206.1 Make and install programs from source (weight: 2)

Weight

2
Description Candidates should be able to build and install an executable program from source. This objective includes being able to unpack a file of sources.

Key Knowledge Areas:

  • Unpack source code using common compression and archive utilities.
  • Understand basics of invoking make to compile programs.
  • Apply parameters to a configure script.
  • Know where sources are stored by default.

The following is a partial list of the used files, terms and utilities:

  • /usr/src/
  • gunzip
  • gzip
  • bzip2
  • tar
  • configure
  • make
  • uname
  • install


206.2 Backup operations (weight: 3)

Weight

3
Description Candidates should be able to use system tools to back up important system data.

Key Knowledge Areas:

  • Knowledge about directories that have to be include in backups
  • Awareness of network backup solutions such as Amanda, Bacula and BackupPC
  • Knowledge of the benefits and drawbacks of tapes, CDR, disk or other backup media
  • Perform partial and manual backups.
  • Verify the integrity of backup files.
  • Partially or fully restore backups.

The following is a partial list of the used files, terms and utilities:

  • /bin/sh
  • cpio
  • dd
  • tar
  • /dev/st* and /dev/nst*
  • mt
  • rsync


205.4 Notify users on system-related issues (weight: 1)

Weight

1
Description Candidates should be able to notify the users about current issues related to the system.

Key Knowledge Areas:

  • Automate communication with users through logon messages.
  • Inform active users of system maintenance

The following is a partial list of the used files, terms and utilities:

  • /etc/issue
  • /etc/issue.net
  • /etc/motd
  • wall
  • /sbin/shutdown


Topic 306: Capacity Planning

306.1 Measure Resource Usage (weight: 4)

Weight

4

Description

Candidates should be able to measure hardware resource and network bandwidth usage.

Key Knowledge Areas:

  • Measure CPU usage.
  • Measure memory usage.
  • Measure disk I/O.
  • Measure network I/O.
  • Measure firewalling and routing throughput.
  • Map client bandwidth usage.

The following is a partial list of the used files, terms and utilities:

  • iostat
  • vmstat
  • netstat
  • pstree, ps
  • w
  • lsof
  • top
  • uptime
  • sar


306.2 Troubleshoot Resource Problems (weight: 4)

Weight

4

Description

Candidates should be able to identify and troubleshoot resource problems.

Key Knowledge Areas:

  • Match / correlate system symptoms with likely problems.
  • Estimate throughput and identify bottlenecks in a system including networking.

The following is a partial list of the used files, terms and utilities:

  • swap
  • processes blocked on I/O
  • blocks in
  • blocks out
  • network


306.4 Predict Future Resource Needs (weight: 3)

Weight

3

Description

Candidates should be able to monitor resource usage to predict future resource needs.

Key Knowledge Areas:

  • Use collectd to monitor IT infrastructure usage.
  • Predict capacity break point of a configuration.
  • Observe growth rate of capacity usage.
  • Graph the trend of capacity usage.
  • Awareness of MRTG

The following is a partial list of the used files, terms and utilities:

  • diagnose
  • predict growth
  • resource exhaustion



Objectives: Exam 202

Topic 207: Domain Name Server

207.1 Basic DNS server configuration (weight: 3)

Weight

3
Description Candidates should be able to configure BIND to function as a caching-only DNS server. This objective includes the ability to convert older BIND configuration files to newer format, managing a running server and configuring logging.

Key Knowledge Areas:

  • BIND 9.x configuration files, terms and utilities
  • Defining the location of the BIND zone files in BIND configuration files
  • Reloading modified configuration and zone files
  • Awareness of dnsmasq, djbdns and PowerDNS as alternate name servers

The following is a partial list of the used files, terms and utilities:

  • /etc/named.conf
  • /var/named/*
  • /usr/sbin/rndc
  • kill
  • host
  • dig


207.2 Create and maintain DNS zones (weight: 3)

Weight

3
Description Candidates should be able to create a zone file for a forward or reverse zone or root level server. This objective includes setting appropriate values for records, adding hosts in zones and adding zones to the DNS. A candidate should also be able to delegate zones to another DNS server.

Key Knowledge Areas:

  • BIND 9 configuration files, terms and utilities
  • Utilities to request information from the DNS server
  • Layout, content and file location of the BIND zone files
  • Various methods to add a new host in the zone files, including reverse zones


The following is a partial list of the used files, terms and utilities:

  • /var/named/*
  • zone file syntax
  • resource record formats
  • dig
  • nslookup
  • host


207.3 Securing a DNS server (weight: 2)

Weight

2
Description Candidates should be able to configure a DNS server to run as a non-root user and run in a chroot jail. This objective includes secure exchange of data between DNS servers.

Key Knowledge Areas:

  • BIND 9 configuration files
  • Configuring BIND to run in a chroot jail
  • Split configuration of BIND using the forwarders statement
  • Configuring and using transaction signatures (TSIG)
  • Awareness of DNSSEC and basic tools

The following is a partial list of the used files, terms and utilities:

  • /etc/named.conf
  • /etc/passwd
  • DNSSEC
  • dnssec-keygen
  • dnssec-signzone


Topic 208: Web Services

208.1 Basic Apache configuration (weight: 4)

Weight

4
Description Candidates should be able to install and configure a web server. This objective includes monitoring the server's load and performance, restricting client user access, configuring support for scripting languages as modules and setting up client user authentication. Also included is configuring server options to restrict usage of resources. Candidates should be able to configure a web server to use virtual hosts and customise file access.

Key Knowledge Areas:

  • Apache 2.x configuration files, terms and utilities
  • Apache log files configuration and content
  • Access restriction methods and files
  • mod_perl and PHP configuration
  • Client user authentication files and utilities
  • Configuration of maximum requests, minimum and maximum servers and clients
  • Apache 2.x virtual host implementation (with and without dedicated IP addresses)
  • Using redirect statements in Apache's configuration files to customise file access

The following is a partial list of the used files, terms and utilities:

  • access logs and error logs
  • .htaccess
  • httpd.conf
  • mod_auth
  • htpasswd
  • htgroup
  • apache2ctl
  • httpd


208.2 Apache configuration for HTTPS (weight: 2)

Weight

2
Description Candidates should be able to configure a web server to provide HTTPS.

Key Knowledge Areas:

  • SSL configuration files, tools and utilities
  • SSL certificate handling

The following is a partial list of the used files, terms and utilities:

  • Apache2 configuration files
  • /etc/ssl/*
  • openssl


208.3 Implementing Squid as a caching proxy (weight: 2)

Weight

2
Description Candidates should be able to install and configure a proxy server, including access policies, authentication and resource usage.

Key Knowledge Areas:

  • Squid 3.x configuration files, terms and utilities
  • Access restriction methods
  • Client user authentication methods
  • Layout and content of ACL in the Squid configuration files

The following is a partial list of the used files, terms and utilities:

  • squid.conf
  • acl
  • http_access

208.4 Implementing NXINX as a web server and a reverse proxy (weight: 2)

Weight

2
Description Candidates should be able to install and configure a reverse proxy server, Nginx. Basic configuration of Nginx as a HTTP server is included.

Key Knowledge Areas:

  • Nginx
  • Reverse Proxy
  • Basic Web Server

The following is a partial list of the used files, terms and utilities:

  • /etc/nginx/
  • nginx



Topic 209: File Sharing

209.1 Samba Server Configuration (weight: 5)

Weight

5
Description Candidates should be able to set up a SAMBA server for various clients. This objective includes setting up Samba for login clients and setting up the workgroup in which a server participates and defining shared directories and printers. Also covered is a configuring a Linux client to use a Samba server. Troubleshooting installations is also tested.

Key Knowledge Areas:

  • Samba version 3 documentation
  • Samba configuration files
  • Samba tools and utilities
  • Mounting Samba shares on Linux
  • Samba daemons
  • Mapping Windows user names to Linux user names
  • User-Level and Share-Level security

The following is a partial list of the used files, terms and utilities:

  • smbd, nmbd
  • smbstatus, testparm, smbpasswd, nmblookup
  • smbclient
  • net
  • /etc/smb/*
  • /var/log/samba/


209.2 NFS Server Configuration (weight: 4)

Weight

4
Description Candidates should be able to export filesystems using NFS. This objective includes access restrictions, mounting an NFS filesystem on a client and securing NFS.

Key Knowledge Areas:

  • NFS version 3 configuration files
  • NFS tools and utilities
  • Access restrictions to certain hosts and/or subnets
  • Mount options on server and client
  • tcpwrappers
  • Awareness of NFSv4

The following is a partial list of the used files, terms and utilities:

  • /etc/exports
  • exportfs
  • showmount
  • nfsstat
  • /proc/mounts
  • /etc/fstab
  • rpcinfo
  • mountd
  • portmapper



Topic 210: Network Client Management

210.1 DHCP configuration (weight: 2)

Weight

2
Description Candidates should be able to configure a DHCP server. This objective includes setting default and per client options, adding static hosts and BOOTP hosts. Also included is configuring a DHCP relay agent and maintaining the DHCP server.

Key Knowledge Areas:

  • DHCP configuration files, terms and utilities
  • Subnet and dynamically-allocated range setup

The following is a partial list of the used files, terms and utilities:

  • dhcpd.conf
  • dhcpd.leases
  • /var/log/daemon.log and /var/log/messages
  • arp
  • dhcpd


210.2 PAM authentication (weight: 3)

Weight

3
Description The candidate should be able to configure PAM to support authentication using various available methods.

Key Knowledge Areas:

  • PAM configuration files, terms and utilities
  • passwd and shadow passwords

The following is a partial list of the used files, terms and utilities:

  • /etc/pam.d
  • pam.conf
  • nsswitch.conf
  • pam_unix, pam_cracklib, pam_limits, pam_listfile


210.3 LDAP client usage (weight: 2)

Weight

2
Description Candidates should be able to perform queries and updates to an LDAP server. Also included is importing and adding items, as well as adding and managing users.

Key Knowledge Areas:

  • LDAP utilities for data management and queries
  • Change user passwords
  • Querying the LDAP directory

The following is a partial list of the used files, terms and utilities:

  • ldapsearch
  • ldappasswd
  • ldapadd
  • ldapdelete


210.4 LDAP Server Basics (weight: 4)

Weight

4
Description Candidates should be able to configure a basic OpenLDAP server including knowledge of LDIF format and essential access controls. An understanding of the role of SSSD in authentication and identity management is included.

Key Knowledge Areas:

  • OpenLDAP
  • Access Control
  • Directories
  • Awareness of System Security Services Daemon (SSSD)

The following is a partial list of the used files, terms and utilities:

  • slapd
  • LDIF
  • slapadd
  • slapcat



Topic 211: E-Mail Services

211.1 Using e-mail servers (weight: 4)

Weight

4
Description Candidates should be able to manage an e-mail server, including the configuration of e-mail aliases, e-mail quotas and virtual e-mail domains. This objective includes configuring internal e-mail relays and monitoring e-mail servers.

Key Knowledge Areas:

  • Configuration files for postfix
  • Basic knowledge of the SMTP protocol
  • Awareness of sendmail and exim

The following is a partial list of the used files, terms and utilities:

  • Configuration files and commands for postfix
  • /etc/postfix/*
  • /var/spool/postfix
  • sendmail emulation layer commands
  • /etc/aliases
  • mail-related logs in /var/log/


211.2 Managing Local E-Mail Delivery (weight: 2)

Weight

2
Description Candidates should be able to implement client e-mail management software to filter, sort and monitor incoming user e-mail.

Key Knowledge Areas:

  • procmail configuration files, tools and utilities
  • Usage of procmail on both server and client side

The following is a partial list of the used files, terms and utilities:

  • ~/.procmailrc
  • /etc/procmailrc
  • procmail
  • mbox and Maildir formats


211.3 Managing Remote E-Mail Delivery (weight: 2)

Weight

2
Description Candidates should be able to install and configure POP and IMAP daemons.

Key Knowledge Areas:

  • Courier IMAP and Courier POP configuration
  • Dovecot configuration

The following is a partial list of the used files, terms and utilities:

  • /etc/courier/*
  • dovecot.conf



Topic 212: System Security

212.1 Configuring a router (weight: 3)

Weight

3
Description Candidates should be able to configure a system to perform network address translation (NAT, IP masquerading) and state its significance in protecting a network. This objective includes configuring port redirection, managing filter rules and averting attacks.

Key Knowledge Areas:

  • iptables configuration files, tools and utilities
  • Tools, commands and utilities to manage routing tables.
  • Private address ranges
  • Port redirection and IP forwarding
  • List and write filtering and rules that accept or block datagrams based on source or destination protocol, port and address
  • Save and reload filtering configurations
  • Awareness of ip6tables and filtering

The following is a partial list of the used files, terms and utilities:

  • /proc/sys/net/ipv4
  • /etc/services
  • iptables


212.2 Managing FTP servers (weight: 2)

Weight

2
Description Candidates should be able to configure an FTP server for anonymous downloads and uploads. This objective includes precautions to be taken if anonymous uploads are permitted and configuring user access.

Key Knowledge Areas:

  • Configuration files, tools and utilities for Pure-FTPd and vsftpd
  • Awareness of ProFTPd
  • Understanding of passive vs. active FTP connections

The following is a partial list of the used files, terms and utilities:

  • vsftpd.conf
  • important Pure-FTPd command line options


212.3 Secure shell (SSH) (weight: 4)

Weight

4
Description Candidates should be able to configure and secure an SSH daemon. This objective includes managing keys and configuring SSH for users. Candidates should also be able to forward an application protocol over SSH and manage the SSH login.

Key Knowledge Areas:

  • OpenSSH configuration files, tools and utilities
  • Login restrictions for the superuser and the normal users
  • Managing and using server and client keys to login with and without password
  • Usage of multiple connections from multiple hosts to guard against loss of connection to remote host following configuration changes

The following is a partial list of the used files, terms and utilities:

  • ssh
  • sshd
  • /etc/ssh/sshd_config
  • /etc/ssh/*
  • Private and public key files
  • PermitRootLogin, PubKeyAuthentication, AllowUsers, PasswordAuthentication, Protocol


212.5 Security tasks (weight: 3)

Weight

3
Description Candidates should be able to receive security alerts from various sources, install, configure and run intrusion detection systems and apply security patches and bugfixes.

Key Knowledge Areas:

  • Tools and utilities to scan and test ports on a server
  • Locations and organisations that report security alerts as Bugtraq, CERT, CIAC or other sources
  • Tools and utilities to implement an intrusion detection system (IDS)
  • Awareness of OpenVAS and Snort

The following is a partial list of the used files, terms and utilities:

  • telnet
  • nmap
  • fail2ban
  • nc
  • iptables


212.6 OpenVPN (weight: 2)

Weight

2
Description Candidates should be able to configure a VPN (Virtual Private Network) and create secure point-to-point or site-to-site connections.

Key Knowledge Areas:

  • OpenVPN

The following is a partial list of the used files, terms and utilities:

  • /etc/openvpn/*
  • openvpn




Future Change Considerations

Future changes to the objective will/may include:

  • EFI shell, gdisk, parted not included. More appropriate in LPIC-1 update.
  • lighttpd would have been too much coverage of web services. Perhaps reduce Apache next revision to make room.
  • host level IDS (tripwire, AIDE, etc) to be covered in future LPIC-1.
  • sieve and maildrop to be considered in a future update.
  • SAN and iSCSI, AoE, and FCoE to be considered in a future update.
  • encrypted file systems are covered in-depth in LPI-303 exam.