yum2014 发表于 2013-07-18 20:05

在各个集中式管理工具中感觉还是用非ssh连接方式的好

注意:如果很大的公司,上线已经全部交给运维人员,开发人员根本接触不到线上生产机的,可以不用考虑这个问题。

http://www.ansibleworks.com/docs/examples.html

比如这个同样是python编写的集中管理软件ansible。不使用客户端,而是使用ssh-key来管理。
则会发生
$ ansible atlanta -a "/usr/bin/foo" -u username -U otheruser [--ask-sudo-pass]


这里需要用户名和密码。

用户完全可以 用这个用户名和密码,来ssh连接,这下就会出现安全漏洞。
比如这个用户可以sudo,那么他玩可以visudo把自己受限制的命令给去掉。

或者直接修改
/etc/pam.d/su 设置成完全可以su - root,而后sudo的日志也不记载这个用户的操作了!




而saltstack,完全有salt命令行执行,不需要用户名和密码。这样就保险些。

vlinx 发表于 2013-07-19 16:10

小公司还是用ssh连接方式的好

yum2014 发表于 2013-07-20 22:20

回复 2# vlinx


    为啥小公司用ssh的好?

vlinx 发表于 2013-07-21 22:35

管数量小的话用ssh的就好了,量大的话可以使用ZeroMQ。安全漏洞并不是一个小话题,ssh已经是业界标准,ssh连接并无明显漏洞,懂得审计才是长久之策。
SaltStack用到AES加密和证书,C/S构架,相对来说Ansible更加安全和简便。

yum2014 发表于 2013-07-25 18:34

vlinx 发表于 2013-07-21 22:35 static/image/common/back.gif
管数量小的话用ssh的就好了,量大的话可以使用ZeroMQ。安全漏洞并不是一个小话题,ssh已经是业界标准,ssh连 ...

我的意思不是这个层面的。而是

当我部署ansible或者fabric这种软件,我要将生产服务器设置为对cm的master端设置可信。

我的开发人员需要到线上服务器上去调试代码等操作。这样,我需要封装这些操作到cm工具中。

但是如果是用ssh设置可信。那么开发人员,可能会把key文件取下来,到自己的电脑上去ssh连接到生产服务器上。这样就太可怕了。

我说的安全漏洞是这个层面的。。。:emn16:

vlinx 发表于 2013-07-26 09:27

回复 5# yum2014


    DevOps分开,Dev一个cm,Ops一个cm。

jimin_lee 发表于 2013-07-26 16:16

一直不喜欢使用SSH做信任的方式管理服务器。因为这台服务器就是一个雷,一旦某个黑客通过某种方式占领了这台机器,那就相当于占领了所有的服务器。把所有鸡蛋放在一个篮子里,这种方法方便了运维,却有较大的危险。

vlinx 发表于 2013-07-26 17:05

回复 7# jimin_lee


    一旦某个黑客通过某种方式占领了Puppet master,Chef master,SaltStack master?

yum2014 发表于 2013-07-27 13:01

回复 6# vlinx


    你是说开发人员之操作测试服务器,不让他们接触到线上服务器?

vlinx 发表于 2013-07-27 20:17

回复 9# yum2014


    无论是传统SDLC还是ITIL,开发人员都不应该接触到线上服务器,然而DevOps的开发人员管理需要依靠审计,否则要分开管理。
页: [1] 2
查看完整版本: 在各个集中式管理工具中感觉还是用非ssh连接方式的好