第7章 cloud-init を使用した認証の設定


cloud-init ユーティリティーを使用して、ユーザー、アクセス権、およびパスワードを管理できます。具体的には、仮想マシンで次のいずれかを実行するように cloud-init を設定できます。

  • users セクションでユーザーを作成して、記述します。users セクションを追加する場合は、そのセクションでデフォルトのユーザーオプションも設定する必要があります。セクションを変更して、初期システム設定にユーザーを追加したり、追加のユーザーオプションを設定したりすることもできます。
  • users セクションに sudo および groups エントリーを追加して、ユーザーを sudoer として設定します。
  • 自分だけが root ユーザーの権限を所有するようにユーザーデータを設定します。
  • パスワードをリセットするには、最初のログイン時に cloud-usercloud-user のパスワードを強制的に変更させます。
  • ユーザーリストを作成して、root パスワードを設定します。

前提条件

  • データソースの要件に応じて、user-data ファイルを編集するか、次のディレクティブを cloud.cfg.d ディレクトリーに追加する。

    注記

    cloud-init が、ユーザーディレクティブを含むファイルを認識できるように、すべてのユーザーディレクティブはファイルの最上部に #cloud-config が含まれます。cloud.cfg.d ディレクトリーにディレクティブを含める場合は、ファイル名を *.cfg とし、ファイルの最上部に常に #cloud-config を含めます。

手順

  • ユーザーとユーザーオプションを追加 します。

    • デフォルトでは、selinux-user 値がない場合、ユーザーは unconfined_u とラベル付けされます。

      注記

      この例では、ユーザー user2userswheel の 2 つのグループに配置します。

    • users セクションを追加または変更し、ユーザーを追加します。以下に例を示します。

      #cloud-config
      users:
        - default
        - name: user2
          gecos: User N. Ame
          selinux-user: staff_u
          groups: users,wheel
          ssh_pwauth: True
          ssh_authorized_keys:
            - ssh-rsa AA..vz user@domain.com
      chpasswd:
        list: |
          root:password
          cloud-user:mypassword
          user2:mypassword2
        expire: False
      Copy to Clipboard Toggle word wrap
    • cloud-user を、指定する他のユーザーと共に作成したデフォルトユーザーにするには、セクションの最初のエントリーとして default を追加することを確認してください。これが最初のエントリーでない場合は、cloud-user は作成されません。
  • sudo ユーザーをユーザーリストに追加 します。

    • sudo エントリーを追加し、ユーザーアクセスを指定します。たとえば、sudo: ALL=(ALL) NOPASSWD:ALL は、ユーザーに無制限のユーザーアクセスを許可します。
    • groups エントリーを追加し、ユーザーを含むグループを指定します。

      #cloud-config
      users:
        - default
        - name: user2
          gecos: User D. Two
          sudo: ["ALL=(ALL) NOPASSWD:ALL"]
          groups: wheel,adm,systemd-journal
          ssh_pwauth: True
          ssh_authorized_keys:
            - ssh-rsa AA...vz user@domain.com
      chpasswd:
        list: |
          root:password
          cloud-user:mypassword
          user2:mypassword2
        expire: False
      Copy to Clipboard Toggle word wrap
  • ユーザーに排他的な root アクセスを設定 します。

    • name オプションを変更して、users セクションにユーザー root のエントリーを作成します。

      users:
        - name: root
      chpasswd:
        list: |
          root:password
        expire: False
      Copy to Clipboard Toggle word wrap
    • オプション: root ユーザーの SSH 鍵を設定します。

      users:
        - name: root
          ssh_pwauth: True
          ssh_authorized_keys:
            - ssh-rsa AA..vz user@domain.com
      Copy to Clipboard Toggle word wrap
  • デフォルトの cloud-init ユーザー名を変更するには、次の手順に従います。

    • user: <username> の行を追加します。<username> は新しいデフォルトのユーザー名に置き換えます。

      #cloud-config
      user: username
      password: mypassword
      chpasswd: {expire: False}
      ssh_pwauth: True
      ssh_authorized_keys:
        - ssh-rsa AAA...SDvz user1@yourdomain.com
        - ssh-rsa AAB...QTuo user2@yourdomain.com
      Copy to Clipboard Toggle word wrap
  • 新しいユーザーのパスワードをリセット します。

    • chpasswd: {expire: False} の行を chpasswd: {expire: True} に変更します。

      #cloud-config
      password: mypassword
      chpasswd: {expire: True}
      ssh_pwauth: True
      ssh_authorized_keys:
        - ssh-rsa AAA...SDvz user1@yourdomain.com
        - ssh-rsa AAB...QTuo user2@yourdomain.com
      Copy to Clipboard Toggle word wrap
      注記
      • これはパスワードを失効させます。なぜなら、passwordchpasswd は特に指定がない限り、デフォルトのユーザーで動作するからです。
      • これはグローバル設定です。chpasswdTrue に設定すると、作成するすべてのユーザーが、ログイン時にパスワードを変更する必要があります。
  • root パスワードを設定 します。

    • chpasswd セクションにユーザーリストを作成します。

      注記

      空白は重要です。ユーザーリストのコロンの前後に空白を含めないでください。空白が含まれている場合、パスワードは空白を入れた設定となります。

      #cloud-config
      ssh_pwauth: True
      ssh_authorized_keys:
        - ssh-rsa AAA...SDvz user1@yourdomain.com
        - ssh-rsa AAB...QTuo user2@yourdomain.com
      chpasswd:
        list: |
           root:myrootpassword
           cloud-user:mypassword
        expire: False
      Copy to Clipboard Toggle word wrap
      注記

      この方法を使用してユーザーパスワードを設定する場合は、このセクションの すべてのパスワード を設定する必要があります。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る