首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > windows >

Windows 上安装 SSH 服务

2012-07-29 
Windows 下安装 SSH 服务http://codingdao.com/wp/post/win-install-ssh/??通过Cygwin的安装程序安装完Ope

Windows 下安装 SSH 服务

http://codingdao.com/wp/post/win-install-ssh/

?

?

      1. 通过Cygwin的安装程序安装完OpenSSH后,将系统环境变量CYGWIN置为ntsec(默认是tty),建议Cygwin使用Windows的安全规则。

      2. 将sshd所在目录加入Cygwin Shell环境的PATH变量中:在登录Shell的全局初始化脚本/etc/profile里的PATH中加入路径即可,我这里是/usr/sbin,因为Cygwin默认安装后只向PATH中加入bin类型的路径,而不加入sbin类型的路径。

      3. Cygwin Shell下运行ssh-host-config,配置时有提示问题,在提示问题:"CYGWIN="时,回答ntsec

      4. ssh-host-config运行可能会失败,原因是:/、/usr/bin、/usr/lib等Unix目录必须以system方式挂载(默认是以user方式挂载),执行类似下列命令即可以system方式挂载这些目录:

        以system方式挂载目录后,会在注册表HKLM\SOFTWARE\Cygnus Solutions\Cygwin\mounts v2键下保存这些Unix目录和Windows路径的对应关系。

        更新

        我后来在使用新版本的Cygwin环境(Cygwin网络安装程序 2.674)和sshd(OpenSSH 5.3p1-1)时,没有出现这个问题。另外安装完这个版本的Cygwin之后,注册表中保存Cygwin设置的子键名也变成了:HKLM\SOFTWARE\Cygwin

      5. ssh-host-config运行成功后在/etc下生成sshd需要的密钥文件,可以将公钥传递给SSH客户端的使用者,以便做SSH服务器端的身份验证功能。

        另外一种常用的SSH服务器端身份验证的方法是:大多数SSH客户端,比如:PUTTY,在第一次连接未知的SSH服务器端时,会提示服务器端公钥的散列码,称为SSH服务器端的fingerprint。用户通过对比服务器端计算的fingerprint和由SSH客户端提示的fingerprint,来人工判断是否连接的是期望的SSH服务端。

        计算服务器端的fingerprint参考:How to get ssh server fingerprint information。计算fingerprint使用ssh-keygen -lf命令,如下:

        • 空密码用户的登录

          如果系统上的用户是空密码,无论是Windows还是Linux版的OpenSSH,默认配置下是不允许使用SSH客户端登录的,这是出于安全性的考虑。如果希望空密码的用户也能登录,需要更改sshd的配置文件(通常是sshd_config),设置选项:PermitEmptyPasswords yes

        • 不使用密码进行登录

          margin-top: 0px; mar

热点排行