《使用Perl实现系统管理自动化》PDF下载

  • 购买积分:18 如何计算积分?
  • 作  者:DAVIDN.BLANK-EDELMAN著
  • 出 版 社:南京:东南大学出版社
  • 出版年份:2010
  • ISBN:9787564119287
  • 页数:644 页
图书介绍:如果您从事任何系统管理方面的工作,就必须在应对日益复杂工作环境的同时,还要满足对您时间不断增加的需求。《使用Perl实现系统管理自动化》不仅提供了可用于工作的恰当工具,还给出了许多建议,帮助您解决特定问题以及安全地自动处理重复事务。这一版的“水獭书”经过更新和扩充,涵盖了最新的操作系统、技术和Perl模块。

1.Introduction 1

Automation Is a Must 1

How Perl CanHelp You 2

This Book Will Show You How 3

What You Need 5

Some Notes About the Perl Versions Used for This Book 6

What About Perl 5.10? 6

What About Strawberry Perl? 6

What About Perl 6? 6

Some Notes About Using Vista with the Code in This Book 7

Locating and Installing Modules 8

Installing Modules on Unix 9

Installing Modules on Win32 9

It's Not Easy Being Omnipotent 10

Don't Do It 10

Drop Your Privileges As Soon As Possible 10

Be Careful When Reading Data 11

Be Careful When Writing Data 12

Avoid Race Conditions 12

Enjoy 13

References for More Information 13

2.Filesystems 15

Perl to the Rescue 15

Filesystem Differences 16

Unix 16

Windows-Based Operating Systems 16

Mac OS X 18

Filesystem Differences Summary 19

Dealing with Filesystem Differences from Perl 19

Walking or Traversing the Filesystem by Hand 21

Walking the Filesystem Using the File::Find Module 26

Walking the Filesystem Using the File::Find::Rule Module 36

Manipulating Disk Quotas 38

Editing Quotas with edquota Trickery 40

Editing Quotas Using the Quota Module 44

Editing NTFS Quotas Under Windows 45

Querying Filesystem Usage 46

Module Information for This Chapter 48

References for More Information 48

3.User Accounts 49

Unix User Identities 50

The Classic Unix Password File 50

Changes to the Password File in BSD 4.4 Systems 57

Shadow Passwords 58

Windows-Based Operating System User Identities 59

Windows User Identity Storage and Access 59

Windows User ID Numbers 61

Windows Passwords Don't Play Nice with Unix Passwords 63

Windows Groups 63

Windows User Rights 68

Building an Account System to Manage Users 71

The Backend Database 73

The Low-Level Component Library 78

The Process Scripts 89

Account System Wrap-Up 94

Module Information for This Chapter 97

References for More Information 97

Unix Password Files 97

Windows User Administration 98

4.User Activity 99

Process Management 100

Windows-Based Operating System Process Control 100

Unix Process Control 119

File and Network Operations 125

Tracking File Operations on Windows 125

Tracking Network Operations on Windows 128

Tracking File and Network Operations in Unix 129

Module Information for This Chapter 135

Installing Win32::Setupsup 135

References for More Information 136

5.TCP/IP Name and Configuration Services 137

Host Files 137

Generating Host Files 140

Error-Checking the Host File Generation Process 143

Improving the Host File Output 144

Incorporating a Source Code Control System 148

NIS,NIS+,and WINS 151

NIS+ 154

Windows Internet Name Server(WINS) 154

Domain Name Service(DNS) 155

Generating DNS(BIND)Configuration Files 156

DNS Checking:An Iterative Approach 165

DHCP 174

Active Probing for Rogue DHCP Servers 176

Monitoring Legitimate DHCP Servers 181

Module Information for This Chapter 183

References for More Information 184

6.Working with Configuration Files 185

Configuration File Formats 188

Binary 188

Naked Delimited Data 189

Key/Value Pairs 190

Markup Languages 192

All-in-One Modules 235

Advanced Configuration Storage Mechanisms 236

Module Information for This Chapter 236

References for More Information 237

XML and YAML 237

7.SQL Database Administration 239

Interacting with a SQL Server from Perl 240

Using the DBI Framework 243

Using ODBC from Within DBI 249

Server Documentation 251

MySQL Server via DBI 252

Oracle Server via DBI 254

Microsoff SQL Server via ODBC 255

Database Logins 258

Monitoring Space Usage on a Database Server 260

Module Information for This Chapter 263

References for More Information 263

DBI 263

Microsoft SQL Server 264

ODBC 264

Oracle 264

8.Email 265

Sending Mail 265

Getting sendmail(or a Similar Mail Transport Agent) 266

Using the OS-Specific IPC Framework to Drive a Mail Client 266

Speaking the Mail Protocols Directly 268

Common Mistakes in Sending Email 273

Overzealous Message Sending 273

Subject Line Waste 282

Insufficient Information in the Message Body 282

Fetching Mail 285

Talking POP3 to Fetch Mail 285

Talking IMAP4revl to Fetch Mail 287

Processing Mail 291

Dissecting a Single Message 291

Dissecting a Whole Mailbox 296

Dealing with Spam 297

Support Mail Augmentation 305

Module Information for This Chapter 310

References for More Information 311

9.Directory Services 313

What's a Directory? 313

Finger:A Simple Directory Service 314

The WHOIS Directory Service 318

LDAP:A Sophisticated Directory Service 321

LDAP Programming with Perl 322

The Initial LDAP Connection 323

Performing LDAP Searches 325

Entry Representation in Perl 329

Adding Entries with LDIF 331

Adding Entries with Standard LDAP Operations 333

Deleting Entries 334

Modifring Entry Names 335

Modifying Entry Attributes 337

Deeper LDAP Topics 339

Putting It All Together 348

Active Directory Service Interfaces 354

ADSI Basics 355

Using ADSI from Perl 357

Dealing with Container/Collection Objects 359

Identifying a Container Object 360

So How Do Yon Know Anything About an Object? 360

Searching 363

Performing Common Tasks Using the WinNT and LDAP Namespaces 366

Working with Users via ADSI 367

Working with Groups via ADSI 369

Working with File Shares via ADSI 369

Working with Print Queues and Print Jobs via ADSI 370

Working with Windows-Based Operating System Services via ADSI 371

Module Information for This Chapter 373

References for More Information 373

LDAP 373

ADSI 374

10.Log Files 377

Reading Text Logs 377

Reading Binary Log Files 378

Using unpack() 378

Calling an OS(or Someone Else's)Binary 383

Using the OS's Logging API 384

Structure of Log File Data 385

Dealing with Log File Information 388

Space Management of Logging Information 388

Log Parsing and Analysis 395

Writing Your Own Log Files 425

Logging Shortcuts and Formatting Help 425

Basic/Intermediate Logging Frameworks 426

Advanced Logging Framework 428

Module Information for This Chapter 429

References for More Information 430

11.Security 433

Noticing Unexpected or Unauthorized Changes 434

Local Filesystem Changes 434

Changes in Data Served Over the Network 440

Noticing Suspicious Activities 442

Local Signs of Peril 442

Finding Problematic Patterns 444

Danger on the Wire,or"Perl Saves the Day" 449

Preventing Suspicious Activities 460

Suggest Better Passwords 460

Reiect Bad Passwords 461

Module Information for This Chapter 466

References for More Information 467

12.SNMP 469

Using SNMP from Perl 469

Sending and Receiving SNMP Traps,Notifications,and Informs 480

Alternative SNMP Programming Interfaces 484

Module Information for This Chapter 486

References for More Information 486

13.Network Mapping and Monitoring 489

Network Mapping 489

Discovering Hosts 490

Discovering Network Services 499

Physical Location 501

Presenting the Information 503

Textual Presentation Tools 503

Graphical Presentation Tools 507

Monitoring Frameworks 522

Extending Existing Monitoring Packages 524

What's Left? 526

Module Information for This Chapter 527

References for More Information 527

14.Experiential Learning 529

Playing with Timelines 530

Task One:Parsing crontab Files 530

Task Two:Displaying the Timeline 531

Task Three:Writing Out the Correct XML File 533

Putting It All Together 534

Summary:What Can We Learn from This? 536

Playing with Geocoding 537

Geocoding from Postal Addresses 537

Geocoding from IP Addresses 541

Summary:What Can We Learn from This? 544

Playing with an MP3 Collection 544

Summary:What Can We Learn from This? 546

One Final Exploration 546

Part One:Retrieving the Wiki Page with WWW::Mechanize 547

Part Two:Extracting the Data 550

Part Three:Geocoding and Mapping the Data 551

Summary:What Can We Learn from This? 554

Remember to Play 555

Module Information for This Chapter 555

Source Material for This Chapter 556

A.The Eight-Minute XML Tutorial 557

B.The 10-Minute XPath Tutorial 563

C.The 10-Minute LDAP Tutorial 573

D.The 15-Minute SQL Tutorial 579

E.The Five-Minute RCS Tutorial 593

F.The Two-Minute VBScript-to-Perl Tutorial 597

G.The 20-Minute SNMP Tutorial 603

Index 617