LinuxおよびWindows用のサーバー資格情報管理


12

私たちは、RHEL、Solaris、Windows 2003、およびWindows 2008サーバーが混在する比較的小さなショップです(システム管理者の数に関して)。合計で約200台のサーバー。

管理者アカウント(rootLinuxおよびadmnistratorWindows)には、データセンターの場所とサーバーの文書化された他のプロパティに依存するパスワードスキームがあります。

Linuxでの現在のプラクティスは、共有できる非特権アカウントを作成するsuことrootです。Windowsベースのシステムでは、管理者権限を持つ追加のアカウントを作成します。これらのアカウントは両方とも同じパスワードを共有します。

これは非常に非効率的であることが証明されています。誰かが私たちの店を出るとき、私たちは:

  1. 管理者アカウントのパスワードスキームを変更する
  2. サーバーごとに新しい管理者パスワードを生成する
  3. 新しい非管理者アカウントのパスワードを考え出す
  4. すべてのサーバーをタッチして、パスワードを変更します

同様の環境のだれかが、これらの資格情報を管理するより健全な方法を提案できるかどうかを知りたかったのです。いくつかの関連情報:

  • ほとんどのサーバーはADドメインの一部ですが、すべてがADドメインの一部ではありません。
  • 私たちはすべてのLinuxサーバーをPuppetで管理しています(キー認証は私が考えたオプションでしたが、上記の3番目の懸念にしか対処しません)。
  • CobblerでLinuxサーバーをプロビジョニングします。
  • ハードウェアの約10%がVMWare専用です。そのような場合、サーバービルドにはVMWareテンプレートを使用します。

どんなアイデアや提案も大歓迎です。これは長い間残っている問題であり、最終的に解決したいと思います。

回答:


10

私が持っているいくつかの提案は次のとおりです。

  • Windows AD接続サーバーは、グループポリシーの基本設定(GPP)またはコンピューターのスタートアップスクリプトを使用して、グループポリシーでローカル管理者パスワードを設定できます。http://social.technet.microsoft.com/Forums/en-US/winserverGP/thread/b1e94909-bb0b-4e10-83a0-cd7812dfe073/を参照してください

  • 必要な場合を除き、Windowsサーバーでのローカルアカウントの作成を制限します。可能な場合はADアカウントを使用します。

  • Linuxコンピューター用のLDAPを使用して、ADに対して管理者アカウントを認証します。これにより、アカウント管理が多少簡素化されます。また、管理者が1つの場所で無効にしただけでアクセスできなくなった場合は、余暇にLinux側をクリーンアップできます。

  • Linux上の特定の管理者アカウントに/ etc / sudoersファイルを使用すると、管理者はルートパスワードを必要としません。これは、ルートパスワードをロックアウトできるようにする必要がほとんどないため、インスタンスで適切な場合があります。更新しました

  • ルートおよびローカル管理者のパスワードは、一般的な知識ではなく、安全なパスワードで保管してください。一部のパスワードセーフには委任とログ記録があるため、そのユーザーがアクセスしたことがない場合はパスワードをリセットする必要さえありません。

  • ルートおよび管理者アカウントのパスワードリセットプロセスを自動化します。LinuxとWindowsの両方をスクリプト化してこれを行うことができるので、時間を節約でき、それほど負担になりません。

お役に立てば幸いです。


LDAPに関する私の問題は、障害の1つのポイントです。私はむしろPuppet経由でアカウントを管理したいと思います。そしてあなたの提案に感謝します。ありがとう、バーニー!
ベルミンフェルナンデス

1
@Beaming Active Directoryを使用している場合、複数のドメインコントローラー(単一障害点なし)を使用し、domain.comなどのDNSドメイン名をポイントして、LDAPクエリのすべてのドメインコントローラーを取得できます。または、ldap.domain.comのように2つまたは3つだけがLDAPに応答するようにする場合は、特定のDCを指すようにA DNSレコードを設定できます。私はPuppetを使用していませんが、ユーザー管理を簡単にするための鍵は、可能な限り単一のソースではありません。あなたがその方法を好んだ場合、PuppetはとにかくバックエンドLDAPサーバーに接続できる可能性が高いでしょう。
バーニーホワイト

ADがここに行く方法であることに同意しました。2+のドメインコントローラーでは、ADが完全にダウンする可能性はわずかですが、もしそうなれば、はるかに大きな問題が発生する可能性があります。Linuxサーバーでローカルルートアカウントを維持し、他のすべてが失敗した場合に最後の手段として使用します。
EEAA

2
@Bernie-3番目の点について。sudoを使用する場合、誰もrootパスワードを知る必要はありません。sudoエントリで「NOPASSWD」を指定すると、ユーザーは自分のパスワードを入力する必要がありません。これは、ルートパスワードとは関係ありません。
EEAA

@ErikA +1非常に正しい。質問への回答に役立たないためNOPASSWDへの参照を削除/
バーニーホワイト

2

FreeIPAが機能するかどうか試してみてください。

中央の場所からホストへのユーザーアクセスを管理できます。他の人が提案したように、ルートレベルのアクセスでsudoが機能するかどうかを確認できます。FreeipaはLDAPでsudoersをサポートしているため、各サーバー上で、またはpuppetなどを介してそれを維持する必要はありません。

Freeipaは、Linux、Solaris、およびWindowsクライアントをサポートしています。特定のAD機能が失われる可能性があり、Windowsクライアントに他の制限があるかどうかはわかりません。

レプリケーション機能があるため、SPOFを回避できます。バックエンドはLDAPであるため、バックアップスクリプトなど、人々がLDAPに使用する多くのツールを再利用できます。

ホストベースのアクセス制御をサポートしているため、「ユーザーXはYサーバーにのみログインできます」と言えます。

AD同期も提供します。私はWindowsの人ではないので、それが何を意味するのかわかりません。


1

標準の管理者アカウントを使用しないでください。Windows側では、管理者アクセスが必要なユーザーごとにユーザーアカウントと管理者アカウントを作成します。任意のツールを使用して、UNIXと同期できます。

誰かが去った場合、そのユーザーと管理者アカウントを削除するだけです。

標準の管理者アカウントを保護するには、非常に長く複雑なパスワードを指定し、一人のユーザーが半分しか持っていないことを確認してください。アカウント全体を使用する必要がある場合、残りの半分を持っている人を探しに行く必要があります。

それは私が考えることができるほど安全です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.