Certification: A First Look at LPIC-3 Certification
Emmett Dulaney
Among the most respected vendor-neutral certifications in
the industry are those from the Linux Professional Institute (LPI). LPI Level 1
certification (LPIC-1) is the junior-level certification intended to verify the
very basic skills needed by a beginning administrator to work with Linux. There
are two exams that you must pass, and they consist of questions that are
multiple-choice as well as fill-in-the-blank -- the latter question type
making the exams much more difficult than those from many other vendors. LPIC-2
certification also requires passing two exams with the same question types, but
now the topics are much more advanced and you need to be a knowledgeable
administrator to pass.
Since the certification began, LPI has planned three
levels of certification, with the highest level equivalent to what other
vendors refer to as an engineer. While the other two levels fell into place
some time ago, this highest level has been elusive -- until now. In
October of 2006, LPI began beta testing the LPIC-3 exams. The two exams in this
phase are referred to as 301 and 302. Exam 301 focuses on LDAP, capacity
planning and related technologies; exam 302 focuses on Samba and network
file/print services. It is too early for the final objectives to be in place or
for weighting to be applied to them (one of the great things LPI posts for
test-takers to know where to focus most of their attention on), but as soon as
they are finalized, they will posted. Until then, the lists that follow are of
the topics/tasks as they currently exist.
301 Tasks
This exam looks at authentication and naming, requiring a
keen understanding of LDAP. It also looks at integration with core network
services, capacity planning, and troubleshooting. The task list, as it now
exists, includes:
LDAP
1. LDAP Concepts and Architecture
LDAP and X.500 technical specification
Directory namespace
Attribute definitions
Distinguished names
Authentication methods
LDIF -- LDAP Data Interchange Format -- files
2. Directory Design
Defining directory content
Designing data
Organizing the directory
Planning security
Designing server infrastructure
3. OpenLDAP Server
Compiling and configuring from source
Configuration layout
Backend databases
Configuring service files
Managing OpenLDAP daemons
Testing OpenLDAP
4. Client Configuration
Configuring client
Testing client functionality
Client software deployment
Using client tools and useful parameters
5. Replication
Replication concepts
Replication topologies
Configuring replication
Running and managing replication daemons
Replication logs analysis
6. Access Control List
Planning ACLs
Restricting directory access
Access level types
Granting and revoking permissions
Access control attribute syntax
7. Searching the directory
Using search tools
Advanced searching options
Optimizing searching
8. Schemas
Schema concepts
Changing schemas
Using common schemas
Creating new schemas to meet demand
9. NIS to LDAP Migration
Analyzing NIS structure
Migration planning creation
Automating data migration
Administering NIS resources
Creating a NIS gateway
10. User Authentication with LDAP and PAM
Configuring server for LDAP authentication
Configuring name service switch for LDAP Listing
Setting up PAM modules for LDAP authentication
Troubleshooting LDAP authentication
11. Email and LDAP
Planning LDAP structure for email services
Planning email directory tree
Creating email objects
Implementing mail alias lookups
Integrating with Postfix
Integrating with Sendmail
12. Unix services and LDAP
SSH and LDAP
FTP and LDAP
HTTP and LDAP
Free radius and LDAP
Printing service and LDAP
13. Whitepages
Planning Whitepages services
Configuring Whitepages service
Testing Whitepages
14. Integrating with Samba
Migrating from smbpasswd to LDAP
LDAP Samba password backend
Samba schema
15. Integrating with Active Directory
Cross-platform authentication
Single sign-on concepts
Kerberos authentication and LDAP
Integration and compatibility limitations
16. Authenticating Mixed Unix Environment
Planning LDAP client compatibility matrix
Configuring LDAP name service switch in
different Unix environments
Configuring LDAP PAM modules in different
Unix environments
Testing clients
17. Securing the Directory
TLS and SSL
Backing up LDAP data
Disaster recovery planning
18. Performance Tuning
LDAP measuring methods
Software tuning
Hardware tuning
19. Basic Perl-LDAP Development using Net::LDAP
Module
Net::LDAP module
Connecting, binding and searching
Automating LDAP administrative tasks
Miscellaneous
Understand the characteristics of a directory
- Identify scenarios/data sets suitable for storage in a directory
Relation to X.500 DAP
Familiar with the various database backends supported
Implementation to replace & consolidate existing services and databases
- Assess the current infrastructure to discover possible sources of data for the LDAP system
- Gather information from the most appropriate sources
Utilize meta-directories to extrapolate data
from one source in order to import it into the LDAP directory
Plan for an appropriate Directory
Information Tree (DIT) to avoid redundancy
Installation
Know the difference between the release types
Compile time options
How to handle common errors during installation
Characteristics of the user account slapd runs as
The slapd.conf file
- Common configuration directives
- Access control lists (ACLs)
- Database definitions
Factors that should be taken into consideration when deciding how much memory an LDAP server requires
Data Definitions
Understand Distinguished Names (DNS), "Base DN” vs. "Relative DN”
Understand the difference between Attributes and Object Classes
Understand the importance of a well-defined schema
"Distributed Schema Files” vs. "Extended Schema”
Understand the format of an OpenLDAP schema file
- Syntax for the definition of Attributes and Object Classes
Object Identifiers (OIDs)
- Proper syntax
- Understand the importance of
- Obtaining an OID for your company
How to include custom schema files
Schema checking
- What it does
- Why it's important to leave turned on
Groups
- Static, dynamic, combined
- Using groups effectively to organize entries in the directory
Using Class of Service to ease maintenance of redundant information
LDAP Data Interchange Format (LDIF)
- Syntax of an LDIF record
- Changetype operations, how to chain, how failures are handled
Indexes
- Reasons for
- Different types
Administration
slapd command-line options
The appropriate method to stop the slapd daemon
- Consequences of killing slapd inappropriately
Importance of log files
Search filters and syntax
Command-line tools using the LDAP API
- ldapsearch
- ldapadd
- ldapmodify
- ldapdelete
- ldapmodrdn
Implementation-specific (OpenLDAP) command-line tools
- slapindex
- slapadd
- slapcat
Security
Firewall considerations
- What ports/protocols must be allowed through
Access control with TCP wrappers
Security Strength Factors (SSF)
- Disallowing operations in the absence of appropriate protections
- Integration with ACLs
Authentication
- Anonymous
- Unauthenticated
- User/password authentication
- SASL
The Bind Operation
- BindRequest, AuthenticationChoice, SASLCredentials
SASL
- Maintaining the SASL user DB with saslpasswd/saslpasswd2
- Configuring SASL in slapd.conf
- Using SASL in search operations
- SASL proxy authorization
- Shared-secret mechanisms
- Available authentication mechanisms
- GSSAPI for Kerberos V, DIGEST-MD5, PLAIN, EXTERNAL
- Mapping authentication identities
- Direct mapping
- Search-based mapping
- Importance of indexing attributes which are queried for authentication
- GSSAPI
- Creating service keys
- Ticket Granting Tickets (TGTs)
- Using with command-line tools
- DIGEST-MD5
- Syntax of the authz-regexp directive
- Proxy authorization
- Enabling authorization features in the server's configuration
- Using with the command-line tools
- Configuring authorization rules via the authzTo and authzFrom attributes
- TLS
- Client/Server certificates
- Server slapd.conf configuration directives
- Client ldap.conf configuration directives
- Initiating the StartTLS operation with the command line tools
Replication
Understand the roles of:
- Master server
- Consumer/slave host
- Replica hubs
slurpd command-line options
slurpd one-shot mode
Understand how updates are propagated via a
changelog/replication log
Understand how rejections are logged, and
the format of the reject log filename
slapd.conf configuration directives for
setting up a master server
slapd.conf configuration directives for
setting up a
consumer/slave host
Best practices for initially populating a consumer
- slapcat vs. ldapsearch vs. copying the DB files
Referrals
DNS resource records
Subordinate knowledge information, creating
referrals with the "ref” attributes
Superior knowledge information, creating
referrals with the "referral” directive
The ManageDsaIT control
Sync Replication with the syncrepl engine
LDAP sync protocol
Pull-based vs. push-based synchronization
RefreshOnly vs. refreshAndPersist synchronization
operations
Configuring the overlay in the provider's
slapd.conf
Configuring syncrepl in the consumer's slapd.conf
Proxy Cache Engine
slapd.conf configuration directives
Defining search filter templates with the
proxyTemplate directive
Programming and Integration with Services
Programming with:
Integrating with:
Capacity Planning
/proc filesystem
free
iostat
netstat
nfsstat
pmap
ps
sar
top
vmstat
302 Tasks
This exam looks at network file and print services, with a
keen understanding of Samba required. It also looks at integration with core
network services and troubleshooting. The task list, as it now exists,
includes:
1. Concepts
SMB/CIFS
LanManager
Wins
NetBIOS
Node Types
2. Samba Project Management
Mapping resources
Planning Samba migration
Defining requisites and restrictions
Designing domains and relations
3. Samba Roles
Security modes
Domain membership
Primary Domain Controller Server
Backup Domain Controller Server
Samba and Active Directory Integration
Samba Master Browser
Discuss the roles of Local Master Browsers (LMBs) & Domain Master Browsers (DMBs)
Explore the SMB workgroup implementation
4. Configure and Build from Source
Identify key Samba packages & contents
Checking dependencies
Configuration options
Identifying Samba software structure
Upgrading Samba
Enabling SWAT
5. Install Samba
Analyze compiled Samba binaries
Starting services
Samba daemons
6. Configure Samba
Explore Samba server configuration
Configuration file structure
Validating configuration
Variables
Configuring SWAT
Use findsmb & smbclient to reveal the
active browse lists
7. CIFS Integration
Mount remote CIFS shares into the Linux file system
Share mounted CIFS directories using Samba
Discuss the features & benefits of CIFS
Identify package & files
Create temporary mount point for remote SMB share
Examine resultant Linux file-system
permissions post CIFS mount
Transfer files to mount point (Remote
Windows 2003 system) & examine results
Identify CIFS process footprint
Mount remote SMB share with
previously-defined hidden credentials file
Modify system startup file to facilitate
automatic CIFS mounts upon system restart
8. Configure Clients
Knowledge of Microsoft Windows as clients
Configure Samba-3 into an NT4 environment
Install rdesktop client for remote desktop
connectivity to Windows 2003 Server
Explore browse list & SMB clients from
Windows 2003
Share file resource on Windows 2003 Server
for use by Samba clients
Join common workgroup from Windows 2003 host
Use smbclient to enumerate & connect to
shared resources on XP/2003 hosts
Transfer files between Samba and Windows 2003 hosts using smbclient
Testing connectivity on Linux with smbclient
Using mount to connect to a Samba Server
net Utility
Explore anonymous and authenticated share
enumeration using smbclient
Use smbget to download files
non-interactively from remote SMB server
Use smbclient with credentials stored in a
hidden file
9. User and Group Management
Manage users' accounts
Mapping usernames
Setup Password Database
The smbpasswd file
Password synchronization
SID -- Security Identifiers
User/Group mapping
Password backends
LDAP Directories and Samba
Account management tools
10. Winbind Service
Winbind internals
Configuring Winbind
Winbind and trust domains
Name Service Switch and PAM
Testing Winbind with wbinfo And getent
Discuss the features & advantages of Winbind
Discuss the accounts resolutions process
Alter the name server switch process to
facilitate winbind
Discuss UNIX/Linux uids & gids
Explain the application of idmaps -- uids
& gids
Configure Samba to use Winbind
Enumerate remote Active Directory users
using wbinfo & getent
Examine auto-assigned uids & gids via idmap
Connect to Samba server using Active
Directory users & Winbind
Configure SSHD to support Winbind-provided
users from Active Directory
Configure Winbind to use the default Active
Directory domain for authentication
Configure VSFTPD to use the default Active
Directory domain for authentication
11. File Services
Planning file service migration
Creating and configuring file sharing
Creating scripts for user and group handling
Setup using share of user home directory
Configure [homes]
Hide IPC$
Setup for changing file access permissions
and owner forcedly
Using parameters force user, file mode, etc.
12. Print Services
Planning print service migration
Creating and configuring print shares
Samba and CUPS integration
Managing Windows print drivers
Point'n' Print feature
Print service and security
Device mode
Creating PDF printer
Print accounting
Setup for downloading printer's driver
Configure [print$]
13. Authentication and Authorization
Mapping to guest account
Integrating with Kerberos
ACL
Password and username level
Synchronizing passwords
User privilege management
14. Name resolution -- Workgroup & Windows
Internet Naming System (WINS) Integration
Discuss NETBIOS naming rules
Identify system broadcast address &
discuss broadcast-based NETBIOS name resolution
Identify key Samba configuration file &
package
membership
Use findsmb to reveal available workgroups
Alter Samba configuration file to join
available
workgroup
Identify key TCP/UDP ports used by key Samba
daemons
Use findsmb & browse list to confirm
workgroup
membership
Enumerate default Samba shares on primary
Linux
system using smbclient
Introduction to smbpasswd utility and database
Use smbpasswd to add Windows user to
database & confirm authentication from Windows host
Install WINS Server on Windows 2003 Server
for use by SMB-clients
Explain default Samba NETBIOS name
resolution order
Identify name resolution order directive in primary
Samba configuration file
Configure Samba server to be a WINS client
via Samba configuration file
Confirm WINS NETBIOS registrations of Samba
& Windows hosts
Configure name resolution order
Set up and configure name resolution
Name resolution concepts
Configure Samba as a WINS server &
discuss capabilities
WINS replication
lmhosts file
Browsing
DNS proxy
NetBIOS name cache
15. Service announcement (browsing)
Browsing process
Manage browsing parameters
Set up and configure browsing configuration
16. Active Directory (AD) -- BIND Integration
Discuss the DNS requirements of Active Directory
Install BIND from RPM repository
Configure BIND as a caching-only name server
Define usable BIND named.conf configuration
file with appropriate zones
Define required Active Directory dynamically
updateable zones
Install Active Directory on Windows server
Confirm BIND DNS connectivity
Configure Kerberos to support Active
Directory realm & test connectivity
Convert Samba from basic user-level to ADS
security mode
Use the net command to create Samba machine
account in the Active Directory
Confirm authentication against Active
Directory when accessing resources
Create AD -> Linux corresponding users
for transparent access
Add computer in existing Active Directory
Join AD domain and set up Kerberos
Convert Samba from basic user-level to ADS
security mode
17. Domain controller
Add computer in existing domain
Set up Primary Domain Controller (PDC)
Set up Backup Domain Controller (BDC)
Using smbldap-tools
Install and set up Winbind
Using logon scripts
Using roaming profiles
Using system policies
Trust from/to other domain(s)
18. Administration
Use smbtree to enumerate the active
workgroups, hosts & file & print shares
Identify & discuss the roles of the key Samba
daemons
Managing Samba daemons
Samba Control Tool
Samba Web Administration Tool (SWAT)
- Discuss the features & benefits of Samba SWAT
- Explore XINETD system configuration for the presence of Samba SWAT
- Install Samba SWAT from the local package repository
- Update XINETD configuration to enable Samba SWAT & confirm TCP listener
- Authenticate to Samba SWAT as non-privileged and privileged users
- Examine current smbd & nmbd connections
- Explore & discuss the key tools included with Samba
- Correlate Samba's primary configuration file to Samba SWAT's Web interface
- Discuss the key directives in the global section of the Samba SWAT Web interface
- Discuss additional directives in the advanced view of the Samba SWAT global area
- Adjust the OS level and examine the changes to the role in the browse list
- Discuss Samba WINS server rules & limitations
- Explore shares configuration
- Correlate shares section of main config file to Samba SWAT's shares interface
- Discuss the effects of various share directives
- Discuss the variable homes share and its applications
- Explain Samba's create mask directive & examine its application
- Examine the advanced Samba SWAT shares view & discuss key directives
- Define valid & invalid users per share & test connectivity from remote Windows host
- Force ownership of file & directory objects using the force user directive
- Explore & discuss advanced printer share directives
- Define multiple NETBIOS names and view results in the browse list
Setup logging to utmp
Print Status (smbstatus)
Using VFS
Shadow copy
Virus Check
Quota
Audit File Access Log
Backup
Create tar-compatible archives of remote
SMB-share using smbtar
Troubleshooting
- Explore Samba logging
- Samba tracing using UNIX tools
- Reading daemon debug information
- Generating and analyzing detailed samba information
- Browsing troubleshooting
- Name resolution troubleshooting
19. Security
Using user/group access control
Samba user-level security mode
- Explain the advantages and features of user-level security
- Discuss the user-accounts back-ends supported by Samba
- Convert Samba from share-level to user-level security mode
- Test user-level connectivity to Samba shares/services
- Discuss IPC$ connections and applications
- Explore passwd & shadow user-accounts databases
- Explore the smbpasswd database
Using file/directory permission control
Using host control
Using firewall protection
Samba security modes
Using ACL
Basic Samba security options
Firewall settings
Samba audit
20. Samba Clustering
High-availability Samba cluster
Discuss Samba load balance clustering
21. Performance Tuning
Measuring Samba performance
Improving file transfer speed
Optimizing Samba memory
Network tuning
22. Trivial Database Files
Discuss TDB files structure
TDB files backup/restore
Identifying TDB files corruption
Editing and dumping TDB files
23. Linux File System & Share/Service Permissions
Explain how Samba interacts with file-system
permissions
Explain UNIX/Linux file-system permissions --
UGO
Use chown/chmod to adjust file-system permissions
Discuss the applicable Samba share/service
permissions directives
Apply various share/service permissions & test
results
24. Internationalization
Understanding character codes and code-page
Patch and build the appropriate code conversion
library
Understanding the difference in the name
space between Windows and Linux/Unix
- User/group name
- Computer name
Configure SWAT screen in local language
25. Miscellaneous
Time syncing
Windows Messenger Service
Create share/service with appropriate
permissions for collaborations
Examine collaborative permission from Windows client
For More Information on LPIC-3 Certification
Elsewhere in this supplement, fifty sample questions on
Samba allow you to test your knowledge and judge your own readiness for this
certification. For more information on the certification itself, though, look to
these resources:
LPI home page: http://www.lpi.org
LPIC-3 exam development main page: https://group.lpi.org/cgi-bin/publicwiki/view/Examdev/LPIC-3
Information on exam development process: https://www1.lpi.org/en/examdev.html
Emmett Dulaney is the author and co-author of several
books on Linux, Unix, and certification, including the recent A+ Fast Pass,
Third Edition. He is a former partner in Mercury Technical Solutions, his blog
can be found at http://edulaney.blogspot.com, and he can be reached at edulaney@iquest.net.
|