使用 Cygwin 建立 SSH 通道:桌面 Unix 仿真程序
- 使用 Cygwin 建立通道:桌面 Unix 仿真程序
- 终止通道
安装
在可以使用 Cygwin 建立通道之前,必须先正确安装它。
安装 Cygwin 最重要的注意事项是创建正确的 Unix 文件夹。Cygwin 的网站提供了完整详细的说明;下面是一个缩略版。
- 下载并安装 Cygwin。Cygnus 允许选择从 Web 安装,但从本地磁盘安装速度会更快(而且最终效率更高)。请务必下载文件并将其保存在容易找到的位置。
- 点击 Cygwin 的“setup.exe”图标并按照屏幕提示操作,接受默认选项。系统会询问您具体的文本格式,以及您希望 Cygwin 仅供您自己使用还是与其他用户共享。为便于使用,请将文本格式选择为 Unix,共享选项选择为“所有”。Cygwin 随后将安装,并在开始菜单和桌面上创建图标。如果没有创建图标,请再次运行安装程序。安装程序不会重新安装 Cygwin,而是把您带到安装过程的最后,在那里您可以选中指示安装图标的框。
- 创建 Unix 文件夹。可以按照 Cygwin 配置说明的建议,从 Cygwin 中创建标准目录(有关配置说明,请参见 http://www.cygwin.com),或者可以从 Windows 中设置它们。使用 Windows 方法有某些好处,尤其在您不是很熟悉 Unix 命令和协议时。由于 Cygwin 可以读取 Win32 (Windows) 和 Unix (POSIX) 文件路径,因此两种这方法都可以接受。可以在 http://www.itd.umich.edu/itcsdocs/s4148/s4148.pdf 中找到创建 Unix 目录的非常清楚的说明。虽然那些说明是针对程序的早期版本的,但它们仍适合:仍必须创建典型的 Unix 目录。
- 修改 cygwin.bat 文件。.bat 文件指定 bash 必须执行的命令及其顺序。其中“C”驱动器上的“Unix”目录包含传统的 Unix 目录,只要您不使用任何使 Unix 混淆的字符(例如,连字符、空格等),就可以将它命名为任何名称。使用记事本等文本编辑器配置 cygwin.bat 文件。不要使用 Microsoft Word 或任何带格式的程序。C:\Cygwin 目录和 C:\unix 目录包含重要的主目录。将 .bat 文件配置为:
@ECHO OFF
SET MAKE_MODE=Unix
SET CYGWIN=notty
SET HOME=C:\unix\HOME\[your home directory name]
SET TERM=VT100
CHDIR C:\Unix\HOME\[your home directory name]
SET PATH=C:\Unix\BIN;C:\Unix\USR\LOCAL\BIN;C:\CYGWIN\BIN;%PATH%
BASH
- 为使 Cygwin 更有效运行,可能需要在桌面上配置快捷方式图标,以便它在正确的目录中启动程序。如果您已经在 .bat 文件中指定了 HOME 目录,则没必要在桌面上配置快捷方式图标。
Cygwin 提供了一些更深入的限定,如果需要,您可以进一步限定配置。如果您对 Unix 命令和文件结构熟悉,您会发现这很容易;如果您不熟悉,Cygwin 也非常宽容,您很快就可以掌握。
建立通道
根据站点的配置方式,您可以使用本地生成的密钥或站点管理员设置的公共密钥,通过 SSH 通道访问 CVS。如果您对站点使用的方法不确定,请咨询站点管理员。
在本地生成密钥:
- 从 Cygwin 或其它 UNIX 类型的命令提示符键入:“ssh-keygen.exe -d”并按 Enter。您将看到:
-
- 正在生成 DSA 参数和密钥。
- 输入保存密钥的文件 (/home/Administrator/.ssh/id_dsa):[如果使用默认位置,请按 Enter 键]
- 输入密码(如果没有密码,则为空):[请保留为空并按 Enter]
- 再次输入相同的密码:[请保留为空并按 Enter]
- 您的标识已经保存在 /home/Administrator/.ssh/id_dsa 中。
- 公共密钥已经保存在 /home/Administrator/.ssh/id_dsa.pub 中。
- 从计算机复制“id_dsa.pub”。将新副本命名为“[用户名]_id_dsa.pub”(例如“jmorse_id_dsa.pub”),并将它附加到事件以获得技术支持。要想获得通过 CVS 通道的访问权限,需要在 CVS 服务器上安装密钥。关于加载 *_id_dsa.pub 密钥的位置,请咨询支持代表。
每次希望访问 CVS 存储库时,都需要运行 Cygwin 或其它 UNIX 外壳程序并使用以下命令登录:
ssh -x -2 -L 2401:localhost:2401 tunnel@[project.domain]
其中 [project.domain] 相当于 CVS 服务器的名称。
您将收到一条信息,指出“未找到主机密钥,是否确实要继续”。键入“yes”。需要键入整个单词。您将收到另一行内容,且光标移到窗口的左侧,并闪烁。可以最小化窗口,但不要关闭它。关闭窗口将使通道中断。
如果您使用系统管理员生成的公共密钥访问通道,系统会提示您输入密码。请向站点管理员或项目所有者索要密码。
注意:如果您生成了自己的密钥但系统仍提示您输入密码,则您的密钥可能尚未正确添加到服务器。如果确实如此,请与技术支持代表联系。
只要该窗口保持运行,通道就会一直运行,但发生网络错误或其它连接问题时除外。要停止通道,请按 ctrl-break。