『壹』 linux shell腳本,運行時要輸入密碼,密碼正確才往下跑,這個怎麼實現呢
A=123456
read-p"請輸入密碼:"PASSWD
if["$PASSWD"=="$A"];then
continue
else
echo"密碼不錯誤,請重啟輸入!"
fi
『貳』 shell腳本加密
兩種方法
gzexe shell-script
這樣會把shell腳本打包成一個可執行程序,但是使用者看不到腳本內容
gcc compile file
用gcc對shell進行編譯生成可執行文件
『叄』 如何給PowerShell腳本加密
適用於Powershell3.0及以後版本。假設你需要給文件加密,下面教你如何給自己的文件加密:
$Path = "$env:temp\secret.txt"
$Secret = 'Hello World!'
$Passphrase = 'Some secret key'
$key = [Byte[]]($Passphrase.PadRight(24).Substring(0,24).ToCharArray())
$Secret |
ConvertTo-SecureString -AsPlainText -Force |
ConvertFrom-SecureString -Key $key |
Out-File -FilePath $Path
notepad $Path
當你需要解密出裡面的內容,這時就需要最初的密碼:
$Passphrase = Read-Host 'Enter the secret pass phrase'
$Path = "$env:temp\secret.txt"
$key = [Byte[]]($Passphrase.PadRight(24).Substring(0,24).ToCharArray())
$cred = New-Object -TypeName System.Management.Automation.PSCredential('mmy', $decryptedTextSecureString)
$decryptedText = $cred.GetNetworkCredential().Password
『肆』 如何將shell腳本變為可執行文件
方法一、可以使用gzexe命令直接將shell腳本變成可執行文件,命令為gzexe 後面接要處理的shell文件名。
4、shc常用參數說明
-e date (指定過期日期)
-m message (指定過期提示的信息)
-f script_name(指定要編譯的shell的路徑及文件名)
-r Relax security. (可以在相同操作系統的不同系統中執行)
-v Verbose compilation(編譯的詳細情況)
『伍』 如何給powershell腳本加密
適用於Powershell3.0及以後版本。
假設你需要給文件加密,下面教你如何給自己的文件加密:
$Path="$env:tempsecret.txt"
$Secret='HelloWorld!'
$Passphrase='Somesecretkey'
$key=[Byte[]]($Passphrase.PadRight(24).Substring(0,24).ToCharArray())
$Secret|
ConvertTo-SecureString-AsPlainText-Force|
ConvertFrom-SecureString-Key$key|
Out-File-FilePath$Path
notepad$Path
當你需要解密出裡面的內容,這時就需要最初的密碼:
$Passphrase=Read-Host'Enterthesecretpassphrase'
$Path="$env:tempsecret.txt"
$key=[Byte[]]($Passphrase.PadRight(24).Substring(0,24).ToCharArray())
try
{
$decryptedTextSecureString=Get-Content-Path$Path-Raw|
ConvertTo-SecureString-Key$key-ErrorActionStop
$cred=New-Object-TypeNameSystem.Management.Automation.PSCredential('mmy',$decryptedTextSecureString)
$decryptedText=$cred.GetNetworkCredential().Password
}
catch
{
$decryptedText='(wrongkey)'
}
"Thedecryptedsecrettext:$decryptedText"
『陸』 如何用shell腳本對文件內容加密
使用OPENSSL命令吧
Plain Text code?
1
2
3
4
5
#加密
openssl enc -e -aes-256-cbc -in 要加密的文件 -out 要解密的文件 -pass pass:密碼
#解密
openssl enc -d -aes-256-cbc -in 要解密的文件 -out 要加密的文件 -pass pass:密碼
『柒』 shell腳本是否可以編譯,封裝,加密
SHELL腳本是被/bin/sh執行的,如果加密,自然/bin/sh無法解析。
但也有方法可以達到你的目的,你講SHELL加密,寫一個可執行文件,可執行文件解密你的SHELL,然後fork進程去執行你的SHELL文件。