同じユーザーのFTPパスワードを隠す

同じユーザーのFTPパスワードを隠す

場合によっては、ファイルを取得するためにftpに接続する必要があるかもしれません。私はこれのためにスクリプトを書いた。問題は、このユーザーが普遍的であるということです。すべてのタスクは、ローカルホストとリモートシステムでこのユーザーを使用します。これを個人ユーザーに関連付けて、スクリプトで自分のパスワードを表示できるようにする必要があります。これを防ぐ方法はありますか?

ベストアンサー1

ログインしている場合にのみスクリプトが実行されている場合は、ハードコーディングやプロンプトを表示するのではなく、スクリプトの実行時に読み取られる環境変数にパスワードをセッションごとに1回設定できます。たとえば、

# log in to your session
[user@host]  export pass=1234abc
[user@host] my-ftp.sh

エクスポートコマンドの前に余分なスペースを記録します。これは、コマンドがシェル履歴に書き込まれないようにするほとんどのシェル(BashまたはZshなど)のオプションです。これにより、${pass}共有ホスト上のファイルにパスワードを書き込むことなく、スクリプト内の環境変数からパスワードを読み取ることができます。

それ以外の場合は、スクリプトを実行するたびにパスワードを入力するように求められない限り、共有ユーザーを安全に保つための実際の方法はありません。共有ユーザーとして、すべてに非対話型アクセス権があるため、同僚も同様です。実行時に読み取れるようにファイルにパスワードを保存できますが、共有ユーザーはまだファイルにアクセスする必要があります。

おすすめ記事