无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 50711|回复: 54
打印 上一主题 下一主题

[原创首发]Cygwin + OpenSSH FOR Windows的安装配置

[复制链接]
跳转到指定楼层
1#
发表于 2008-1-12 13:00:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Cygwin + OpenSSH FOR Windows的安装配置
CygWin:一个将Linux自由软件带入Windows中应用的绝佳工具
原创:井冈山大学网络中心 Lvyanan 写于2007年7月1日
Cygwin是一款世界著名软件,它可将Linux下的自由软件移植到Windows系统上来应用,了解和掌握这个软件,将使您又多了许多有益的选择,并带您到一个更广阔的天空下翱翔,这对于您的学习和工作将起到确定无疑的推动作用。下面我用自己总结的一个例子,带大家进入这个世界。
    在windows操作系统中,使用Cygwin + OpenSSH开源软件来作为远程连接的安全工具,是一个非常好的方法,得到许多网管人员的青睐。然而要想顺利安装配置好这套软件,对于初学者来说,是有一定难度的。为了使同道们少走弯路,特将本人摸索的经验陈列于此,以供需要者参考。建议在安装配置这套软件之前,最好要初步掌握一些Linux终端操作技能及其技术概念。
以下所述是在Windows XP系统中实践完成,其它Windows系统可参照此文实施。
一、安装Cygwin + OpenSSH
首先打开http://Cygwin.com网页,点击如下链接:
now!

将会下载一个安装Cygwin的setup.exe文件,然后在欲安装Cygwin + OpenSSH软件的磁盘上创建Cygwin目录,在此我们假定为:C:\Cygwin,运行setup.exe后打开图一:  
            

                                图一
图一主要提供关于Cygwin软件安装的一些信息,点击下一步后打开图二:
图二
图二提供了三个选项:
第一选项:从Internet上下载并安装所需软件。
第二选项:从Internet上下载所需软件安装包到本地磁盘。
第三选项:从本地磁盘安装包的目录中安装所需软件。
此处选择从Internet上下载并安装所需软件,点击下一步后打开图三:
图三
图三为指定软件安装的目标路径,其它按图上默认的选项选择。点击下一步后打开图四:
图四
图四为指定软件安装包的本地存放路径。点击下一步后打开图五:
图五
图五是选择连接Internet的方式,照图点选Use IE5 Settings,点击下一步后打开图六:
图六
图六是选择下载Cygwin的网站,尽量选离我国近的网站,以提高安装速度。点下一步打开图七:
图七
图七为软件包的选择界面,All所在行是选择全部软件包的位置,其它各行是软件组的选择位置,点击软件组前部的+号,可以打开软件组来选择所属软件项。点击所选软件项的循环箭头,可以选择对相应项目的操作方式,每点一次,该项目的操作方式就变化一次。
针对All及软件组的操作方式有四种选择:即Default、Install、Reinstall和Uninstall,依次代表:默认状态、安装、重新安装和反安装项。
针对软件项的操作方式有两类五种:
第一类:对未安装的软件项有两种选择,即Skip和该软件的版本号,Skip为跳过该软件的安装,显示软件版本号为确定安装该软件。
第二类:对已安装的软件项有三种选择,即Keep、Reinstall和Uninstall,依次代表:保持现状、重新安装和反安装项。
图八为打开NET软件组的界面
图八
图八表示选择网络相关软件,我们要安装的是OpenSSH,故点击OpenSSH软件项相应的循环箭头,使原来的Skip变为版本号即可,与OpenSSH软件包相关的Cygwin支持软件包会自动配套选中,例如下一行的OpenSSL软件包也就自动选中了。点击下一步打开图九:
图九
图九显示安装工作的进度,完成后自动打开图十:
图十
图十中提示将在桌面建立Cygwin控制台图标和在开始菜单中添加Cygwin控制台图标。点击完成按钮结束安装工作。
注意:安装软件时,必须以Administrator用户身份来安装,否则可能出现许多莫名的问题,大概是由于用户权限不够造成的,估计是该软件出于安全考虑而有意设计的。
二、Openssh基本配置
1.增加环境变量
用鼠标右键单击我的电脑 à属性 à高级 à环境变量,
A.在系统变量框中新建变量名为:CYGWIN,变量值为:ntsec tty 的变量。
B.编辑path变量,在原变量值后加上以分号分隔的C:\Cygwin\bin字符串,注意保留原变量的值!
2OpenSSH服务配置
双击Cygwin图标打开控制台,键入:cd /bin转入bin目录,再键入:ssh-host-config -y,执行后系统提示“CYGWIN=” 时输入ntsec tty即可。至此,SSH服务已被加入到Windows的自动启动服务项中了。
重新启动电脑进入普通用户界面,打开Cygwin控制台后,系统会在Cygwin的home目录下生成一个同名目录:youname (此处假设用户名为:youname),用户可以在command控制台上用:
ssh  youname@127.0.0.1
登录自己的SSH服务器试一试,若能登录则表示安装配置基本成功,可以进行远程登录连接,若远程登录失败,应在SSH服务器防火墙的例外中添加允许SSH端口通过的条目,SSH服务默认使用的是22号端口。
3.启动OpenSSH服务的方法
A.在command控制台上启动:
Net  start  sshd     #启动SSH服务
Net  stop  sshd      #停止SSH服务
B.在Cygwin控制台上启动:
Cygwin  --start  sshd      #启动SSH服务
Cygwin  --stop  sshd       #停止SSH服务
三、Openssh高级配置
提示:A. 修改sshd_config 文件前应先通过Cygwin控制台修改文件属性值,使当前用户具有修改权:
cd /etc                    #转到sshd_config文件所在目录
Chmod 777 sshd_config      #修改文件属性值,使其他用户可以修改该文件
。。。。。                 #然后参照后面介绍的1、2、3条进行操作
Chmod 644 sshd_config      #修改文件属性,使其恢复原来的属性值
B. sshd_config文件被修改后,必须重启SSH服务后改动项才能生效。
1.更改OpenSSH工作端口及协议版本
用写字板打开C:\Cygwin\etc\sshd_config文件,将port 22改为port 10022或其它自己想改的端口号,最好选1025 -- 65535之间其它软件未用的端口号。再将#Protocol 2,1 改为Protocol 2,使当前的SSH服务只支持2.0协议版本。此两项更改的目的是为了增强系统的安全性。
2.禁止超级用户远程登录OpenSSH
用写字板打开 C:\Cygwin\etc\sshd_config 文件,将 #PermitRootLogin yes 修改为PermitRootLogin no即可。若系统需要超级用户登录,则不必修改此项目。
3.仅使用非对称密钥安全登录
A用写字板打开 C:\Cygwin\etc\sshd_config 文件,将#PasswordAuthentication yes 修改为 PasswordAuthentication no 。
B.在Cygwin控制台:
cd /home/youname      #转到当前用户目录
mkdir .ssh            #建立 .ssh隐含目录
C.将制作好的authorized_keys公钥文件复制到c:\Cygwin\home\youname\.ssh目录下
D.在Cygwin控制台:
cd /home/youname/.ssh    #转到 .ssh隐含目录
chmod 600 authorized_keys   #修改文件属性使之生效(注:属性值大于600时该文件无效)
此后用户远程访问ssh服务器时,将不能凭用户密码登录,只能凭借对应的私钥来登录,排除了密码暴力破解的可能,提高了网络访问的安全性。
4.公钥对的生成
由于习惯了用putty作为登录ssh服务器的工具,故在此仅介绍用putty软件生成密钥对的方法。
A可以从http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html处,选择putty.zip下载,该软件为自由软件,可免费使用,当前版本为V 0.60。
B解压后运行puttygen.exe , 打开图十一:
图十一
如图选择SSH-2 RSA和1024密钥长度,点击Generate按钮,打开图十二:
图十二
将鼠标在电脑屏幕上随机移动,密钥生成进度条随鼠标指针移动而前进,直至完成并呈现图十三:
图十三
图上部框中显示的是公钥内容,用户可以在key passphrase框及confirm passphrase框中输入密钥密码,以使密钥丢失后多一道安全防护。当然如果为了方便也可以不设密钥密码。
依次点击save public key和save private key按钮,分别保存生成的公钥和私钥,将保存的公钥文件改为authorized_key文件名,或将图十三上部框中的公钥内容复制到authorized_key文件中,并保存为纯文本文件(本人习惯于后一种方法),然后将该文件复制到用户的 .SSH目录中应用,注意:该文件在使用时必须将其属性值改为小于等于600方可应用,否则该公钥不会生效。而默认以 .ppk扩展名保存的私钥文件,则要妥善保管好,今后访问SSH服务器就要凭此私钥登录了。
四、卸载Cygwin
卸载Cygwin与安装Cygwin的过程差不多,也是先运行setup.exe,与安装时一样操作,直到出现图七所示界面时,将All设置为UnInstall后再点击下一步,系统将自动完成Cygwin软件的卸载,Cygwin的安装目录需要手工删除,注册表内与Cygwin相关的项目也要手动删除,如若删除不尽,可能会影响到以后Cygwin的顺利安装和配置,切记!
五、PUTTY软件的简单应用
运行Putty.exe打开图十四:
图十四
在Host Name框中输入SSH服务器的IP地址,Port框中输入OpenSSH服务的端口号,然后点开Connection à SSH à Auth打开图十五:
图十五
按图中选择相应项,在private key file for authentication框中填入自己私钥的保存路径,再回到图十四,在Saved sessions框中输入一个相关名字,再点击Save按钮将当前会话以相关命名保存起来,以供将来重复使用该会话。使用时选中会话,点击Load按钮装入,再点击Open按钮开始连接SSH服务器,连接界面弹出后,按提示输入用户名、私钥密码,验证通过后即可登录服务器了。
Putty还可以为其它软件联网建立连接隧道,囿于篇幅所限,在此就不深入谈下去了,有兴趣的朋友可以与我联系,我的E-mail:luyanan1953@sina.com  QQ:305309952。

觉得此文对您有用,就请回个帖支持一下!

[ 本帖最后由 lvyanan 于 2009-3-29 13:21 编辑 ]

评分

参与人数 2无忧币 +161 收起 理由
haiou327 + 100 原创内容 继续加威望积分100 南哥,辛 ...
lintel + 61 原创内容

查看全部评分

2#
发表于 2008-1-13 15:14:40 | 只看该作者
喜欢跨越LINUX与WIN系统的朋友 ,应该好好看看这一贴。
回复

使用道具 举报

3#
发表于 2008-3-24 00:29:39 | 只看该作者
听人介绍“鸟哥私房菜”是很好的启蒙教材,今天花了足足6小时从头看起------一头雾水啊,好歹明白了LINUX和UNIX的渊源,X-window是个什么东东------看来一年消化LINUX -NAT有点吹气啦
回复

使用道具 举报

4#
发表于 2008-3-24 12:07:25 | 只看该作者

分享是一种美德

觉得此文对您有用,就请回个帖支持一下!
回复

使用道具 举报

5#
发表于 2008-4-29 10:23:47 | 只看该作者
看不懂,高歌汉化版吧
回复

使用道具 举报

6#
发表于 2008-6-4 22:06:56 | 只看该作者
pub是一种美德,有pub我们才能提高。感谢楼主。
回复

使用道具 举报

7#
发表于 2008-6-14 10:14:10 | 只看该作者
顶一下,下了看了,搞不懂。
回复

使用道具 举报

8#
发表于 2008-6-14 10:56:29 | 只看该作者
原来lvyanan前辈的名字不是ivy啊,L啊
回复

使用道具 举报

9#
 楼主| 发表于 2008-6-14 11:35:35 | 只看该作者
原帖由 kangyi 于 2008-6-14 10:56 AM 发表
原来lvyanan前辈的名字不是ivy啊,L啊

不好意思,让你误解了,本人姓吕。
回复

使用道具 举报

10#
发表于 2008-6-17 13:42:30 | 只看该作者
支持一下,不知道与freesshd相比如何?
回复

使用道具 举报

11#
 楼主| 发表于 2008-6-17 15:14:58 | 只看该作者
原帖由 perhapszy 于 2008-6-17 01:42 PM 发表
支持一下,不知道与freesshd相比如何?

应该比是比freesshd更强,更专业。
回复

使用道具 举报

12#
发表于 2008-7-14 21:30:10 | 只看该作者
用这个配置成VPN连接及WEB Exchange如何?
回复

使用道具 举报

13#
 楼主| 发表于 2008-7-14 22:34:42 | 只看该作者
原帖由 secowu 于 2008-7-14 21:30 发表
用这个配置成VPN连接及WEB Exchange如何?

这个软件应该可以作出VPN服务器,我没具体安装过,不好乱发言,要看CygWin安装包里有没有VPN选项。
回复

使用道具 举报

14#
发表于 2008-9-16 15:09:50 | 只看该作者
有点头晕!有没有其他中文的工具?傻瓜式
回复

使用道具 举报

15#
发表于 2008-9-16 15:39:21 | 只看该作者
好帖!好东西!谢谢LZ
回复

使用道具 举报

16#
发表于 2008-9-21 13:42:36 | 只看该作者
老师给我推荐过这个工具,他说的英文代码有些问题,今天看了,这东西功能的确挺强大的啊~!!
回复

使用道具 举报

17#
发表于 2009-5-14 17:15:52 | 只看该作者
今天刚安装完cygwin费了九牛二虎之力,终于整明白了
回复

使用道具 举报

18#
 楼主| 发表于 2009-5-14 21:49:38 | 只看该作者
原帖由 373061200 于 2009-5-14 17:15 发表
今天刚安装完cygwin费了九牛二虎之力,终于整明白了

现在Cygwin的源FTP服务器不太稳定,下载成功率有点问题,需要认真去查找甄别才行,这对初学者是一个拦路虎。
回复

使用道具 举报

19#
发表于 2009-5-31 00:40:14 | 只看该作者
楼主是专业人士....
回复

使用道具 举报

20#
发表于 2009-8-15 10:42:37 | 只看该作者
楼主厉害,试试看,行不行!
回复

使用道具 举报

21#
发表于 2009-10-28 13:42:51 | 只看该作者
感谢,楼主的分享!!
回复

使用道具 举报

22#
发表于 2010-1-16 16:32:20 | 只看该作者
回帖是个美德!不过我还不知道这个有什么用。OPENSSH没用过!和SSH Secure Shell Client是不是差不多的?
回复

使用道具 举报

23#
发表于 2010-1-17 15:35:52 | 只看该作者
谢谢!楼主的分享!
回复

使用道具 举报

24#
 楼主| 发表于 2010-1-17 20:52:13 | 只看该作者
原帖由 linkesky 于 2010-1-16 16:32 发表
回帖是个美德!不过我还不知道这个有什么用。OPENSSH没用过!和SSH Secure Shell Client是不是差不多的?

是不一样的,这里的OpenSSH是服务端,SSH Secure Shell Client是客户端,功能不一样。
回复

使用道具 举报

25#
发表于 2010-2-5 10:50:35 | 只看该作者
尽管没看懂有什么用,但支持一下了。
回复

使用道具 举报

26#
发表于 2010-3-21 18:14:12 | 只看该作者
我想知道怎样替换原来版本中的emacs(感觉死难用,也难看,能不能自己下载一个替换到cygwin资源中的emacs),还有在win7下老是安装不能顺利结束
回复

使用道具 举报

27#
 楼主| 发表于 2010-3-21 19:57:49 | 只看该作者
原帖由 zhangyuok 于 2010-3-21 18:14 发表
我想知道怎样替换原来版本中的emacs(感觉死难用,也难看,能不能自己下载一个替换到cygwin资源中的emacs),还有在win7下老是安装不能顺利结束

干吗要换?直接使用windows的写字板编辑即可,方便又好用,至于在Win7下安装,我也没试过,用最新版的Cygwin v1.7.1安装试试。
回复

使用道具 举报

28#
发表于 2010-6-21 16:14:11 | 只看该作者
现在新版的安装界面有些不一样了
回复

使用道具 举报

29#
发表于 2010-7-7 01:29:36 | 只看该作者
先收了在说,看来我还得抽点时间来实践一下,现在看的有点晕呀,呵呵,不错,这个的用,呵呵
回复

使用道具 举报

30#
发表于 2010-7-7 17:09:10 | 只看该作者
蛙哥真是厉害,久仰久仰。。。

[ 本帖最后由 different 于 2010-7-7 17:10 编辑 ]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-12-10 19:21

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表