<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
<style type="text/css">
/* <![CDATA[ */ @import "/branding/css/tigris.css"; /* ]]> */
</style>
  <script src="/branding/scripts/sc.js" type="text/javascript"></script>
  <link rel="stylesheet" type="text/css" href="/branding/css/print.css" media="print" />

  <title>Tunneling with SSH</title>
 </head>

 <body class="docs" onload="self.focus()">
  <div class="docs" id="ddsshguide">
   <h2>Tunneling with SSH</h2>

   <div id="toc">
    <ul>
     <li><strong><a href="/nonav/servlets/HelpTOC">Help index</a></strong></li>
    </ul>

    <ul>
     <li>
      About this guide 

      <ul>
       <li><a href="/nonav/docs/ddSSHGuide.html#aboutssh">About SSH</a></li>

       <li><a href="/nonav/docs/ddSSHGuide.html#furtherdocumentation">Further documentation</a></li>
      </ul>
     </li>

     <li><a href="/nonav/docs/ddSSHGuideConcepts.html">Concepts</a></li>

     <li><a href="/nonav/docs/ddSSHGuideTerminals.html">Choosing the desktop terminal</a></li>

     <li>
      <a href="/nonav/docs/ddSSHGuideTerminals.html">Using the Desktop Terminal</a> 

      <ul>
       <li><a href="/nonav/docs/ddSSHGuideTerminals.html#macs">Macintosh</a></li>

       <li><a href="/nonav/docs/ddSSHGuideTerminals.html#windows">Windows</a></li>

       <li><a href="/nonav/docs/ddSSHGuideTerminals.html#othersshclients">Other SSH clients</a></li>
      </ul>
     </li>

     <li><a href="/nonav/docs/ddSSHGuideCygwin.html">Tunneling using Cygwin: The Desktop Unix Emulator</a></li>

     <li><a href="/nonav/docs/ddSSHGuideterminating.html">Terminating the tunnel</a></li>
    </ul>
   </div>

   <h3><a id="thisguide" name="thisguide">About this Guide</a></h3>

   <h4>What this guide discusses</h4>

   <p>The purpose of this discussion is to provide a guide for users to tunnel to the desired server using SSH (Secure Shell). We have broken the guide into several distinct elements. If you wish, you can jump to those sections that most pertain to your questions without referring to the previous sections. If you have questions that are beyond the scope of this Help, we have listed below some resources that might help you out.</p>

   <h4>What this guide does not discuss</h4>

   <p>This guide does not explain how to use CVS, only how to set up the tunnel so that you can use CVS. However,a brief description of the command to begin using CVS, once the tunnel has been established, is appended at the end of this document.</p>

   <h3><a id="aboutssh" name="aboutssh">About SSH</a></h3>

   <p>SSH is a flexible and more secure replacement for telnet and rlogin. It is widely used in development projects to provide access control and data-transport security. SSH can be used to create an unobtrusive, transparent "port tunnel" to the CVS (concurrent versions system) server. Data sent through the tunnel is encrypted, but the process is invisible to you or to the client software you are using to access the CVS repository. Because it is easy to use and very secure, we recommend SSH for developers accessing the CVS repository.</p>

   <p>Accessing the CVS repository without SSH runs the very real risk of having a third-party thief snoop your CVS password. And, with your CVS password, the thief can wreak serious mischief. For instance, he or she might quite plausibly compromise a project's CVS repository by inserting a virus in the source code.</p>

   <h3><a id="furtherdocumentation" name="furtherdocumentation">Further Documentation</a></h3>

   <ul>
    <li><a href="http://openbsd.appli.se/openssh/windows.html">OpenBSD.org</a> has a list of "free" clients for interoperating with OpenSSH from both Windows and Macintosh boxes: http://openbsd.appli.se/openssh/windows.html</li>

    <li><a href="http://www.dreamwvr.com/ssh/ssh-faq.html">The Secure Shell</a> (SSH) Frequently Asked Questions: http://www.dreamwvr.com/SSH-faq/</li>

    <li><a href="http://www.ssh.org/">The Secure Shell Community Site:</a> http://www.ssh.org/</li>

    <li><a href="http://www.openssh.com/">OpenSSH:</a> http://www.openssh.com/</li>

    <li><a href="http://sources.redhat.com/ml/cygwin/">The Cygwin Project Mailing List Archives</a>: http://sources.redhat.com/ml/cygwin/</li>

    <li><a href="http://www.ssh.org/">The Secure Shell Community Site</a>: http://www.ssh.org/</li>

    <li><a href="http://www.linuxhelp.net/guides/sirplaya/ssh.phtml">Secure Shell (SSH/SSH) Setup (Linux):</a> http://www.linuxhelp.net/guides/sirplaya/ssh.phtml</li>

    <li><a href="http://www.SecureMac.com/">Macintosh Security Issues</a>: http://www.SecureMac.com/</li>

    <li><a href="http://www.macssh.com/">MacSSH</a> (open-source SSH1 and 2 for the Mac!): http://www.macssh.com/</li>

    <li><a href="http://www.wincvs.org/ssh.html">SSH with WinCvs:</a> http://www.wincvs.org/ssh.html</li>
   </ul>

   <div class="courtesylinks">
    <p><a href="#toc">Top</a> | <a href="/nonav/servlets/HelpTOC">Help index</a></p>
   </div>
  </div>
 </body>
</html>


