継続的デプロイメントにサービスユーザーを使用する

多くの場合、継続的デプロイメントの自動化を使用するインフラストラクチャはソフトウェアのデプロイメントやタスクの実行にSSHを必要とします。一般に、この種類の自動化では、この目的専用の継続的統合/継続的デプロイメント(CI/CD)サーバーのローカルユーザーアカウントがSSHの実行に使用されます。たとえば、自動化されたJenkinsジョブは、Linuxサーバーでは「jenkins」などのユーザーとして実行される場合があります。Advanced Server Accessを利用することで、ターゲットサーバーへのデプロイメントを自動化するためのサービスユーザーを作成できます。

開始する前の確認事項

  • サービスユーザーが関連付けられている管理対象外ユーザーのホストにAdvanced Server Accessクライアントをインストールする必要があります。
  • サービスユーザーアカウントが含まれるホストへのグループアクセスを許可します。

継続的デプロイメントのためのサービスユーザーを作成する

  1. Advanced Server Accessダッシュボードでユーザー(Users)をクリックします。
  2. サービスユーザー(Service Users)タブを選択します。
  3. サービスーザーを作成する(Create Service User)をクリックします。サービスーザーを作成する(Create Service User)ページが表示されます。
  4. サービスユーザーのユーザー名を入力します。LinuxおよびWindowsの対応ユーザー名が自動的に作成されます。サービスユーザーを作成する(Create Service User)をクリックすると、サービスユーザーが作成されます。
  5. API キーを作成する(Create API Key)をクリックします。ローテーションされたAPIキーシークレット(API Key Secret Rotated)ページが表示されます。
  6. このページでAPIキーIDとAPIキーシークレットをコピーして保存します。注:ウィンドウを閉じると、この情報は得られなくなります。この情報をなくしたときは、クライアントIDとシークレットを新たに生成しなおす必要があります。

プロジェクトのためのサービスを作成する

  1. チームのAdvanced Server Accessダッシュボードでプロジェクト(Projects)をクリックします。プロジェクト(Projects)ページが表示されます。
  2. サービスを実行するサーバーが含まれるプロジェクトをクリックして、サービスユーザーに割り当てます。
  3. サーバー(Servers)タブを選択します。
  4. サービスユーザーを使用するサーバーを選択します。
  5. サービス(Services)タブを選択します。サービスを追加する(Add Service)をクリックします。
  6. 作成したサービスユーザーをサービスユーザー(Service User)ドロップダウンから選択します。管理対象外ユーザーのUIDをUIDフィールドに入力します。

グループにサービスユーザーを追加する

  1. Advanced Server Accessダッシュボードでグループ(Groups)をクリックします。
  2. サービスユーザーがデプロイされるサーバーが含まれるプロジェクトに属するグループを選択します。
  3. ユーザー(Users)タブを選択します。
  4. 作成したサービスユーザーのユーザー名を入力します。ユーザーを追加する(Add User)をクリックします。

サービスユーザー認証を有効にする

作成したサービスユーザーに関連付けられているサーバーに必ずAdvanced Server Accessクライアントをインストールします。クライアントをインストールしてサービスユーザーの認証を有効にすることで、サービスユーザーの資格情報を使ってタスクを実行できるようになります。Advanced Server Accessサーバーエージェントがサーバーにインストールされ、稼働している必要があります。

  1. サービスユーザーのサーバーに接続する:

    ssh <target-server>

  2. ルートユーザーに切り替える:

    sudo su -

  3. Advanced Server Accessのサービスユーザーに関連付けられている管理対象外ユーザーに切り替える:

    su - <unmanaged-user>

  4. サービスユーザー認証を有効化する:

    sft config service_auth.enable true

  5. SSH構成を更新する:

    sft ssh-config >> ~/.ssh/config

関連項目