IBM Cloud Docs
SSHキーの生成と使用

SSHキーの生成と使用


IBM Power Virtual Server で IBM データセンター

IBM Power Virtual Server プライベートクラウド で クライアント・ロケーション


新しい仮想マシン(VM)を作成するときに、rootログイン用に1つまたは複数のSecure Shell(SSH)キーを設定できます。 キーはルート・ディレクトリの authorized_keys ファイルにロードされる。 SSHキーを使うことで、VMに安全にログインできる。 SSH 鍵を作成するには、使用可能なオペレーティング・システム・オプションを使用する必要があります。 たとえば、 Linux® または Mac OS システムで SSH 鍵を生成するには、標準の ssh-keygen ツールを使用できます。

この例では、ユーザーが Linux ベースの IBM Cloud コンピュート・インスタンス上で ssh-keygen ツールを使用して公開鍵を作成しています。

cat .ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCtuQnQOc2k4zaGzE7b3xUMCjUy++s/9O9HE4fXSm7UNKoTY39zjQ8mhOwaA3HEo12tOdzdFDYHHWNOYufCcFFk61CAL6HyQGGClib1nFc1xUcgTI9Dee8zzaAsN8mIIr1CgbRELhvOsTv23U4QddpfjkcVoKfF0BAtxgauvooQdPZBoxa2rsD+BvcWnjglkYWG2aBbuzFvSl1fLMihjfej8w1lxbcsYEcJg2X96NJPLmLsEJ+XwoXfVuv0X4z8IoBzZ8UbyTlrDv73EAH34GViYfZFbrIaNnwnz/f/tuOKcINihH72YP+oZn9JeiHQ+hKpMqJAmOK2UIzYr3u+79n9 testkey

VM-create操作でSSH鍵を使用するには、まず、 IBM® Power® Virtual Server。 ibmcloud pi ssh-key create KEY_NAME --key KEY コマンドを使用してインスタンスに公開鍵を追加する必要がある。

生成された公開鍵を追加し、 visibility 属性を使用してそのスコープを設定するには、以下のコマンドを入力する(例の値を自分の公開鍵に置き換える):

ibmcloud pi ssh-key create testkey --key "ssh-rsa AAAAB3NzaC
1yc2EAAAADAQABAAABAQCtuQnQOc2k4zaGzE7b3xUMCjUy++s/9O9HE4fXSm7UNKoTY39zjQ8mhOwaA3HEo12tOdzdFDYHHWNOYufCcFFk61CAL6HyQGGClib1nFc1xUcgTI9Dee8zzaAsN8mIIr1CgbRELhvOsTv23U4QddpfjkcVoKfF0BAtxgauvooQdPZBoxa2rsD+BvcWnjglkYWG2aBbuzFvSl1fLMihjfej8w1lxbcsYEcJg2X96NJPLmLsEJ+XwoXfVuv0X4z8IoBzZ8UbyTlrDv73EAH34GViYfZFbrIaNnwnz/f/tuOKcINihH72YP+oZn9JeiHQ+hKpMqJAmOK2UIzYr3u+79n9 testkey" --visibility "account"
SSHKey created: testkey

キーが正常に追加されたことを確認するには ibmcloud pi ssh list コマンドを使う:

ibmcloud pi ssh list
Name      Key                                          Visibility CreationDate
testkey   ssh-rsa AAAAB3NzaC1y...UIzYr3u+79n9 testkey  account    2019-07-26T18:21:56.030Z

Power Virtual Server、ワークスペースにSSHキーのスコープを設定する

Power Virtual Server ワークスペースでは、SSH 鍵を作成する際に、SSH 鍵のスコープを Workspace または Account のように設定できます。 SSH キーのスコープを Workspace に設定すると、SSH キーは作成されたワークスペースでのみ使用でき、他のワークスペースでは使用できません。 SSH キーのスコープを Account に設定すると、そのアカウント配下のすべてのワークスペースで SSH キーが使用可能になります。 ただし、SSHキーを削除できるのは、キーを作成したワークスペースからのみです。 したがって、SSH鍵のセキュリティとプライバシーが向上する。

SSH鍵の visibility プロパティが Account に設定されていても、 IBM Power Virtual Server プライベートクラウド ロケーション間でSSH鍵にアクセスすることはできない。

以下の手順で、SSH鍵の作成とスコープの設定を行う:

  1. ワークスペースを開き、 Power Virtual Server ユーザー・インターフェースから SSH キーを追加する。
  2. Computeの下にある SSH keysをクリックする。 ワークスペースに関連付けられている SSH 鍵のリストは、"SSH key" ページに表示されます。
  3. Create SSH Keyをクリックします。 New SSH key "ページが表示されます。
  4. キー名フィールドにユニークな名前を入力する。
  5. アクセス設定セクションから以下のオプションのいずれかを選択し、SSHキーの範囲を設定します:
    • ワークスペース :SSHキーは、それが作成されたワークスペースでのみ表示されます。
    • アカウント :SSHキーは、アカウント内のすべてのワークスペースに表示されます。 ただし、SSHキーを削除できるのは、キーを作成したワークスペースからのみです。
  6. Description(説明) フィールドにSSH鍵に関する説明を入力します。
  7. 公開鍵フィールドにSSH鍵を入力します。
  8. 「SSH 鍵の追加」 をクリックします。

SSHキーが作成され、「SSHキー」ページのデータテーブルにリストされます。 データテーブルのアクセス設定列には、SSH鍵のスコープが Workspace または Account として表示される。

AIX VM インスタンスの作成

構成済み SSH 鍵を使用して AIX VM インスタンスを作成するには、Power Virtual Server CLI またはコンソールを使用します。 AIX ストック・イメージをブート・ボリュームとして使用する場合、root パスワードは設定されません。 AIX VM に接続して、システムの root パスワードを設定する必要があります。 このステップを完了しないと、 rootでの SSHログインは無効と表示されます。 AIX VMにパブリック・ネットワーク・アクセスがある場合、プライベート・クラウド・システムからtelnetを使用し、rootパスワードを設定することができる。 詳しくは、 IBM AIX V7.2 ドキュメントを参照のこと。

UIを使用してSSHキーを設定した AIX VMを作成する

構成済み SSH 鍵を使用して AIX VM を作成する前に、公開 SSH 鍵を生成する必要があります。

  1. 必要なアカウント権限とデバイスへのアクセス権があることを確認してください。 アカウントの所有者、またはクラシック・インフラストラクチャーの**「ユーザーの管理」**権限を持つユーザーのみが、権限を調整できます。 詳しくは、サービス・アクセス役割を参照してください。

  2. Power Virtual Server ユーザーインターフェイスの左側のナビゲーションから Virtual server instances をクリックします。

  3. **「インスタンスの作成」**をクリックします。

  4. **「仮想サーバー (Virtual servers)」セクションで「SSH 鍵の追加 (Add SSH Keys)」**を選択します。

  5. 鍵の名前と、以前に生成した公開鍵を入力します。

  6. **「SSH 鍵の追加 (Add SSH key)」**をクリックして SSH 鍵を追加します。

  7. 残りのフィールドを入力します。これで、構成済み SSH 鍵を使用して新規インスタンスが作成されます。

CLIを使用して、設定されたSSHキーで AIX VMを作成する

オプションを自分のものに置き換えることで、以下のコマンドで公開鍵を使った新しいVMを作成できる:

ibmcloud pi instance-create keytest-vm --image AIX-7200-03-03 --memory 5 --networks "cloud.ibm.com" --processors 1 --processor-type shared --key-name testkey

この例では、ibmcloud pi instance-create コマンドにより IP アドレスが _172.16.7.16_の新規 AIX VM が作成されます。 これで、testkey の秘密鍵を使用して構成された接続済みのシステムから AIX VM に SSH で接続できます。

ssh root@172.16.7.16
Enter passphrase for key '/home/keytest/.ssh/id_rsa':
Last login: Fri Jul 26 16:53:22 CDT 2019 on ssh from 10.150.0.11
*******************************************************************************
*                                                                             *
*                                                                             *
*  Welcome to AIX Version 7.2!                                                *
*                                                                             *
*                                                                             *
*  Please see the README file in /usr/lpp/bos for information pertinent to    *
*  this release of the AIX Operating System.                                  *
*                                                                             *
*                                                                             *
*******************************************************************************
# oslevel -s
7200-03-03-1914

testkey の値は authorized_keys ファイルにあります。

cat .ssh/authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCtuQnQOc2k4zaGzE7b3xUMCjUy++s/9O9HE4fXSm7UNKoTY39zjQ8mhOwaA3HEo12tOdzdFDYHHWNOYufCcFFk61CAL6HyQGGClib1nFc1xUcgTI9Dee8zzaAsN8mIIr1CgbRELhvOsTv23U4QddpfjkcVoKfF0BAtxgauvooQdPZBoxa2rsD+BvcWnjglkYWG2aBbuzFvSl1fLMihjfej8w1lxbcsYEcJg2X96NJPLmLsEJ+XwoXfVuv0X4z8IoBzZ8UbyTlrDv73EAH34GViYfZFbrIaNnwnz/f/tuOKcINihH72YP+oZn9JeiHQ+hKpMqJAmOK2UIzYr3u+79n9 testkey

接続のデバッグ

VM インスタンスに対する SSH 接続が失敗する場合、-vvvssh** コマンドの ** オプションを使用して接続失敗の理由を判別します。 -vvv オプションで冗長フラグを追加するたびに、SSH クライアント・セッションの冗長性が増し、大量のデータが生成されます。 そのため、スクリプト・セッションを使用して SSH ログ・データを取り込み、ログ・データが標準出力 (STDOUT) にも送信されるようにします。

以下のコマンドを実行して、SSH クライアントのデバッグ・セッションを開始します。

# /usr/bin/script /tmp/ssh.{host}.debug
# /usr/bin/ssh -vvv {hostname/IP_of_ssh_server}

SSHクライアントのデバッグ・セッションを終了したら、 Ctrl+Dを押すか exit コマンドを入力してスクリプト・セッションを閉じます。

その他のサポート情報

さまざまな使用例に関する追加情報については、以下のサポートページを参照してください: