Шифрование файлов в сценарии удара без explicity обеспечение пароля

Я хочу автоматизировать следующий ручной процесс.

В настоящее время я - encryptying ряд файлов с помощью openssl следующим образом:

Зашифруйте file.txt к file.out использование 256-разрядной AES в режиме CBC

$ openssl enc-aes-256-cbc - соль - в file1 - file1.enc

Мне затем предлагают пароль, который затем используется для шифрования файла

При дешифровании я ввожу

$ openssl enc-d-aes-256-cbc - в file1.enc - файл

Мне затем предлагают пароль - который снова, я вручную ввожу.

Я хочу автоматизировать этот процесс en/decryption - таким образом, я должен найти способ предоставить openssh пароль.

Моя первая мысль - возможно ли читать, пароль из файла (говорят)? Или есть ли лучший способ сделать это?

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

Действительно ли это - путь его сделанный - или является там лучшим путем?

Конечно, все это приводит к еще одному вопросу - который является, как запустить скрипт удара как другой пользователь - не имея необходимость вводить пользователя pwd на терминале...?

BTW, я работаю на Linux Ubuntu 10.0.4

6
задан 31.07.2010, 21:28

1 ответ

чтение man openssl (особенно раздел PASS PHRASE ARGUMENTS):

Several commands accept password arguments, typically using -passin 
and -passout for input and output passwords respectively. These allow
the password to be obtained from a variety of sources. Both of these
options take a single argument whose format is described below. If no
password argument is given and a password is required then the user is
prompted to enter one: this will typically be read from the current
terminal with echoing turned off.

   pass:password
             the actual password is password. Since the password is visible
             to utilities (like 'ps' under Unix) this form
             should only be used where security is not important.

   env:var   obtain the password from the environment variable var. Since 
             the environment of other processes is visible on
             certain platforms (e.g. ps under certain Unix OSes)
             this option should be used with caution.

   file:pathname
             the first line of pathname is the password. If the same 
             pathname argument is supplied to -passin and -passout
             arguments then the first line will be used for the input 
             password and the next line for the output password.
             pathname need not refer to a regular file: it could for 
             example refer to a device or named pipe.

   fd:number read the password from the file descriptor number. This 
             can be used to send the data via a pipe for example.

   stdin     read the password from standard input.

openssl enc принимает -pass <arg> ... таким образом выберите свой аргумент из списка, данного выше. например:

 echo -n "secret" | openssl enc -aes-256-cbc -salt \
        -in file1 -out file1.enc \
        -pass stdin
7
ответ дан 07.12.2019, 16:04

Теги

Похожие вопросы