免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: Bank
打印 上一主题 下一主题

Cluster配置中的SSH问题! [复制链接]

论坛徽章:
0
11 [报告]
发表于 2006-04-10 11:27 |只看该作者
原帖由 喜爱SuSE的boy 于 2006-4-10 10:40 发表
那么,请说说看,从服务器上登入到所属的节点机有什么必要弃用rlogin,而非要用ssh。对集群,外部intenet是没有通道直接进入节点机的。按我的理解,ssh就是两机之间的通讯是加密的。但是从服务器到节点机这个内部 ...


ssh 指的是传输的内容加密,至于认证,又不只有密码认证这种方式

论坛徽章:
0
12 [报告]
发表于 2006-04-10 13:29 |只看该作者
看来我理解没错,ssh就是两机之间的通讯加密,包括登入和登入后的操作。实际上登入后的操作基本可以由rsh完成,除了编辑文件这类的需要打开另外的服务的命令。单单命令,我一时想不出有什么不可以,但是,当然也不敢断言完全可以由rsh完成。

我的问题是有什么必要弃用rlogin,而非用ssh不可,不管是什么认证。

事实上,很多时候,普通用户是被禁止进入节点机的,为了防止他们饶开任务递交系统(比如PBS)私自递交任务。只有当节点机在任务递交系统的调配下,给用户使用时,该用户才能被允许登入所分配使用的节点机。如果你管理过大型的集群,防止用户滥用资源是必须考虑的事。所以,我要问,有什么必要非用ssh不可?难道会有人(或黑客)在服务器与节点机间的内部网络(一般没有网关,只有交换机)去截听某个用户在服务器与节点机之间的通讯?

此外,rsh和rlogin在安全等级上,我想是同一层level的。所以,如果rlogin被ssh以某种你所知道的必要的原因所取代,那么,对rsh命令呢?上面已经说了,登入后的操作一般都可以用rsh替代。那么,有没有与ssh同一安全level的可以加密这种远程命令的XXXsh来取代呢?如果没有,那么你所知道的因某种必要的原因而用ssh还有意义吗?

我实事求是地说,我到现在也还是不知道ssh是否可以无须对话从服务器上登入节点机。自己感觉,如果可以的话,与ssh所设计的安全通讯的初衷不符。但是,不管怎样,我认为没有必要在节点机与服务器的联系之间使用ssh。就象楼主,恐怕到现在由于这个问题还不能使用自己的集群,肯定不爽。

[ 本帖最后由 喜爱SuSE的boy 于 2006-4-10 13:33 编辑 ]

论坛徽章:
0
13 [报告]
发表于 2006-04-11 13:00 |只看该作者
原帖由 喜爱SuSE的boy 于 2006-4-10 13:29 发表
看来我理解没错,ssh就是两机之间的通讯加密,包括登入和登入后的操作。实际上登入后的操作基本可以由rsh完成,除了编辑文件这类的需要打开另外的服务的命令。单单命令,我一时想不出有什么不可以,但是,当然也不 ...


再说一次,ssh只是保证传输数据安全,比如telnet传输数据用的是明文,这样密码和关键数据容易被窃取,而ssh不会;ssh的安全不是靠要密码体现的,建立信任关系即可(讲自己节点的公钥保存在对方节点的authorized_keys信任列表就可以了)。

rlogin/rsh的信任关系就比较薄弱,很容易被伪造(伪造ip/id等)

ssh建立信任关系很简单。假设A机需要不输入密码而登陆B机,在A机上运行
ssh-keygen -t rsa
生成公钥和密码(id_rsa.pub ,id_rsa)
然后把~/.ssh/id_rsa.pub的内容添加到B机~/.ssh/authorized_keys里就可以了,而且这个信任关系是相当安全的。

很多HA的使用了这种信任关系来减少操作复杂度,比如vcs

论坛徽章:
0
14 [报告]
发表于 2006-04-11 15:58 |只看该作者
对啊,你所说的不就是加密吗?明文经加密后,变成即使截听也不能被理解的码!即在网络上截取的信息并不能直接解读,而是需要经过根据两机之间的软、硬标识而建立的只有两机之间有效的密匙进行转换的信息。难道不是这样?

问题是有否必要?ssh就是安全。有什么必要伪装id/ip进入呢。我已经说过,节点机为安全起见应该只与服务器在内部网络连接,而服务器是外接到internet的。内部网络的意思不是什么公司内部的局域网之类,而是单独地连接。这个内部网络除了属于这个集群的节点机和服务器,没有其他任何机器,而服务器还有另外一张或多张网卡连接到internet,供用户从外部登入到服务器。登入到服务器当然应该采用ssh方式,而且必须是对话方式的。如果本id已经进入服务器,已经可以被允许进入节点机(除非象我说过,为了避免用户滥用资源,不允许任何用户私自进入节点机,那不管是rlogin还是ssh,都不允许),为什么还要伪装id?ip根本不用伪装,用户必定已经在服务器内,否则外部网络根本不能与节点机建立任何联系,因为没有硬件通道!

你只说了在节点机和服务器之间建立ssh级别的信任关系。我也知道rsh/rlogin的安全级别不够高,但我还是这个问题,请说说看,有什么必要非要在服务器到节点机之间用ssh不可?有些集群的节点机连本地硬盘都没有,全都是从服务器上或通过服务器(如磁盘阵列)共享的,进入节点机能够怎样?不进入节点机又不能怎样?

此外,有相当于ssh层次的XXXsh,可以用来加密从服务器向节点机发送远程命令吗?否则,怎么加密这些内容呢,如果给我个理由是必需用ssh进入节点机话?

[ 本帖最后由 喜爱SuSE的boy 于 2006-4-11 16:11 编辑 ]

论坛徽章:
0
15 [报告]
发表于 2006-04-11 16:39 |只看该作者
无密码的ssh node
可以这样:
1、在client端rsa -t keygen
在~/.ssh目录下生成了两个放密钥的文件,
把那个公钥文件copy到server端机器上相应的目录,并且改名为
authorized_keys
2。chmod 600 authorized_keys
应该就ok了

论坛徽章:
0
16 [报告]
发表于 2006-04-11 18:21 |只看该作者
原帖由 喜爱SuSE的boy 于 2006-4-11 15:58 发表
对啊,你所说的不就是加密吗?明文经加密后,变成即使截听也不能被理解的码!即在网络上截取的信息并不能直接解读,而是需要经过根据两机之间的软、硬标识而建立的只有两机之间有效的密匙进行转换的信息。难道不是 ...


用到的就是有必要,不是你想没必要就是没必要的。比如可以通过这种方法安全的远程执行对方节点上的命令,这个在HA里用的非常多,比如heartbeat 2.0的stonith模块,很多就是这么干的,因为这样省掉了用户输入密码的过程,避免要多保存一次密码带来密码泄露风险;rhcs vcs里也有这样的例子。

论坛徽章:
0
17 [报告]
发表于 2006-04-12 13:38 |只看该作者
你说的可能并不是cluster中服务器与节点机,而只是普通网络上的服务器和客户机,虽然英语都是client,但这不是一个概念。这从你说的什么伪装id/ip上实际上也可看出来。我当时不明白,为什么要伪装呢?如果已经登入服务器,那就是同一个ip;如果已经登入服务器,那所有的用户都可以用rsh从服务器上在节点机上执行远程命令(见下面,rsh的信任是对整个服务器,不是个别用户),那又何必伪装呢,先登入,再执行命令。用rsh不就得了?除非某人想做的事情,如果以后管理员查起来,可以认为是其他用户做的。而从另一朋友的贴子上可以看出来,所议论的根本不是cluster中的服务器和节点机。因为那个贴说,在两机之间都要在.ssh/目录中建立与信任有关的文件。这个帖子提醒了我,我再回过头看你以前的帖子,实际上,你在说明如何建立无须对话的ssh的步骤中,也是这么说的:

然后把生成的.ssh/id_pub.rsa 内容复制到对方的.ssh/authorized_keys

这样的话,这不是cluster。cluster中的用户目录,并不在节点机上建立,而是由服务器通过NFS共享到节点机上的。节点机和服务器上用户根目录都是同一个,哪来的

把生成的.ssh/id_pub.rsa 内容复制到对方的.ssh/authorized_keys

这回事!cluster中根本不在服务器上的用户根目录里建立.ssh/目录,在节点机上的同一用户的根目录里又建立一个.ssh/目录。因为对同一用户,这根本就是同一个目录,只是从服务器上通过NFS共享到所有的节点机上去的。看来,这样的无须对话的ssh需要两机上的用户目录中都有这样的信任文件。但是,cluster中,根本就没有这种可能!如果你不明白为什么cluster上必须这样,你可以去看看关于cluster的书或相关的如何建立cluster的网站。

现在我可以断言,cluster上根本就不能用无须对话的ssh从服务器上登入到节点机,因为不能为服务器和节点机分别建立用户目录。当然你硬要这样做我也没有办法!你当然可以将cluster按普通的服务器和客户机这样的关系,在每个客户机上一一建立同一个用户的帐户。但是一旦这样,这就不是通常意义上的cluster了。

还说我totally wrong!

可是楼主的问题是

Cluster配置中的SSH问题

更重要的是,楼主说了,rsh没有问题!我想这是指已经可以在服务器上,用rsh在节点机上执行远程命令。这需要在节点机的/etc/hosts.equiv文件中配置信任关系,对服务器上所有的用户有效!所以我搞不懂,为什么要伪装id,而ip根本就是同一个,就是服务器的ip,还需伪装吗?

如果你还要反驳我的帖子,先请回答,你所说的必须使用ssh的两机之间,能不能无需对话使用rsh从服务器到客户机上来执行远程命令?如可以,那能不能用rsh来执行你说的有必要先用ssh登入对方节点,再在对方节点上执行的命令?如果也可以,那安全问题怎么解决。在cluster上,必须能够执行这样的命令,而安全不成为问题,因为服务器到节点机只存在独立通道。而普通的服务器和客户机可都是在internet网上的。所以我也一直问,如果你给个理由必须用ssh,那对rsh有没有相同的替代的什么shell命令,就是这个意思。现在看来,你说的只是普通的服务器和客户机之间的关系,而不是指cluster,在公共网络上,根本不能无须对话执行rsh。那可能引起灾难!

论坛徽章:
0
18 [报告]
发表于 2006-04-12 15:38 |只看该作者
原帖由 喜爱SuSE的boy 于 2006-4-12 13:38 发表
你说的可能并不是cluster中服务器与节点机,而只是普通网络上的服务器和客户机,虽然英语都是client,但这不是一个概念。这从你说的什么伪装id/ip上实际上也可看出来。我当时不明白,为什么要伪装呢?如果已经登入 ...

呵呵,只能说你自己概念不清晰,而且还嘴硬,说了你一句,就搞那么多不相关的内容。一句话,ssh的信任关系在哪里都可以应用,不管你是否是在内部网还是公共网,而且足够安全,ssh的安全和需不需要密码无关。
over,不再回你的了

论坛徽章:
0
19 [报告]
发表于 2006-04-12 23:57 |只看该作者
这样的话,这不是cluster。cluster中的用户目录,并不在节点机上建立,而是由服务器通过NFS共享到节点机上的。节点机和服务器上用户根目录都是同一个,哪来的

============================================================
谁告诉你cluster一定要有nfs的,楼上的哪位又提到了nfs了。


但是从服务器到节点机这个内部网络,有什么必要加密呢?
=========================================
内部网路为什么没有必要加密,你去学习一下rsh和ssh信任关系的区别再来发表看法吧。


晚上无聊,看了一下你的帖子,本来我对喜欢suse的人有比较好的印象,但是像你这么胡搅蛮缠的,少见啊。

论坛徽章:
0
20 [报告]
发表于 2006-04-13 00:20 |只看该作者
其实安全性这个问题,说个题外话,我做过很多项目,招标的时候要求你的产品安全性能达到多少多少,实际使用当中,为了方便,很多用户随便开telnet ,ftp,甚至还要root能登陆telnet, 能用ftp, 呵呵。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP