Linux Shell 脚本加密解密:提示密码对话框并执行
本教程演示如何在 Linux 中使用 GPG 加密 Shell 脚本,并创建提示用户输入密码的解密脚本。解密成功后,脚本将执行原始代码。
-
创建一个原始的脚本文件(例如,'hello.sh')并添加所需的代码。
-
使用以下命令将脚本文件加密:
gpg -c hello.sh
这将使用 GPG 加密工具将脚本文件加密,并要求您设置密码。加密后,原始文件将被删除。
- 创建一个新的解密脚本文件(例如,'decrypt.sh')并添加以下代码:
#!/bin/bash
gpg -d hello.sh.gpg > hello.decrypted.sh
chmod +x hello.decrypted.sh
./hello.decrypted.sh
rm hello.decrypted.sh
此脚本将使用 GPG 解密原始脚本文件,并将其保存为解密后的文件。然后,它将授予可执行权限并运行解密后的脚本文件。最后,它将删除解密后的文件。
- 创建一个新的脚本文件(例如,'run.sh')并添加以下代码:
#!/bin/bash
read -s -p 'Enter password to decrypt: ' password
echo ''
if gpg --passphrase '$password' -d hello.sh.gpg > /dev/null 2>&1; then
echo 'Password correct. Decrypting and running script...'
./decrypt.sh
else
echo 'Password incorrect. Aborting.'
fi
此脚本将提示用户输入密码以解密脚本文件。如果密码正确,则调用解密脚本来解密和运行原始脚本文件。否则,它将中止执行。
- 为 'run.sh' 设置执行权限:
chmod +x run.sh
现在,当您想要运行加密的脚本时,只需运行 'run.sh' 并输入密码即可。如果密码正确,则解密脚本文件并运行原始脚本文件。否则,脚本将退出。
原文地址: https://www.cveoy.top/t/topic/mmzs 著作权归作者所有。请勿转载和采集!