0


shell脚本中对明码加密的方法

base64加密方法

工作中连接数据库或登陆时,应避免在代码中或者配置文件中直接使用明码,因为明码可能会造成数据泄露等不安全操作,现对shell脚本中对明码加密解密操作进行说明,从而方便的对敏感信息做加密处理。本文推荐使用base64编码加密方法对各种明码进行加密,上手快且使用起来比较方便,不需要安装依赖包也不需要开发额外代码

加密:echo "密码"|base64 -i

解密:echo "加过密的密码"|base64 -d

特别注意:明文密码中应注意反引号`、感叹号 !、双引号"以及$符号后面跟数字或者字母或者$,需要在字符前面加上\进行转义

例:echo "Test2022_pw"|base64 -i

得到加密后的加密码VGVzdDIwMjJfcHcK

现在解密,验证解密后是否是原码,通常加密后都需要解密去验证密码是否正确

日常使用:我们可以提前对密码进行加密得到加密后的密码,在脚本中使用时,定义一个变量接收解密后的明码或者把加密后的密码放到配置文件中去,读取配置文件时添加一个解密操作即可

如:dbpass=$(echo "VGVzdDIwMjJfcHcK"|base64 -d)

#!/bin/bash
source ~/.bash_profile

dbuser=APPUSER
#定义dbpass变量接收解密后的密码
dbpass=$(echo "VGVzdDIwMjJfcHcK"|base64 -d)
dbinfo=192.168.23.01/orcl

msg=`
#以变量的形式连接数据库,此时整体代码中不再出现明码
sqlplus -S $dbuser/$dbpass@$dbinfo << eof
    set pagesize 0;
    set trimspool on;
    set linesize 200;
    set feedback off;
    set verify off;
    set heading on;
    set echo off;
    set termout off;
    select sysdate from dual;
    exit;
eof
`

echo ${msg}

exit 0
标签: 安全 bash

本文转载自: https://blog.csdn.net/weixin_52211654/article/details/127527165
版权归原作者 不写代码很难受 所有, 如有侵权,请联系我们删除。

“shell脚本中对明码加密的方法”的评论:

还没有评论