ende加密服务使用
更新时间: 2024-12-19 16:33:52
阅读 75
背景:
之前的加密服务得在公司内网才可以加密解密,目前更新的最新版ende镜像包,支持有数机器容器内加密解密,不限制网络环境。
操作步骤
1. 加载ende镜像
镜像地址为 59.111.178.240:20280/stable/ende.tar.gz
docker load -i ende.tar.gz 解压ende镜像
2. 获取私钥和公钥
openssl genpkey -algorithm RSA -out private\_key.pem -pkeyopt rsa\_keygen\_bits:2048
openssl pkcs8 -topk8 -inform PEM -outform DER -in private\_key.pem -out private.key -nocrypt
openssl rsa -pubout -in private\_key.pem -outform DER -out public.key
以上3行命令会获取到private.key,public.key的公私钥,然后将公私钥放到/youdata/installer目录下
3. yaml文件添加ende服务
ende服务内容如下:
ende:
image: localhost:5000/yddocker/ende:stable
deploy:
replicas: 1
networks:
- youdata
volumes:
- /youdata/installer/public.key:/ende/public.key
- /youdata/installer/private.key:/ende/private.key
logging:
options:
max-size: "10m"
max-file: "10"
4. 进入ende容器加解密
yaml文件更改完后,dsd下,然后ende服务起来后,进入ende服务容器
进入ende容器
docker exec -it ende容器id bash
加密:
curl --request GET \\
\--url 'http://127.0.0.1:7000/encrypt-text?value=123'
将value后面的值123换为需要加密的字段,即可获取到明文对应的密文
解密:将加密值替换value部分
curl --request POST \\
\--url http://127.0.0.1:7000/decrypt-text \\
\--header 'Content-Type: application/json' \\
\--data '{"value": "axC48O/OubhFiHpu8a+XmoUUhQBqApOnUO9GdRDJCdvYZqH4wE0L5xV7kd9yn4yCa7isGcF7u/uQrjSfNv3xymSG7Us7QXvDm5erKjEJiMilwGTN/LUuifoShXtDtNjiPMf/HEj9cepO/Gxnw=="}'
5. 配置文件替换密文配置并开启解密
DB: HZ5DpSHatK9bYq588+F+AcR0sfkU0eJ3y6qp1ET+CkmdSFbBwdQoIoGjpMI8OUbbeVXRkp/9AH/D6K1Leu/8VsIl1JBNb34j0AaA8lnsD/lCiUjhGdDWgP+EeYi5S5VauR5W8BmQWHjxZwJ5AV7CacCqZ9b/dp3yA2Ndr76llgA=
#额外增加以下2个配置
ENABLE\_DECRYPTOR: 'true'
DECRYPTOR\_HOST: http://ende:7000
#只要是替换为密文的服务,环境变量都需要加上如上两行配置
配置文件更改完后,dsd下,看下服务是否起来dv ls
文档反馈
以上内容对您是否有帮助?