人々がコマンドラインでパスワードを使用してはならないのはなぜですか?

人々がコマンドラインでパスワードを使用してはならないのはなぜですか?

人々がコマンドラインにパスワードを書くのを恐れているのはなぜですか?

履歴ファイルは場所にあるため、~/.historyコマンドを実行しているユーザー(およびルート)のみを使用できます。

答え1

コマンドラインは単なる歴史的なものではありません。たとえば、ファイルシステムへの出力やファイルシステム経由ps -ocmdの出力にも使用できます。/proc/proc/<pid>/cmdline)はps読む場所です。

さらに、ユーザのホームディレクトリは通常、全体またはグループが読み取ることができます。履歴ファイルをユーザーだけが読み取ることができるように設定できますが、これは削除と再生成時に持続しない可能性があります。

答え2

コマンドラインにパスワードを入力するのは常に悪い考えです。他の回答で議論された方法に加えて、以下が含まれます。

  • /プロセス
  • プロセスリスト(ps
  • ユーザー履歴ファイル

ユーザーコマンドは、次の場所にも表示できます。

  • 監査ログ
  • /var/log/*

また、ユーザーがシステム間でログインするとユーザーのコマンドも表示されるため、これは一般的に悪い習慣であるため、常に避けてください。

答え3

問題は、コマンドが実行されたとき(ほとんどの場合は他のユーザー、さらにはrootにも)パラメータの可視性にあります。出力ビュー

ps -eo pid,user,args

関連情報