0

事前共有キーを使用できないサーバーがありますssh。すべての認証は対話型プロンプトを介して行われます。

そのサーバーは、root以外のユーザーに対してもcron無効atになっています。

cronリモートサーバーに対してスクリプトを実行して定期的なメンテナンス/レポートを実行するジョブをローカルマシンで実行できるようにしたいと思います。

私はexpectいくつかのことを考えましたが、適切なタイミングでプロンプトへのパスワードの入力を自動化するために、クリアテキストで保存する必要があることに気づきました。

パスワードを一度入力すると、ローカルでスクランブル/何でも(のようpasswdに)、スクリプト自体にプレーンテキストのパスワードを保存しないようにパスワードを保護する方法はありますか?

4

2 に答える 2

2

ボットネットベースの攻撃は拒否ホストの有用性を鈍らせる可能性があるため、パスワードベースの認証に固執することは非常に安全ではありません. しかし、もしあなたがしなければならないなら、あなたはしなければなりません...

そのような状況で立ち往生したときに私がすることは、パスワードをスクリプトとは別のファイルに入れ、そのパスワードファイルを私だけが読み取れるようにし、そのパスワードファイルが含まれているディレクトリを私だけが読み取り可能 (および実行可能) にすることです。また、パスワードが引数として渡されたり、環境変数で渡されたりしないように細心の注意を払います。これらは両方とも、 で自明に詮索可能psです。パスワードファイルの名前を渡しても問題ありません(パスを保護できます)。名前のないパイプを介してパスワードを渡すことも安全です。

于 2010-04-08T14:09:27.243 に答える
2

パスワードの保存は常に安全ではありません (平文のパスワードにアクセスする必要がある場合)。スクリプトには、「エンコード解除」ロジックが必要です。スクリプトへの読み取りアクセス権を持つ人は誰でも、エンコードされたパスワードが保存されている場所とエンコードを解除する方法を把握できます。

それはあなたのための判断の呼びかけです。自動化 (時間を節約するため) とパスワード セキュリティのどちらを重視しますか?

于 2010-04-08T10:52:32.147 に答える