yamory の使い方

yamory へようこそ! yamory の基礎知識と使い方をご紹介します。

SSH 接続で Linux ホストをスキャンする

yamory では Linux ホストの SSH スキャン機能をご提供しています。

yamory では、SSH を利用して、ホスト内で利用されているパッケージの脆弱性をスキャンできます。
これにより、お使いの MW/OS 脆弱性を検知できます。

前提条件を確認する

yamory では踏み台サーバーに CLI ツールをインストールし、CLI ツールから各ホストに SSH でログインしてスキャンを行います。スキャンする前に、以下をご確認ください。
また、このページでは Ubuntu のホストを使ってスキャン手順を説明します(スキャン可能なディストリビューションはこちら)。

  • 踏み台ホストの OS が Linux であること
  • 踏み台ホストからスキャンしたい環境に SSH でスキャンできること

1.スキャンのトークンを発行する

サイドバーから「チーム設定」>「チーム情報設定」を開き、スキャンに必要なトークンを発行します。

<チームトークン発行画面のキャプチャ>

2.yamory-cli を取得する

yamory-cli を踏み台サーバーにインストールします。
ここでは wget を使っていますが、他のコマンドに読み替えても構いません。

wget -O yamory https://cli.yamory.io/yamory-cli-linux/yamory-linux-amd64 && chmod 700 yamory
wget -O yamory https://cli.yamory.io/yamory-cli-linux/yamory-linux-arm64 && chmod 700 yamory

3.設定ファイルを作成する

yamory-cli をインストールしたローカルホストに、スキャンするホストの設定ファイルを作成します。
設定ファイルは yaml 形式で記述します。 ホストの設定に合わせて、以下の内容を書き換えてください。

鍵認証を用いる場合

hosts:
- title: my-server
  hostname: 192.168.0.111
  port: 22
  credentials:
    user: ubuntu
    key: "path/to/ssh-key.pem"

パスワード認証を用いる場合

hosts:
- title: my-server
  hostname: 192.168.0.111
  port: 22
  credentials:
    user: ubuntu
    password: "123456"

4.スキャンをする

yamory-cli をインストールしたローカルホストで、インストールしたディレクトリに移動し、スキャンコマンドを実行します。
以下のコマンドからトークン"XXXXXXXXXXXXXX"を 1 で発行したトークンに置き換え、設定ファイルのパス"./config.yaml"を 3 で作成した設定ファイルのパスに置き換えて、スキャンを実行してください。

./yamory scan --token="XXXXXXXXXXXXXX" --config="./config.yaml"

5.スキャン結果を確認する

サイドバーから「ホスト」>「スキャン」を開き、スキャンしたホストの情報を確認できます。

<スキャン画面のキャプチャ>

また、サイドバーから「ホスト」>「脆弱性」を選択開くと、スキャンで検出された脆弱性の一覧をみることができます。

<脆弱性画面のキャプチャ>

その他、詳細な設定内容についてはこちらを参照してください。

制限事項や注意事項について

  • yamory-cli は nopassword で sudo コマンドを利用できる場合、sudo コマンドを使用します。
  • yamory のホストスキャン機能では、ホストの一意性を特定するためにマシン ID(/etc/machine-id の値)を使用しています。マシン ID が同じ値のホストをスキャンするとスキャン情報を上書きしてしまいます。そのような場合は、マシン ID に異なる値を設定するか identifier パラメーターでホスト識別子を指定してください。