Сценарий оболочки Linux bash со скрытым паролем для truecrypt

Я пытаюсь создать свой собственный bash-скрипт Linux, который вызывает truecrypt для монтирования. Как вариант нужно установить пароль на файл truecrypt. Я могу сделать это внутри сценария bash, но если кто-то его откроет, он увидит пароль. Позже скрипт запустится автоматически.

Мой вопрос: есть ли безопасный способ скрыть/зашифровать пароль?

Пример:

truecrypt --mount --password="testing" /home/username/test.tc /home/username/mount/

Спасибо за любую помощь!


person Flappy    schedule 24.06.2012    source источник
comment
Я не думаю, что это возможно без взаимодействия с пользователем   -  person Alvin Wong    schedule 24.06.2012


Ответы (2)


Используйте СХК. Он шифрует сценарии оболочки с помощью RC4 и создает исполняемый двоичный файл из сценария оболочки, который вы можете запустить.

Загрузите SHC (http://www.datsi.fi.upm.es/~frosal/) и установите его.

Создайте сценарий оболочки с помощью "truecrypt --mount --password="testing" /home/username/test.tc /home/username/mount/" и сохраните его как "yourfilename.sh".

Теперь запустите команду:

shc -f имя_файла.sh

Переключатель «-f» указывает исходный скрипт для шифрования. Приведенная выше команда создаст два файла: yourfilename.sh.x.c и yourfilename.sh.x.

Программа «shc» создает исходный код C из вашего сценария оболочки, а затем шифрует его (имя_файла.sh.x.c). Зашифрованный сценарий оболочки: yourfilename.sh.x. Запустите этот двоичный файл, и он выполнит ваши команды:

./script.sh.x

person Vizard    schedule 24.06.2012

Нет безопасного способа сохранить пароль так, чтобы кто-то не смог его прочитать. Единственные варианты, которые у вас есть, - это использовать права пользователя, чтобы ограничить, кто может его видеть. Вы можете сделать скрипт доступным для чтения только пользователю, чей пароль находится в нем, как один из вариантов. Другой способ — заставить сценарий считывать пароль из файла с аналогичным набором разрешений (это просто дает вам больше гибкости при обновлении сценария и т. д.).

В конечном счете, любой администратор/суперпользователь все равно может прочитать файл, так что это не то, что вы можете сделать безопасно. Большинство людей предлагают, чтобы сценарий запускался автоматически и предоставлял пользователю графический интерфейс для ввода пароля. Они различаются в зависимости от вашего дистрибутива, но обычно они есть.

person BlargleMonster    schedule 24.06.2012