If you're an experienced system administrator looking to acquire Linux skills, or a seasoned Linux user facing a new challenge, Linux System Administration offers practical knowledge for managing a complete range of Linux systems and servers. The book summarizes the steps you need to build everything from standalone SOHO hubs, web servers, and LAN servers to load-balanced clusters and servers consolidated through virtualization. Along the way, you'll learn about all of the tools you need to set up and maintain these working environments.
Linux is now a standard corporate platform with users numbering in the hundreds of millions, and there is a definite shortage of talented administrators. Linux System Administration is ideal as an introduction to Linux for Unix veterans, MCSEs, and mainframe administrators, and as an advanced (and refresher) guide for existing Linux administrators who will want to jump into the middle of the book. Inside, you'll learn how to:
- Set up a stand-alone Linux server
- Install, configure, maintain, and troubleshoot a DNS server using BIND
- Build an Internet server to manage sites, perform email and file transfers, and more
- Set up an email service for a small-to-medium-sized site, complete with authentication
- Install and configure Apache, PHP, and MySQL on a web server built from scratch
- Combine computers into a load-balanced Apache web server cluster based on the free Linux Virtual Server
- Set up local network services from distributed file systems to DHCP services, gateway services, print services, user management and more
- Use Linux virtualization with Xen or VMWare to run multiple kernels on one piece of hardware; manage each kernel's access to processor time, devices, and memory
- Create shell scripts and adapt them for your own needs
- Back up and restore data with rsync, tar, cdrecord, Amanda, and MySQL tools
Linux System Administration is not only knowledgeable and practical, but convenient. The ingredients for this book had been scattered throughout mailing lists, forums, and discussion groups, as well as books, periodicals, and the experiences of colleagues. Everything is now in one handy guide. In the course of their research, the authors also solved many problems whose solutions were completely undocumented. They now pass their lessons on to you.
Linux System Administration......Page 1
Table of Contents......Page 6
Preface......Page 10
How This Book Is Organized......Page 11
Conventions Used in This Book......Page 12
How to Contact Us......Page 13
Acknowledgments......Page 14
Requirements for a Linux System Administrator......Page 16
How Can We Help?......Page 17
Do You Need a Book?......Page 18
Help Wanted......Page 19
Analyzing Skill Sets......Page 20
What System Managers Should Know About Linux......Page 21
What’s Next......Page 22
Setting Up a Linux Multifunction Server......Page 23
Server Requirements......Page 24
Installing Debian......Page 25
Logging in Remotely......Page 27
Configuring the Network......Page 28
Changing the Default Debian Packages......Page 30
Setting Up Quotas......Page 31
Providing Domain Name Services......Page 33
Adding a Relational Database: MySQL......Page 35
Configuring Mail Securely with Postfix, POP3, and IMAP......Page 37
Putting Apache to Work......Page 48
Adding FTP Services with ProFTPD......Page 49
Summarizing Your Web Statistics with Webalizer......Page 50
Installing Perl Modules Needed by SpamAssassin......Page 51
What’s Next......Page 52
DNS Basics......Page 53
Advantages of Localized DNS Administration......Page 54
Components of BIND......Page 55
Setting Up a DNS Server......Page 56
Using a chroot Environment for Security......Page 57
Configuring an Authoritative DNS Server......Page 59
The Distributed Method of Resolving Domain Names......Page 60
Finding a Domain......Page 61
Primary and Secondary DNS Servers......Page 62
Caching-Only Servers......Page 64
named.conf......Page 65
The Primary Zone File......Page 68
Enhancements and advanced features......Page 70
Putting it all together......Page 73
The Reverse Zone File......Page 74
Testing Lookups......Page 75
Configuring the Secondary Nameserver......Page 76
BIND Tools......Page 77
nslookup......Page 78
rndc......Page 79
Cannot Connect Using rndc......Page 81
named Starts but Does Not Resolve Names......Page 82
Hosts Aren’t Recognized......Page 83
What’s Next......Page 86
An Initial Internet-Ready Environment......Page 88
Requirements......Page 89
Getting Started......Page 91
ISPConfig Directory Structure......Page 97
Adding Clients and Web Sites......Page 98
Managing Users and Email......Page 106
Email Client Configuration......Page 110
The Role of a Daemon-Monitoring Daemon......Page 111
Installing and Configuring monit......Page 113
What’s Next......Page 116
Mail......Page 117
Postfix, Sendmail, and Other MTAs......Page 118
Debian Postfix-Related Packages......Page 120
Installing Postfix on Debian......Page 121
Basic Postfix Configuration......Page 123
Testing Mail......Page 125
SASL Authentication......Page 126
Configuring Postfix with SASL to authenticate users with accounts......Page 127
The saslauthd daemon......Page 129
TLS Encryption......Page 130
Configuring POP3 and IMAP Mail Delivery Agents......Page 134
Email Client Configuration......Page 135
What’s Next......Page 136
Static and Dynamic Files......Page 137
A Simple LAMP Setup......Page 138
Apache......Page 139
MySQL......Page 140
Apache Configuration Files......Page 142
Configuration File Directives......Page 143
User and Group directives......Page 144
User files......Page 145
Containers and Aliases......Page 147
Aliases......Page 148
Server-Side Includes......Page 149
File suffix......Page 151
Name-based virtual hosts......Page 153
mod_vhost_alias......Page 154
Log Splitting and Rotation......Page 155
Analyzing Logs with Webalizer......Page 156
SSL/TLS Encryption......Page 157
suEXEC Support......Page 158
Benchmarking......Page 159
Installing and Administering Drupal......Page 160
Installing Drupal with apt-get......Page 161
Installing Drupal from Source......Page 162
Configuring Drupal......Page 163
Web Page Doesn’t Appear in Browser......Page 164
SSL Doesn’t Work......Page 167
Further Reading......Page 168
Load Balancing and High Availability......Page 169
IPVS on the Load Balancer......Page 170
ldirectord......Page 171
Configuring the Realservers (Apache Nodes)......Page 172
Configuring the Load Balancer......Page 173
Testing the System......Page 174
Adding Other LB Services......Page 176
Further Reading......Page 177
Local Network Services......Page 178
Introduction to Samba......Page 179
Configuring the Network......Page 180
DHCP......Page 183
Installing DHCP......Page 184
Starting Your DHCP Service......Page 186
Assigning IPv6 Addresses with radvd......Page 187
Gateway Services......Page 188
Another Approach to Gateway Services......Page 191
Print Services......Page 196
Printing Software Considerations......Page 197
Cross-Platform Printing......Page 198
Controlling Print Queues from the Command Line......Page 200
User Management......Page 201
Removing a User......Page 204
Sealing the Home Directory......Page 205
Graphical User Managers......Page 206
Why Virtualization Is Popular......Page 209
High-Performance Computing......Page 211
Rapid Provisioning......Page 212
How Virtualization Helps......Page 213
Installing Xen on Fedora 5......Page 214
Fedora Core 5......Page 216
Other guests......Page 217
Installing VMware......Page 219
Installing a VMware Guest OS......Page 224
Virtualization: A Passing Fad?......Page 225
Scripting......Page 226
bash Beginnings......Page 227
Pathnames and Permissions......Page 228
The Default Path......Page 229
I/O Redirection......Page 230
Variables......Page 232
Expressions......Page 233
If.........Page 234
Troubleshooting a Simple Script......Page 236
Loops......Page 238
cron Jobs......Page 240
Scripting Language Shootout......Page 241
Data Format: The /etc/passwd File......Page 242
The bash script......Page 243
The Perl script......Page 245
The PHP script......Page 247
The Python script......Page 248
Choosing a Scripting Language......Page 249
Further Reading......Page 250
Backing Up Data......Page 251
rsync Basics......Page 252
Making a User Backup Script......Page 254
Listing Files on the Backup Server......Page 255
Automated Backups......Page 256
tar Archives......Page 257
Extracting from an Archive......Page 258
A Complete Example of Packing and Unpacking with tar......Page 259
Saving Files on Optical Media......Page 260
Accessing Your CD-R Drive......Page 262
Preparing Files to Record on a CD-R......Page 263
Recording the CD-R......Page 264
Verifying the Recording......Page 265
Backing Up and Archiving to Tape with Amanda......Page 266
Installing Amanda......Page 267
Configuring Amanda......Page 268
Backing Up MySQL Data......Page 269
Adding Users......Page 272
Random Password Generator......Page 273
Authoritative DNS Lookup......Page 275
Sending Files Between Shell Sessions......Page 276
Integrating ssh and screen......Page 283
Index......Page 288