Если нужно показать работу скрипта, но не отдавать исходники - можно скомпилировать его в бинарник через shc. Инструмент преобразует .sh в C-код и собирает исполняемый файл, на выходе пользователь получит работающий бинарник, но не читаемый скрипт.
apt install shc gcc
script.sh:#!/bin/bash
v=$1
echo "Simple BASH script. Entered VARIABLE: $v"
Компилируем:
shc -f -r script.sh
Появятся
script.sh.x (бинарник) и script.sh.x.c (сгенерированный C). Запуск:./script.sh.x 123
# Simple BASH script. Entered VARIABLE: 123
-e DD/MM/YYYY - срок годности; после даты бинарник не запустится.
-m "msg" - сообщение при истечении срока.
Пример с истечением:
shc -e 31/12/2025 -m "Срок истек" -f -r script.sh
./script.sh.x # Выдаст сообщение о просрочке
📌 Важное замечание по безопасности
shc - это обфускация, а не криптография. В конечном бинарнике содержимое может быть восстановлено (есть утилиты вроде UnSHc). Также секреты, записанные в скрипт, при выполнении будут лежать в памяти и их можно попытаться снять дампом. Это защита от случайного копирования, но не от целенаправленного анализа.
#script #security
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍8❤4🤡1