David N.Blank-Edelman是美國東北大學(xué)計算機與信息科學(xué)學(xué)院的技術(shù)主任,擁有25年在多種平臺上的系統(tǒng)/網(wǎng)絡(luò)管理員經(jīng)驗。
圖書目錄
Preface 1. Introduction Automation Is a Must How Perl Can Help You This Book Will Show You How What You Need Some Notes About the Perl Versions Used for This Book What About Perl 5.10? What About Strawberry Perl? What About Perl 6? Some Notes About Using Vista with the Code in This Book Locating and Installing Modules Installing Modules on Unix Installing Modules on Win32 It’s Not Easy Being Omnipotent Don’t Do It Drop Your Privileges As Soon As Possible Be Careful When Reading Data Be Careful When Writing Data Avoid Race Conditions .Enjoy References for More Information 2. Filesystems Perl to the Rescue Filesystem Differences Unix Windows-Based Operating Systems Mac OS X Filesystem Differences Summary Dealing with Filesystem Differences from Perl Walking or Traversing the Filesystem by Hand Walking the Filesystem Using the File::Find Module Walking the Filesystem Using the File::Find::Rule Module Manipulating Disk Quotas Editing Quotas with edquota Trickery Editing Quotas Using the Quota Module Editing NTFS Quotas Under Windows Querying Filesystem Usage Module Information for This Chapter References for More Information 3. User Accounts Unix User Identities The Classic Unix Password File Changes to the Password File in BSD 4.4 Systems Shadow Passwords Windows-Based Operating System User Identities Windows User Identity Storage and Access Windows User ID Numbers Windows Passwords Don’t Play Nice with Unix Passwords Windows Groups Windows User Rights Building an Account System to Manage Users The Backend Database The Low-Level Component Library The Process Scripts Account System Wrap-Up Module Information for This Chapter References for More Information Unix Password Files Windows User Administration 4. User Activity Process Management Windows-Based Operating System Process Control Unix Process Control File and Network Operations Tracking File Operations on Windows Tracking Network Operations on Windows Tracking File and Network Operations in Unix Module Information for This Chapter Installing Win32::Setupsup References for More Information 5. TCP/IP Name and Configuration Services Host Files Generating Host Files Error-Checking the Host File Generation Process Improving the Host File Output Incorporating a Source Code Control System NIS, NIS+, and WINS NIS+ Windows Internet Name Server (WINS) Domain Name Service (DNS) Generating DNS (BIND) Configuration Files DNS Checking: An Iterative Approach DHCP Active Probing for Rogue DHCP Servers Monitoring Legitimate DHCP Servers Module Information for This Chapter References for More Information 6. Working with Configuration Files Configuration File Formats Binary Naked Delimited Data Key/Value Pairs Markup Languages All-in-One Modules Advanced Configuration Storage Mechanisms Module Information for This Chapter References for More Information XML and YAML 7. SQL Database Administration Interacting with a SQL Server from Perl Using the DBI Framework Using ODBC from Within DBI Server Documentation MySQL Server via DBI Oracle Server via DBI Microsoft SQL Server via ODBC Database Logins Monitoring Space Usage on a Database Server Module Information for This Chapter References for More Information DBI Microsoft SQL Server ODBC Oracle 8. Email Sending Mail Getting sendmail (or a Similar Mail Transport Agent) Using the OS-Specific IPC Framework to Drive a Mail Client Speaking the Mail Protocols Directly Common Mistakes in Sending Email Overzealous Message Sending Subject Line Waste Insufficient Information in the Message Body Fetching Mail Talking POP3 to Fetch Mail Talking IMAP4rev1 to Fetch Mail Processing Mail Dissecting a Single Message Dissecting a Whole Mailbox Dealing with Spam Support Mail Augmentation Module Information for This Chapter References for More Information 9. Directory Services What’s a Directory? Finger: A Simple Directory Service The WHOIS Directory Service LDAP: A Sophisticated Directory Service LDAP Programming with Perl The Initial LDAP Connection Performing LDAP Searches Entry Representation in Perl Adding Entries with LDIF Adding Entries with Standard LDAP Operations Deleting Entries Modifying Entry Names Modifying Entry Attributes Deeper LDAP Topics Putting It All Together Active Directory Service Interfaces ADSI Basics Using ADSI from Perl Dealing with Container/Collection Objects Identifying a Container Object So How Do You Know Anything About an Object? Searching Performing Common Tasks Using the WinNT and LDAP Namespaces Working with Users via ADSI Working with Groups via ADSI Working with File Shares via ADSI Working with Print Queues and Print Jobs via ADSI Working with Windows-Based Operating System Services via ADSI Module Information for This Chapter References for More Information LDAP ADSI 10. Log Files Reading Text Logs Reading Binary Log Files Using unpack() Calling an OS (or Someone Else’s) Binary Using the OS’s Logging API Structure of Log File Data Dealing with Log File Information Space Management of Logging Information Log Parsing and Analysis Writing Your Own Log Files Logging Shortcuts and Formatting Help Basic/Intermediate Logging Frameworks Advanced Logging Framework Module Information for This Chapter References for More Information 11. Security Noticing Unexpected or Unauthorized Changes Local Filesystem Changes Changes in Data Served Over the Network Noticing Suspicious Activities Local Signs of Peril Finding Problematic Patterns Danger on the Wire, or “Perl Saves the Day” Preventing Suspicious Activities Suggest Better Passwords Reject Bad Passwords Module Information for This Chapter References for More Information 12. SNMP Using SNMP from Perl Sending and Receiving SNMP Traps, Notifications, and Informs Alternative SNMP Programming Interfaces Module Information for This Chapter References for More Information 13. Network Mapping and Monitoring Network Mapping Discovering Hosts Discovering Network Services Physical Location Presenting the Information Textual Presentation Tools Graphical Presentation Tools Monitoring Frameworks Extending Existing Monitoring Packages What’s Left? Module Information for This Chapter References for More Information 14. Experiential Learning Playing with Timelines Task One: Parsing crontab Files Task Two: Displaying the Timeline Task Three: Writing Out the Correct XML File Putting It All Together Summary: What Can We Learn from This? Playing with Geocoding Geocoding from Postal Addresses Geocoding from IP Addresses Summary: What Can We Learn from This? Playing with an MP3 Collection Summary: What Can We Learn from This? One Final Exploration Part One: Retrieving the Wiki Page with WWW::Mechanize Part Two: Extracting the Data Part Three: Geocoding and Mapping the Data Summary: What Can We Learn from This? Remember to Play Module Information for This Chapter Source Material for This Chapter A. The Eight-Minute XML Tutorial B. The 10-Minute XPath Tutorial C. The 10-Minute LDAP Tutorial D. The 15-Minute SQL Tutorial E. The Five-Minute RCS Tutorial F. The Two-Minute VBScript-to-Perl Tutorial G. The 20-Minute SNMP Tutorial Index