Cloudera Manager数据库密码加密方案

2019-07-05  本文已影响0人  Moon_魔宽

版权声明:本文为博主原创文章,未经博主允许不得转载。https://www.jianshu.com/p/4e0b382c8fd5

背景:

由于Cloudera Manager使用的数据库账号密码信息保存在/etc/cloudera-scm-server/db.properties文件中,该文件中的com.cloudera.cmf.db.password为明文,因此考虑对其进行加密处理。

1、利用openssl进行AES/DES3加密解密

对字符串12345进行aes加密,使用密钥123(任意),输出结果以base64编码格式给出:

$> echo 12345 | openssl aes-128-cbc -k 123 -base64

得到加密字符串

U2FsdGVkX19mXXHnzrz7LeYigpdAa37UYo3sqz9GZGsD8jlEGZVemKWZNDNIl3AX

2、对加密字符串进行解密

$>  echo U2FsdGVkX18f1etoy8QvkvuVjrVB6xamuBW1g0CpzXxoMmQ5mO2eokhrrp+tmy43

  | openssl aes-128-cbc -d -k 123 -base64

返回12345,证明解密成功

3、修改/etc/cloudera-scm-server/db.properties,删除com.cloudera.cmf.db.password=12345

新增com.cloudera.cmf.db.password_script=/etc/cloudera-scm-server/scm-passwd.sh,如下:

4、修改文件内容及数组权限

编辑/etc/cloudera-scm-server/scm-passwd.sh,内容如下

echo  U2FsdGVkX18f1etoy8QvkvuVjrVB6xamuBW1g0CpzXxoMmQ5mO2eokhrrp+tmy43 | openssl aes-128-cbc -d -k 123 -base64

修改该文件权限为755,属主为cloudera-scm-server

5、重启cloudera-scm-server服务

$>server cloudera-scm-server restart

6、再次登陆CM,页面访问正常。

误区:

一开始尝试直接修改/etc/cloudera-scm-server/db.properties文件中的com.cloudera.cmf.db.password参数,给其赋值

com.cloudera.cmf.db.password=` echo U2FsdGVkX18f1etoy8QvkvuVjrVB6xamuBW1g0CpzXxoMmQ5mO2eokhrrp+tmy43 | openssl

aes-128-cbc -d -k 123 -base64`

但由于该文件为数据库属性文件,不支持赋值操作,因此该方案行不通。

上一篇下一篇

猜你喜欢

热点阅读