クライアント用にSSH構成をカスタマイズする

アドバンストサーバーアクセスでは、アドバンストサーバーアクセスの管理者とそのチームの両方に対してSSH カスタマイズオプションが使用できます。エンドユーザーは、SSH 接続を試行するときのクライアントの応答方法を調整でき、管理者は接続を開始するクライアントへのサーバーの応答方法をカスタマイズできます。開始する前に、ScaleFTクライアントがインストールされていることを確認し、sft ssh-configコマンドを実行します。

クライアントのカスタマイズ

注意: 提供されるパスはMacOS観点のもので、フォルダーパスの例として/Users/Admin/を使用します。ユーザーのマシンのパスが異なる場合もあります。

アドバンストサーバーアクセスのクライアントとSSH構成に応じて、構成ファイルは次のように表示されます。

# To use ScaleFT proxycommand, add this configuration block to your $HOME/.ssh/config
Match exec "/usr/local/bin/sft resolve -q %h"
ProxyCommand "/usr/local/bin/sft" proxycommand %h
UserKnownHostsFile "/Users/Admin/Library/Application Support/ScaleFT/proxycommand_known_hosts"

カスタマイズの例

  • sft resolveから-qを削除する

    -qは「quiet」を意味し、ターゲットサーバーに接続中に発生した問題がユーザーに表示されたり、クライアントからの反応を引き起こしたりしないことを示します。これには、ユーザーがログインしていない場合の状態も含まれます。その場合、-qを使用すると、SSHコマンドはホストを検出することができず、アドバンストサーバーアクセスでホストのインベントリにアクセスする権限がなくなります。構成ファイルのMatchexec行から-qを削除すると、その結果、SSH 試行が失敗した後に、クライアントはアドバンストサーバーアクセスの プラットフォームにログイン要求を送信します。

  • Matchディレクティブのカスタマイズ

    Matchディレクティブをカスタマイズすると、ユーザーはチーム内の各サーバーにおける特定のクライアントの動作を制御できるようになります。カスタマイズされたMatchディレクティブを使用して潜在的なターゲットサーバーを特定することにより、ユーザーは他のカスタマイズオプション(-qの削除など)を組み込んで、クライアントが特定のサーバーへの接続を試行したときに特定のアクションを実行できるように設定できます。

    例えば、構成ファイルにこのMatchブロックを追加できます。

     Match Host *ubu* "/usr/local/bin/sft resolve -q %h" ProxyCommand "/usr/local/bin/sft" proxycommand %h UserKnownHostsFile "/Users/Admin/Library/Application Support/ScaleFT/proxycommand_known_hosts" 

    これにより、「ubu」という文字列を含む名前のサーバーへの接続試行が、Matchブロックのみに記載されたルールに従うというシナリオが作成されます。

  • 経由する特定の要塞を特定する

    別のカスタマイズオプションでは、エージェント構成ファイルsftd.yamlを使用して要塞を構成する代わりに、SSH接続の試行時に動的に経由する必要がある特定の要塞をクライアントに指示します。これには、--viaコマンドを使用し、次に示すように、ユーザーの構成ファイルのProxyCommand行にこのコマンドを追加します。

    ProxyCommand "/usr/local/bin/sft" proxycommand --via <bastion> %h

    注意: 名前の<要塞>は、チームの要塞のプレースホルダーとして使用されるので、必要に応じてこれを変更します。