サーバ名の解決

アドバンストサーバーアクセスには、アドバンストサーバーアクセスに登録されているサーバーへのユーザー提供名を解決するための、カスタム名解決システムが実装されています。

例えば、sft ssh web0を実行すると、名前web0は アドバンストサーバーアクセスで解決されます。同様に、web0上のエージェントBastion: bastion.example.comを指定する構成ファイルがある場合、web0へのトンネルを確立するようbastion.example.comが解決されます。

アドバンストサーバーアクセスが登録済みのサーバーに対し名前を解決できない場合、アドバンストサーバーアクセスはローカルでサポートされている名前解決と認証方法にフォールバックして使用し、サーバーにアクセスします。例えば、ユーザーがsft ssh web0.example.comを実行する場合、アドバンストサーバーアクセスに登録されたサーバーに対してアドバンストサーバーアクセスがweb0.example.comを解決できない場合、クライアントはアドバンストサーバーアクセスを使用しないでssh web0.example.comを実行したかのように振る舞います。

アクティブなサーバー

アドバンストサーバーアクセスはアクティブなサーバーに対してのみ名前を照合します。次のすべての条件が真の場合、サーバーはアクティブであると見なされます。

  1. サーバーはアドバンストサーバーアクセスに登録されている
  2. それ以降サーバーはアドバンストサーバーアクセスから削除されていない
  3. アドバンストサーバーアクセスのエージェントは最近サーバー上で実行されており、アドバンストサーバーアクセスの プラットフォームに接続できました。現在のしきい値は96時間(4日)ですが、変更される可能性があります。

特殊な場合として、管理されていないサーバーがアドバンストサーバーアクセスで作成された場合、削除されるまでアクティブと見なされます。

マッチング

名前を解決する際、アドバンストサーバーアクセスは次のいずれかの値に一致するサーバーを検出します。

Server ID

サーバーIDは、登録時にアドバンストサーバーアクセスのプラットフォームによって自動的に割り当てられたランダムUUID です。

Hostname

サーバーのホスト名は、サーバー上のオペレーティングシステムによって報告された名前です。OSホスト名が「.local」で終わる場合、プラットフォームによって無視されます。例えば、OSホスト名がweb0.localの場合、サーバーにはweb0としてアクセスできますが、web0.localとしてはアクセスできません。

CanonicalName値がアドバンストサーバーアクセスのエージェントの構成で指定されている場合、OSホスト名の代わりにこの値が使用されます。

AltNames

AltNamesの値は、サーバー上のアドバンストサーバーアクセスのエージェント構成ファイルで指定されます。AltNamesを使用して、サーバーに余分なエイリアスを追加することができます。

デフォルトIPアドレス

アドバンストサーバーアクセスによって決定されたサーバーのデフォルトのIPアドレスです。

インスタンス ID

サーバーがAWSまたはGCEクラウドインスタンスの場合、これはプロバイダーが割り当てたインスタンスID です。

あいまいな名前

アドバンストサーバーアクセスのクライアントに供給された名前が複数のサーバーに解決される場合、意図しないサーバーに誤って接続されるのを回避するようクライアントはエラーを返します。

この副次的な影響の1つは、サーバーが同じホスト名を持つ新しいサーバーに置き換えられた場合、またはエージェントが再登録を強制された場合、管理者権限を持つユーザーは、元のサーバーレコードを手動で削除する必要があり、その後新しいサーバーが共通の名前でアドレス指定可能になります。または、サーバーID等の明確な名前を指定するか、元のサーバーレコードが非アクティブになるまで待機することもできます。

アドバンストサーバーアクセスのエージェント構成で提供されたBastion名があいまいな場合、アドバンストサーバーアクセスのプラットフォームは、一致するものを優先度の高い順にランク付けすることで、最適なものを選択しようとします。

  1. IDまたはCanonicalName
  2. クラウドインスタンスID
  3. Hostname
  4. AltNames
  5. デフォルトIPアドレス

接続は任意に切断されます。

IPアドレス

アドバンストサーバーアクセスは、サーバーが解決された後、サーバーのアドレス指定に使用するIPアドレスを決定しようとします。

サーバーがアドバンストサーバーアクセスのクライアントによって直接アクセスされている場合、以下に説明すように、クライアントはサーバーのデフォルトのIPアドレスの使用を試みます。

サーバーが1つまたは複数の要塞を介してアクセスされており、直前の要塞がサーバーと同じAWS VPCネットワークまたはGCEネットワークに存在する場合、アドバンストサーバーアクセスはサーバーの対応するプライベートIPアドレスを優先します。それ以外の場合、アドバンストサーバーアクセスはデフォルトIPアドレスを使用します。

デフォルトIPアドレス

アドバンストサーバーアクセスに登録されている各サーバーには、次から利用可能な最初の値であるデフォルトのIPアドレスが割り当てられます。

  1. アドバンストサーバーアクセスのエージェント構成ファイルで指定されたAccessAddress値。
  2. インスタンスのメタデータに基づくAWSインスタンスpublic_ip_v4アドレス。
  3. インスタンスのメタデータに基づくGCEまたはAWSインスタンスの外部または内部のIP アドレス。
  4. パブリックアドレスの範囲内にある数値的に最小のIPv4アドレス。
  5. プライベートアドレスの範囲内にある数値的に最小のIPv4アドレス。

関連項目

アドバンストサーバーアクセスのアドバンストサーバーアクセスのサーバーエージェントを設定して使用するを構成して使用する