私たちの管理チームでは、全員がすべてのクライアント サーバーのルート パスワードを持っています。しかし、チーム メンバーの 1 人が私たちと一緒に仕事をしていない場合はどうすればよいでしょうか? 彼はまだ私たちのパスワードを持っており、誰かが私たちを離れるたびに、すべてを変更する必要があります。
現在、パスワードの代わりに ssh キーを使用していますが、ssh 以外のものを使用する必要がある場合、これは役に立ちません。
私が実行しているシステムには、sudoのみのポリシーがあります。つまり、root パスワードは*
(無効) であり、root アクセスを取得するには sudo を使用する必要があります。その後、ファイルを編集して、ユーザーsudoers
のアクセスを許可または取り消すことができます。非常にきめ細かく、多くの構成可能性がありますが、適切なデフォルトが設定されているため、セットアップにそれほど時間はかかりません。
私は通常、次のことを提案します。
さて、この設定では、すべてのユーザーがリモート管理に sudo を使用する必要がありますが、システムがひどく混乱した場合、コンソールのロックを解除するために root パスワードを探す必要はありません。
編集: 独自のログインを提供する他のシステム管理ツールも調整が必要です。
システムのサイズに応じて、Chris が提案したような sudo のみのポリシーを使用することをお勧めしますが、ldap アプローチも役立つ場合があります。すべてのルート パスワードを含むファイルによってそれを補完しますが、ルート パスワードは非常に長くて覚えにくいものです。これはセキュリティ上の欠陥と見なされる可能性がありますが、ldap サーバーがダウンしている場合でもログインできます。
おそらくより良いsudoポリシーは別として、各管理者がUID 0の独自のアカウントを持つことができず、名前が異なり、パスワードとホームディレクトリが異なるという理由はありません。彼らがいなくなったら、彼らのアカウントを削除してください。
管理しているすべてのマシンのルート パスワードを簡単に変更できるようにしたので、人々が去ったときにスクリプトを実行するだけで済みました。私はあまり精通していませんが、うまくいきました。私が勤務する前は、社内の全員がすべてのサーバーの root にアクセスできました。幸いなことに、私たちはそれから離れました。
一般的に言えば、誰かが私たちのチームを離れても、root パスワードをわざわざ変更することはありません。彼らは会社を去ったか (VPN が取り消され、建物へのバッジ アクセスとネットワークへのワイヤレス アクセスが取り消されたため、マシンにアクセスする方法がなくなりました)、または社内の別の部署にいます。私たちの環境を台無しにしないプロ意識を持っています。
セキュリティホールですか?多分。しかし、本当に、彼らが私たちの環境を台無しにしたいのなら、先に進む前にそうしていただろう.
これまでのところ、チームを離れて私たちのマシンに再びアクセスしたい人は、許可がなくても参加できるにもかかわらず、常に許可を求めてきました. 仕事を成し遂げる私たちの能力を妨げる理由は見当たらない。つまり、他の誰かが前進したり上向きになったりすると、違ったやり方をするだろうと信じる理由は何もない.
適度に強力な root パスワード。箱ごとに異なります。リモート ルート ログインはなく、ログイン用のパスワードもありません。キーのみです。
証明書を介して ssh アクセスできる場合、ssh を介してログインし、パスワードを必要とする他の何かを行う必要がある場合にroot
パスワードを変更できませんpasswd
か?sudo passwd
私が働いている場所では sudo のみのポリシーを使用していますが、root パスワードは引き続き保持されます。root パスワードは、選ばれた少数の従業員のみが使用できます。すべてのパスワードを保存し、パスワード監査も提供できる Password Manager Pro というプログラムがあります。これにより、戻って、どのユーザーがどのパスワードにアクセスしたかを確認できます。したがって、実際に変更する必要があるパスワードのみを変更できます。
SSH キーには実際の代替手段がありません。
多くのサーバーで多くのファイルを管理するauthorized_keys
場合、すべてのサーバーで同じファイルを使用したくない場合は、独自のソリューションを実装する必要があります。独自のツールを使用するか、puppet、ansible などの構成管理ソリューションを使用します。
それ以外の場合は、for ループbash
または何らかのclush
アクションで十分です。
SSH ログイン以外のもの:
ログインベースのサービスを実行するには、中央のバックエンドで何らかの認証を使用します。このバックエンドが利用できない場合、誰も作業を行わないことに注意してください!
クラスター化されたサービスを実行します。超大規模サービスのバックドア アカウントでハッキングしないでください。何かが壊れた場合 (構成ミスにより管理者アクセスが壊れた場合など) に常にアクセスできるようにします。このアカウントに影響を与えるアクセスまたは構成の変更をどれだけ監視しても、これは「ただ悪い」(TM) です。
このバックドアを正しく取得する代わりに、アプリケーションをクラスタ化するか、少なくとも、メイン ボックスが停止した場合に手元のセットアップを定期的にミラーリングする予備のシステムを用意し、ネットワーク内のルーティングの変更によって簡単にアクティブ化できるようにすることをお勧めします。これが複雑すぎるように聞こえる場合は、ビジネスが小さすぎて、半日から 2 日間のダウンタイムで生活できるかのどちらかです。または、知識が不足しているためにクラスターが本当に嫌いで、間違ったことを節約しているだけです。
一般的に : ある種の Active Directory または LDAP 統合で使用できないソフトウェアを使用している場合は、サメを飛ばしてこれらのパスワードを手動で変更する必要があります。
また、非常に選ばれた少数のみが直接アクセスでき、他のすべての人が読み取り専用である専用のパスワード管理データベースも非常に優れています。Excel ファイルを気にしないでください。これらには適切な権利管理がありません。.csv ファイルでバージョン管理を行っても、特定のしきい値を超えると実際には効果がありません。