Ubuntu 16.04では、すべてのsudoコマンドが記録され、その一部にはログに残したくない機密パラメータ(プレーンテキストパスワードなど)が含まれています。これを防ぐ方法についていくつかのアイデアがありますが、理想的には十分に単純で一般的でなければならない正式な方法があるかどうかを知りたいです。
たとえば、次のコマンドを使用します。
$ sudo set_account.sh --password SbdLb9W --pin-number 1234 --other-options
ログログは次のように表示できます。
sudo set_account.sh --password ... --pin-number ... --other-options
ありがとうございます。
非常に役に立つ回答とコメントを送ってくださった皆さんに感謝します。環境変数とラッパースクリプトメソッドを引き続き使用するようです。
ベストアンサー1
コマンドオプションにパスワードを入力しないでください。
正しい方法は、次の環境変数を使用することです。
$ MY_PASSWORD=s3cr3t ./mycommand
ただし、mycommand
環境でパスワードを見つける方法を知る必要があります。
パスワードはシェル履歴に表示されますが、他のユーザーには表示されません。https://security.stackexchange.com/questions/138071/are-environment-variables-entered-directly-before-a-command-visible-to-other-
シェル履歴に表示したくない場合は、上記のコマンドをスクリプトに入れてスクリプトを実行します。
別のプロセスを呼び出す場合は、子プロセスにmycommand
渡さないように注意してください。MY_PASSWORD