Cygwin是一个在windows平台上运行的类UNIX模拟环境。html
与经过Window下虚拟机软件来安装一个Linux系统不一样,Cygwin更加体现着两种操做系统直接互访的功能:Cygwin目录下的全部文件直接就能够在windows下可见操做,而Cygwin运行起来后也能够以Linux方式直接访问windows下的其他任何文件。vim
Cygwin 安装目录做为虚拟 UNIX 系统的根目录,Cygwin 把安装目录中的子目录映射到 UNIX 目录。Cygwin以单独的卷的形式提供 Windows 驱动器,好比windows下的C盘经过cygwin的虚拟路径即是 /cygwin/c。能够使用这样的虚拟路径启动 Windows 程序。以下图所示,最左边的“文件系统”一列即是windows系统的磁盘,最右侧的“挂载点”即是虚拟 UNIX 系统的的挂载点。windows
1. 有网络安装版本和本地安装版本,从官网上下载的是网络安装版本浏览器
下载地址 https://cygwin.com/install.html网络
2. 使用管理员帐号,运行安装程序ssh
点击“下一步”ui
选择安装方式:有3种选择,第1是选择在线安装方式;第2是下载安装包但不安装;第3种是本地安装。以下图所示,这儿选择在线安装操作系统
选择cygwin的安装路径,这里使用默认值c:/cygwin64,对于 Install For 选项则选择 “All Users”,以下图所示。.net
选择一个存储 Cygwin 所需软件包的目录,不要选择前一步中设置的 Cygwin 安装目录,点击“Next”代理
选择网络链接方式(由于在本台电脑使用了代理上网,且IE浏览器中已设置了代理上网,故选择第二项),点击 “下一步”。
在下图的文本显示框中,随便选择一个站点(setup安装包会一一尝试全部的站点直到可以链接成功),点击 “下一步”。
在下图显示的画面中,选择Linux下大部分软件安装包,能够根据须要选择性安装。
SSH默认是不装的,想使用ssh命令须要将“openssh”和“openssl”软件选上,另外为了使用方便,还推荐安装“Editor Category”下的“vim”安装包。
注意:默认的都是skip,即都不安装。没有装上某些软件包不要紧,能够再次打开setup.exe,而后把要用的软件选上。
软件包选项有几种状况,
(1)对未安装的软件包有两种选择
1)Skip:跳过该软件的安装
2)软件号:肯定安装该软件
(2)对已安装的软件包有三种选择
1)Keep:已安装,保持现状
2)Reinstall:从新安装
3)Uninstall:卸载
其中,软件包的浏览模式能够经过点击 “View”按钮切换,共有 “Category”,“Full”,“Pending”,“Up To Date”和“Not installed”五种模式,默认是“Category”模式,此处选择“Not installed”浏览模式。
如左下图,在“Search”输入框中 openssh,找到openssh软件包后,点击“Skip”后变成该软件包的版本号,即代表要安装该软件。
以后点击安装确认便可。
新建系统变量:CYGWIN=ntsec tty
在系统变量中Path中追加 cygwin的路径
;C:\cygwin64\bin;
点击桌面上面的Cygwin的图标,打开cygwin(注意必定要以管理员身份运行,不然可能不能建立sshd服务)。
也能够执行 Cygwin 目录中的 Cygwin 脚本(好比 C:\cygwin\Cygwin.bat)来打开Cygwin。
输入命令
$ cd /bin
能够发现该目录下出现了SSH的相关配置文件ssh-host-config等(若是没有,那么代表没有安装相关的openssh软件包,能够再次打开setup.exe,而后把openssh软件选上便可)。
输入如下命令,配置ssh主机。
$ ssh-host-config
当屏幕显示关于“privilege seperation”,输入no后回车;
当屏幕显示关于“create local user sshd”,输入yes后回车;
当屏幕显示关于“install sshd as a service”,输入yes后回车;
当屏幕提示“Host configuration finished. Have fun!”时,就说明已经正常的完成了ssh主机的配置。;
输入命令 ,生成密钥,设置ssh无密码登陆。
$ ssh-keygen
当询问要filenames 和 pass phrases 的时候都点回车,接受默认的值。
上述命令介绍后输入 cd ~/.ssh 转到.ssh目录,输入 ls –l 应该包含两个文件:id_rsa.pub 和 id_rsa
同时在.ssh目录中中输入命令
$ cat id_rsa.pub >> authorized_keys
在Cygwin中启动sshd服务的方法,输入命令:
$ net start sshd
或者,也能够输入命令:
$ cygrunsrv --start sshd
经过Putty等SSH登录软件便可。
登录的用户名为Cygwin软件中 /home路径下的帐号。
【参考资料&延伸阅读】
[1] cygwin官网 https://www.cygwin.com/
[2] cygwin官网FAQ https://www.cygwin.com/faq.html
[3] http://blog.csdn.net/souichiro/article/details/6284172
[4] http://blog.csdn.net/wh_19910525/article/details/7433164