o'reilly - the secure shell the definitive guide

614 227 0
o'reilly - the secure shell the definitive guide

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

• Reviews • Reader Reviews • Errata SSH, The Secure Shell: The Definitive Guide By Daniel J. Barrett, Richard Silverman Publisher: O'Reilly Pub Date: January 2001 ISBN: 0-596-00011-1 Pages: 558 Copyright Preface Protect Your Network with SSH Intended Audience Reading This Book Our Approach Which Chapters Are for You? Supported Platforms Disclaimers Conventions Used in This Book Comments and Questions Acknowledgments Chapter 1. Introduction to SSH Section 1.1. What Is SSH? Section 1.2. What SSH Is Not Section 1.3. The SSH Protocol Section 1.4. Overview of SSH Features Section 1.5. History of SSH Section 1.6. Related Technologies Section 1.7. Summary Chapter 2. Basic Client Use Section 2.1. A Running Example Section 2.2. Remote Terminal Sessions with ssh Section 2.3. Adding Complexity to the Example Section 2.4. Authentication by Cryptographic Key Section 2.5. The SSH Agent Section 2.6. Connecting Without a Password or Passphrase Section 2.7. Miscellaneous Clients Section 2.8. Summary Chapter 3. Inside SSH Section 3.1. Overview of Features Section 3.2. A Cryptography Primer Section 3.3. The Architecture of an SSH System Section 3.4. Inside SSH-1 Section 3.5. Inside SSH-2 Section 3.6. As-User Access (userfile) Section 3.7. Randomness Section 3.8. SSH and File Transfers (scp and sftp) Section 3.9. Algorithms Used by SSH Section 3.10. Threats SSH Can Counter Section 3.11. Threats SSH Doesn't Prevent Section 3.12. Summary Chapter 4. Installation and Compile-Time Configuration Section 4.1. SSH1 and SSH2 Section 4.2. F-Secure SSH Server Section 4.3. OpenSSH Section 4.4. Software Inventory Section 4.5. Replacing R-Commands with SSH Section 4.6. Summary Chapter 5. Serverwide Configuration Section 5.1. The Name of the Server Section 5.2. Running the Server Section 5.3. Server Configuration: An Overview Section 5.4. Getting Ready: Initial Setup Section 5.5. Letting People in: Authentication and Access Control Section 5.6. User Logins and Accounts Section 5.7. Subsystems Section 5.8. History, Logging, and Debugging Section 5.9. Compatibility Between SSH-1 and SSH-2 Servers Section 5.10. Summary Chapter 6. Key Management and Agents Section 6.1. What Is an Identity? Section 6.2. Creating an Identity Section 6.3. SSH Agents Section 6.4. Multiple Identities Section 6.5. Summary Chapter 7. Advanced Client Use Section 7.1. How to Configure Clients Section 7.2. Precedence Section 7.3. Introduction to Verbose Mode Section 7.4. Client Configuration in Depth Section 7.5. Secure Copy with scp Section 7.6. Summary Chapter 8. Per-Account Server Configuration Section 8.1. Limits of This Technique Section 8.2. Public Key-Based Configuration Section 8.3. Trusted-Host Access Control Section 8.4. The User rc File Section 8.5. Summary Chapter 9. Port Forwarding and X Forwarding Section 9.1. What Is Forwarding? Section 9.2. Port Forwarding Section 9.3. X Forwarding Section 9.4. Forwarding Security: TCP-wrappers and libwrap Section 9.5. Summary Chapter 10. A Recommended Setup Section 10.1. The Basics Section 10.2. Compile-Time Configuration Section 10.3. Serverwide Configuration Section 10.4. Per-Account Configuration Section 10.5. Key Management Section 10.6. Client Configuration Section 10.7. Remote Home Directories (NFS, AFS) Section 10.8. Summary Chapter 11. Case Studies Section 11.1. Unattended SSH: Batch or cron Jobs Section 11.2. FTP Forwarding Section 11.3. Pine, IMAP, and SSH Section 11.4. Kerberos and SSH Section 11.5. Connecting Through a GatewayHost Chapter 12. Troubleshooting and FAQ Section 12.1. Debug Messages: Your First Line of Defense Section 12.2. Problems and Solutions Section 12.3. Other SSH Resources Section 12.4. Reporting Bugs Chapter 13. Overview of Other Implementations Section 13.1. Common Features Section 13.2. Covered Products Section 13.3. Table of Products Section 13.4. Other SSH-Related Products Chapter 14. SSH1 Port by Sergey Okhapkin (Windows) Section 14.1. Obtaining and Installing Clients Section 14.2. Client Use Section 14.3. Obtaining and Installing the Server Section 14.4. Troubleshooting Section 14.5. Summary Chapter 15. SecureCRT (Windows) Section 15.1. Obtaining and Installing Section 15.2. Basic Client Use Section 15.3. Key Management Section 15.4. Advanced Client Use Section 15.5. Forwarding Section 15.6. Troubleshooting Section 15.7. Summary Chapter 16. F-Secure SSH Client (Windows, Macintosh) Section 16.1. Obtaining and Installing Section 16.2. Basic Client Use Section 16.3. Key Management Section 16.4. Advanced Client Use Section 16.5. Forwarding Section 16.6. Troubleshooting Section 16.7. Summary Chapter 17. NiftyTelnet SSH (Macintosh) Section 17.1. Obtaining and Installing Section 17.2. Basic Client Use Section 17.3. Troubleshooting Section 17.4. Summary Appendix A. SSH2 Manpage for sshregex SSHREGEX(1) SSH2 Appendix B. SSH Quick Reference Section 2.1. Legend Section 2.2. sshd Options Section 2.3. sshd Keywords Section 2.4. ssh and scp Keywords Section 2.5. ssh Options Section 2.6. scp Options Section 2.7. ssh-keygen Options Section 2.8. ssh-agent Options Section 2.9. ssh-add Options Section 2.10. Identity and Authorization Files Section 2.11. Environment Variables Colophon Index Book: SSH, The Secure Shell: The Definitive Guide Copyright © 2001 O'Reilly & Associates, Inc. All rights reserved. Printed in the United States of America. Published by O'Reilly & Associates, Inc., 101 Morris Street, Sebastopol, CA 95472. Nutshell Handbook, the Nutshell Handbook logo, and the O'Reilly logo are registered trademarks of O'Reilly & Associates, Inc. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this book, and O'Reilly & Associates, Inc. was aware of a trademark claim, the designations have been printed in caps or initial caps. The association between the image of a land snail and the topic of SSH is a trademark of O'Reilly & Associates, Inc. While every precaution has been taken in the preparation of this book, the publisher assumes no responsibility for errors or omissions, or for damages resulting from the use of the information contained herein. Book: SSH, The Secure Shell: The Definitive Guide Preface Privacy is a basic human right, but on today's computer networks, privacy isn't guaranteed. Much of the data that travels on the Internet or local networks is transmitted as plain text, and may be captured and viewed by anybody with a little technical know-how. The email you send, the files you transmit between computers, even the passwords you type may be readable by others. Imagine the damage that can be done if an untrusted third party-a competitor, the CIA, your in-laws- intercepted your most sensitive communications in transit. Network security is big business as companies scramble to protect their information assets behind firewalls, establish virtual private networks (VPNs), and encrypt files and transmissions. But hidden away from all the bustle, there is a small, unassuming, yet robust solution many big companies have missed. It's reliable, reasonably easy to use, cheap, and available for most of today's operating systems. It's SSH, the Secure Shell. Book: SSH, The Secure Shell: The Definitive Guide Section: Preface Protect Your Network with SSH SSH is a low-cost, software-based solution for keeping prying eyes away from the data on a network. It doesn't solve every privacy and security problem, but it eliminates several of them effectively. Its major features are: ● A secure, client/server protocol for encrypting and transmitting data over a network ● Authentication (recognition) of users by password, host, or public key, plus optional integration with other popular authentication systems, including Kerberos, SecurID, PGP, TIS Gauntlet, and PAM ● The ability to add security to insecure network applications such as Telnet, FTP, and many other TCP/IP-based programs and protocols ● Almost complete transparency to the end user ● Implementations for most operating systems Book: SSH, The Secure Shell: The Definitive Guide Section: Preface Intended Audience We've written this book for system administrators and technically minded users. Some chapters are suitable for a wide audience, while others are thoroughly technical and intended for computer and networking professionals. End-User Audience Do you have two or more computer accounts on different machines? SSH lets you connect one to another with a high degree of security. You can copy files between accounts, remotely log into one account from the other, or execute remote commands, all with the confidence that nobody can intercept your username, password, or data in transit. Do you connect from a personal computer to an Internet service provider (ISP)? In particular, do you connect to a Unix shell account at your ISP? If so, SSH can make this connection significantly more secure. An increasing number of ISPs are running SSH servers for their users. In case your ISP doesn't, we'll show you how to run a server yourself. Do you develop software? Are you creating distributed applications that must communicate over a network securely? Then don't reinvent the wheel: use SSH to encrypt the connections. It's a solid technology that may reduce your development time. Even if you have only a single computer account, as long as it's connected to a network, SSH can still be useful. For example, if you've ever wanted to let other people use your account, such as family members or employees, but didn't want to give them unlimited use, SSH can provide a carefully controlled, limited access channel into your account. Prerequisites We assume you are familiar with computers and networking as found in any modern business office or home system with an Internet connection. Ideally, you are familiar with the Telnet and FTP applications. If you are a Unix user, you should be familiar with the programs rsh, rlogin, and rcp, and with the basics of writing shell scripts. System-Administrator Audience If you're a Unix system administrator, you probably know that the Berkeley r-commands (rsh, rcp, rlogin, rexec, etc.) are inherently insecure. SSH provides secure, drop-in replacements, eliminates .rhosts and hosts.equiv files, and can authenticate users by cryptographic key. SSH also can increase the security of other TCP/IP-based applications on your system by transparently "tunneling" them through SSH encrypted connections. You will love SSH. Prerequisites In addition to the end-user prerequisites in the previous section, you should be familiar with Unix accounts and groups, networking concepts such as TCP/IP and packets, and basic encryption techniques. [...]... it aloud: S-S-H You might find the name "Secure Shell" a little puzzling, because it is not, in fact, a shell at all The name was coined from the existing rsh utility, a ubiquitous Unix program that also provides remote logins but is very insecure Book: SSH, The Secure Shell: The Definitive Guide Section: Chapter 1 Introduction to SSH 1.2 What SSH Is Not Although SSH stands for Secure Shell, it is... them, their principles are the same This book is current for the following Unix SSH versions: SSH1 1.2.30 F -Secure SSH1 1.3.7 OpenSSH 2.2.0 SSH Secure Shell (a.k.a SSH2) 2.3.0 F -Secure SSH2 2.0.13 The F -Secure products for Unix differ little from SSH1 and SSH2, so we won't discuss them separately except for unique features See Appendix B for a summary of the differences Version information for non-Unix... of the protocol, SSH 2.0 or SSH-2, that incorporates new algorithms and is incompatible with SSH-1 In response, the IETF formed a working group called SECSH (Secure Shell) to standardize the protocol and guide its development in the public interest The SECSH working group submitted the first Internet Draft for the SSH-2.0 protocol in February 1997 In 1998, SCS released the software product "SSH Secure. .. rsh Suite (R-Commands) The Unix programs rsh, rlogin, and rcp-collectively known as the r-commands-are the direct ancestors of the SSH1 clients ssh, slogin, and scp The user interfaces and visible functionality are nearly identical to their SSH1 counterparts, except that SSH1 clients are secure The r-commands, in contrast, don't encrypt their connections and have a weak, easily subverted authentication... implements both the SSH-1 and SSH-2 protocols OpenSSH/1 OpenSSH, referring specifically to its behavior when using the SSH-1 protocol OpenSSH/2 OpenSSH, referring specifically to its behavior when using the SSH-2 protocol [2] Although we say "the SSH protocol," there are actually two incompatible versions of the protocols in common use: SSH-1 (a.k.a SSH-1.5) and SSH-2 We will distinguish these protocols... Book: SSH, The Secure Shell: The Definitive Guide Section: Chapter 1 Introduction to SSH 1.4 Overview of SSH Features So, what can SSH do? Let's run through some examples that demonstrate the major features of SSH, such as secure remote logins, secure file copying, and secure invocation of remote commands We use SSH1 in the examples, but all are possible with OpenSSH, SSH2, and F -Secure SSH 1.4.1 Secure. .. Most shells recognize ~ as a user's home directory, with the notable exception of Bourne shell $HOME is recognized by all shells SSH completely avoids these problems Rather than running the insecure telnet program, you run the SSH client program ssh To log into an account with the username smith on the remote computer host.example.com, use this command: $ ssh -l smith host.example.com The client authenticates... a true shell in the sense of the Unix Bourne shell and C shell It is not a command interpreter, nor does it provide wildcard expansion, command history, and so forth Rather, SSH creates a channel for running a shell on a remote computer, in the manner of the Unix rsh command, but with end-to-end encryption between the local and remote computer SSH is also not a complete security solution-but then, nothing... break-in attempts or denial-of-service attacks, and it won't eliminate other hazards such as viruses, Trojan horses, and coffee spills It does, however, provide robust and user-friendly encryption and authentication Book: SSH, The Secure Shell: The Definitive Guide Section: Chapter 1 Introduction to SSH 1.3 The SSH Protocol SSH is a protocol, not a product It is a specification of how to conduct secure. .. can use a wide range of other solutions, alone or combined, with varying complexity and cost Book: SSH, The Secure Shell: The Definitive Guide Section: Chapter 1 Introduction to SSH 1.1 What Is SSH? SSH, the Secure Shell, is a popular, powerful, software-based approach to network security [1] Whenever data is sent by a computer to the network, SSH automatically encrypts it When the data reaches its intended . systems. It's SSH, the Secure Shell. Book: SSH, The Secure Shell: The Definitive Guide Section: Preface Protect Your Network with SSH SSH is a low-cost, software-based solution for keeping. cross-references throughout the text. If further details are found in Section 7.1.3.2, we use the notation [Section 7.1.3.2] to indicate it. Book: SSH, The Secure Shell: The Definitive Guide Section:. cover them, their principles are the same. This book is current for the following Unix SSH versions: SSH1 1.2.30 F -Secure SSH1 1.3.7 OpenSSH 2.2.0 SSH Secure Shell (a.k.a. SSH2) 2.3.0 F-Secure

Ngày đăng: 25/03/2014, 10:52

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan