2011-12-27 35 views
13

Tôi muốn mã hóa tệp bằng openssl. Tôi có thể làm điều đó bằng cách sử dụngMã hóa tệp bằng tập lệnh bash shell

openssl des3 -salt -in /pritom/uaeyha_com.sql -out /pritom/a.ss 

Khi tôi chạy lệnh này, mật khẩu này nhận mật khẩu từ tôi hai lần. Tôi muốn thiết lập mật khẩu với kịch bản và tôi đã sử dụng

openssl des3 -salt -in /pritom/uaeyha_com.sql -out /pritom/a.ss -pass pritom 

nhưng nó mang lại cho tôi những lỗi sau:

Invalid password argument "pritom" 
Error getting password 

tôi có thể làm gì bây giờ?

Trả lời

13

Hãy thử một cái gì đó như thế này -

openssl des3 -salt -in /pritom/uaeyha_com.sql -out /pritom/a.ss -pass pass:pritom 

Từ trang man:

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. 
+0

Thank you very much . – Pritom

+1

Bạn được chào đón. Do đọc phần mà khi bạn vượt qua mật khẩu trên dòng lệnh, nó sẽ được hiển thị cho tất cả mọi người nếu họ làm 'ps -ef'. Vì vậy, tốt hơn để vượt qua nó từ một tập tin bằng cách sử dụng '-pass file: pathname'. Chúc may mắn :) –

+0

Tôi sẽ sử dụng mã này trong tệp .sh của tôi, vì vậy sẽ không có căng thẳng. Cảm ơn ................ – Pritom

1

để ẩn nó từ việc sử dụng lệnh ps:

temp_varX=pritom ; 
openssl ..... -pass fd:0 <<< "$temp_var" 
+0

Sử dụng thẻ mã! :) – gsamaras

Các vấn đề liên quan